WebKit-https.git
8 years agoAdd manual test to verify that geometry methods (moveTo, etc) work
kenneth@webkit.org [Mon, 17 Dec 2012 13:54:48 +0000 (13:54 +0000)]
Add manual test to verify that geometry methods (moveTo, etc) work
https://bugs.webkit.org/show_bug.cgi?id=105160

Reviewed by Alexis Menard.

* ManualTests/window-geometry.html: Added.

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

8 years agoUnreviewed, add myself to committers.py.
mikhail.pozdnyakov@intel.com [Mon, 17 Dec 2012 13:50:45 +0000 (13:50 +0000)]
Unreviewed, add myself to committers.py.

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

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

8 years agoWeb Inspector: Popup flickers when cursor moves between elements with same anchor.
commit-queue@webkit.org [Mon, 17 Dec 2012 12:33:41 +0000 (12:33 +0000)]
Web Inspector: Popup flickers when cursor moves between elements with same anchor.
https://bugs.webkit.org/show_bug.cgi?id=104992

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-17
Reviewed by Pavel Feldman.

Popup disappears and then appears again when mouse pointer traverses
between sub-elements of anchor element.

* inspector/front-end/Popover.js: Split method "_mouseOut".
(WebInspector.PopoverHelper.prototype._popoverMouseOut):
Handler for Popover.
(WebInspector.PopoverHelper.prototype._mouseOut):
Handler for PopoverHelper.

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

8 years ago[Qt][WK1]REGRESSION(r137811): compositing/tiling/crash-huge-layer.html makes the...
ossy@webkit.org [Mon, 17 Dec 2012 12:13:42 +0000 (12:13 +0000)]
[Qt][WK1]REGRESSION(r137811): compositing/tiling/crash-huge-layer.html makes the following test crash on 32 bit
https://bugs.webkit.org/show_bug.cgi?id=105158

Unreviewed gardening, skip the culprit test to paint the bots green.

* platform/qt-5.0-wk1/TestExpectations:

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

8 years ago[Chromium] Remove support for TRACE_EVENT_IF_LONGER_THANx macros
caseq@chromium.org [Mon, 17 Dec 2012 12:09:11 +0000 (12:09 +0000)]
[Chromium] Remove support for TRACE_EVENT_IF_LONGER_THANx macros
https://bugs.webkit.org/show_bug.cgi?id=104784

Reviewed by Pavel Feldman.

Source/Platform:

- remove threshold and id of related begin event from arguments of addTraceEvent()
- do not return the index of added event from addTraceEvent()

* chromium/public/Platform.h:
(Platform):
(WebKit::Platform::addTraceEvent):

Source/WebCore:

- removed TRACE_EVENT_IF_LONGER_THANx macros;
- changed addTraceEvent() to return void, as we no longer need the index of added event.

* platform/EventTracer.h:
(EventTracer):
* platform/chromium/EventTracerChromium.cpp:
(WebCore::EventTracer::addTraceEvent):
* platform/chromium/TraceEvent.h:
(TraceEvent):
(WebCore::TraceEvent::addTraceEvent):
(WebCore::TraceEvent::TraceEndOnScopeClose::addEventIfEnabled):
(Data):

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

8 years agoFix Math.pow implementation with MinGW-w64
commit-queue@webkit.org [Mon, 17 Dec 2012 11:49:58 +0000 (11:49 +0000)]
Fix Math.pow implementation with MinGW-w64
https://bugs.webkit.org/show_bug.cgi?id=105087

Patch by Jonathan Liu <net147@gmail.com> on 2012-12-17
Reviewed by Simon Hausmann.

The MinGW-w64 runtime has different behaviour for pow()
compared to other C runtimes. This results in the following
test262 tests failing with the latest MinGW-w64 runtime:
- S15.8.2.13_A14
- S15.8.2.13_A16
- S15.8.2.13_A20
- S15.8.2.13_A22

Handle the special cases that are different with MinGW-w64.

* runtime/MathObject.cpp:
(JSC::mathPow):

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

8 years ago[Qt] remove some unnecessary CONFIG additions
hausmann@webkit.org [Mon, 17 Dec 2012 11:48:54 +0000 (11:48 +0000)]
[Qt] remove some unnecessary CONFIG additions

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-17
Reviewed by Simon Hausmann.

qt is already added by spec_pre.prf, warn_on and depend_includepath by
default_pre.prf.

Source/WebKit/qt:

* declarative/experimental/experimental.pri:
* declarative/public.pri:

Source/WebKit2:

* UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
* UIProcess/API/qt/tests/qmltests/WebView.pro:

Tools:

* qmake/mkspecs/features/default_post.prf:

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

8 years agoUnreviewed, rolling out r137892.
loislo@chromium.org [Mon, 17 Dec 2012 11:35:31 +0000 (11:35 +0000)]
Unreviewed, rolling out r137892.
http://trac.webkit.org/changeset/137892
https://bugs.webkit.org/show_bug.cgi?id=105026

it broke compilation on windows

Source/WTF:

* wtf/MemoryInstrumentation.h:
(WTF::MemoryInstrumentation::selectInstrumentationMethod):
(MemoryInstrumentation):
(WTF::MemoryInstrumentation::reportObjectMemoryUsage):
(WTF::reportMemoryUsage):

Tools:

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:

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

8 years agoWeb Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect...
loislo@chromium.org [Mon, 17 Dec 2012 11:29:39 +0000 (11:29 +0000)]
Web Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect reportMemoryUsage method defined in a base class.
https://bugs.webkit.org/show_bug.cgi?id=105026

Reviewed by Yury Semikhatsky.

Old SFINAE test was replaced with new one based on this article:
http://stackoverflow.com/questions/1966362/sfinae-to-check-for-inherited-member-functions

Source/WTF:

* wtf/MemoryInstrumentation.h:
(MemoryInstrumentation):
(yes):
(IsInstrumented):
(no):
(WTF::MemoryInstrumentation::IsInstrumented::BaseMixin::reportMemoryUsage):
(WTF::MemoryInstrumentation::selectInstrumentationMethod):
(InstrumentationSelector):
(WTF):
(WTF::::reportObjectMemoryUsage):

Tools:

New test which covers this problem was added.

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:

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

8 years ago[Qt] rely on automatic output directory setup
hausmann@webkit.org [Mon, 17 Dec 2012 11:13:57 +0000 (11:13 +0000)]
[Qt] rely on automatic output directory setup

Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com> on 2012-12-17
Reviewed by Simon Hausmann.

Now being a proper qt module (by virtue of having load(qt_build_config)
in .qmake.conf), webkit gets the path setup goodies for free.

This also fixes Makefile.api.Debug/Release trying to generate qrc_WebKit.cpp
at the same time, instead of the debug and release version ending up in different
directories as they should.

Source/WebKit2:

* UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
* UIProcess/API/qt/tests/qmltests/WebView.pro:

Tools:

* qmake/mkspecs/features/default_pre.prf:

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

8 years ago[EFL] Unit tests process hanging on WK2 Release bots
thiago.santos@intel.com [Mon, 17 Dec 2012 10:49:19 +0000 (10:49 +0000)]
[EFL] Unit tests process hanging on WK2 Release bots
https://bugs.webkit.org/show_bug.cgi?id=105021

Reviewed by Kenneth Rohde Christiansen.

Do not allocate memory in the middle of a fork()/exec().
EFL uses global FastMalloc new operator and when we fork(), the
process is in a very delicate state. We were being lucky most of the
time, but sometimes FastMalloc enters in a busy wait and hangs
because it's data structures cannot be trusted after the fork().

This explains why sometimes we see UIProcess hanging on the bots:
they are in fact UIProcess trying to exec() into a WebProcess but
hanged just after the fork(). CMake test runner kills the original
UIProcess due to timeout and the buggy one stays forever.

* PlatformEfl.cmake:
Set the timeout back to the original value.

* UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
(WebKit::ProcessLauncher::launchProcess):
I'm keeping the original behavior, including the call to
system() when wrapping the WebProcess on Debug mode. This
should be changed to exec() in another patch.

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

8 years agoFix the Qt Windows build after r137803
ossy@webkit.org [Mon, 17 Dec 2012 10:37:15 +0000 (10:37 +0000)]
Fix the Qt Windows build after r137803
https://bugs.webkit.org/show_bug.cgi?id=105152

Reviewed by Kentaro Hara.

* Shared/CacheModel.h:

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

8 years ago[BlackBerry] Need to re-enable video track
charles.wei@torchmobile.com.cn [Mon, 17 Dec 2012 10:25:07 +0000 (10:25 +0000)]
[BlackBerry] Need to re-enable video track
https://bugs.webkit.org/show_bug.cgi?id=105155

Reviewed by George Staikos.

Just enable Video Track for BlackBerry.

* Scripts/webkitperl/FeatureList.pm:

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

8 years agoUnreviewed. Added myself to committers.py
jbadics@inf.u-szeged.hu [Mon, 17 Dec 2012 10:08:29 +0000 (10:08 +0000)]
Unreviewed. Added myself to committers.py

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

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

8 years agoFix linking of libraries with -Wl,-whole-archive
commit-queue@webkit.org [Mon, 17 Dec 2012 09:38:37 +0000 (09:38 +0000)]
Fix linking of libraries with -Wl,-whole-archive
https://bugs.webkit.org/show_bug.cgi?id=104436

Patch by Jonathan Liu <net147@gmail.com> on 2012-12-17
Reviewed by Simon Hausmann.

If there is more than one library in LIBS linked with
-Wl,-whole-archive -l... -Wl,-no-whole-archive, qmake tries to
merge the duplicate flags in LIBS which causes linking to fail.

Add no_smart_library_merge to CONFIG to prevent the duplicate
flags from being removed when using -Wl,-whole-archive.

* qmake/mkspecs/features/functions.prf:

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

8 years agoUnreviewed, rolling out r136794.
haraken@chromium.org [Mon, 17 Dec 2012 08:57:53 +0000 (08:57 +0000)]
Unreviewed, rolling out r136794.
http://trac.webkit.org/changeset/136794
https://bugs.webkit.org/show_bug.cgi?id=104203

The GC change can leak memory

* bindings/v8/V8GCController.cpp:
(WebCore):
(WebCore::addImplicitReferencesForNodeWithEventListeners):

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

8 years agoReduce the code size of ARM SIMD in GraphicsContext3D
rgabor@webkit.org [Mon, 17 Dec 2012 08:56:19 +0000 (08:56 +0000)]
Reduce the code size of ARM SIMD in GraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=105086

Reviewed by Zoltan Herczeg.

Reduce the code size of ARM SIMD in GraphicsContext3D and change the ARM
namespace to SIMD.

* platform/graphics/GraphicsContext3D.cpp:
(WebCore):
* platform/graphics/cpu/arm/GraphicsContext3DNEON.h:
(WebCore::SIMD::unpackOneRowOfRGBA4444ToRGBA8):
(WebCore::SIMD::packOneRowOfRGBA8ToUnsignedShort4444):
(WebCore::SIMD::unpackOneRowOfRGBA5551ToRGBA8):
(WebCore::SIMD::packOneRowOfRGBA8ToUnsignedShort5551):
(WebCore::SIMD::unpackOneRowOfRGB565ToRGBA8):
(WebCore::SIMD::packOneRowOfRGBA8ToUnsignedShort565):

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

8 years agoWeb Inspector: frame bars on timeline do not react on hover and double click
caseq@chromium.org [Mon, 17 Dec 2012 08:53:25 +0000 (08:53 +0000)]
Web Inspector: frame bars on timeline do not react on hover and double click
https://bugs.webkit.org/show_bug.cgi?id=105153

Reviewed by Alexander Pavlov.

Remove z-index: -100 from #timeline-grid-header, as it prevents mouse events from
reaching frame strip. Use pointer-events: none on frame dividers instead.

* inspector/front-end/timelinePanel.css:
(.timeline .resources-event-divider.timeline-frame-divider):
(#timeline-grid-header):

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

8 years ago[Qt] Unreviewed gardening. Update expected files after r137798.
ossy@webkit.org [Mon, 17 Dec 2012 07:55:36 +0000 (07:55 +0000)]
[Qt] Unreviewed gardening. Update expected files after r137798.

* platform/qt-5.0-wk2/compositing/columns/composited-in-paginated-expected.txt:
* platform/qt-5.0-wk2/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/become-composited-nested-iframes-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/become-overlapped-iframe-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/composited-parent-iframe-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe2-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/connect-compositing-iframe3-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/enter-compositing-iframe-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/iframe-resize-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/invisible-nested-iframe-show-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/overlapped-iframe-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/overlapped-nested-iframes-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/resizer-expected.txt:
* platform/qt-5.0-wk2/compositing/iframes/scrolling-iframe-expected.txt:
* platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-and-transform-expected.txt:
* platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-under-transform-expected.txt:
* platform/qt-5.0-wk2/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
* platform/qt-5.0-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt:
* platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
* platform/qt-5.0-wk2/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt:
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt:
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt:
* platform/qt-5.0-wk2/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt:
* platform/qt-5.0-wk2/compositing/tiled-layers-hidpi-expected.txt:
* platform/qt-5.0-wk2/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
* platform/qt-5.0-wk2/compositing/tiling/huge-layer-add-remove-child-expected.txt:
* platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-expected.txt:
* platform/qt-5.0-wk2/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
* platform/qt/compositing/backing/no-backing-for-clip-expected.txt:
* platform/qt/compositing/backing/no-backing-for-clip-overlap-expected.txt:
* platform/qt/compositing/backing/no-backing-for-perspective-expected.txt:
* platform/qt/compositing/geometry/preserve-3d-switching-expected.txt:

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

8 years ago[V8] Improve performance of a conversion from WebKit strings to V8 strings
haraken@chromium.org [Mon, 17 Dec 2012 07:44:18 +0000 (07:44 +0000)]
[V8] Improve performance of a conversion from WebKit strings to V8 strings
https://bugs.webkit.org/show_bug.cgi?id=105150

Reviewed by Eric Seidel.

V8 provides v8::Weak(isolate) and v8::Local::New(isolate, ...),
which are much faster than v8::Weak() and v8::Local::New().
By using the faster APIs, we can improve performance of a conversion
from a WebKit string to a V8 string. This improves performance of
div.id, div.className, ...and a lot of DOM attributes that return
strings.

[Dromaeo/dom-attr]
120 runs/sec, 120 runs/sec, 118 runs/sec => 125 runs/sec, 123 run/sec, 125 runs/sec (+4.1%)

[Dromaeo/dom-traverse]
94 runs/sec, 94 runs/sec, 96 runs/sec => 107 runs/sec, 105 runs/sec, 107 runs/sec (+12.3%)

[Bindings/id-getter]
356 runs/sec, 356 runs/sec, 341 runs/sec => 423 runs/sec, 424 runs/sec, 424 runs/sec (+20.7%)

No tests. No change in behavior.

* bindings/v8/V8ValueCache.h:
(WebCore::StringCache::v8ExternalString):

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

8 years ago[BlackBerry] Adapt to new BlackBerry::Platform::TouchPoint API
anilsson@rim.com [Mon, 17 Dec 2012 07:37:31 +0000 (07:37 +0000)]
[BlackBerry] Adapt to new BlackBerry::Platform::TouchPoint API
https://bugs.webkit.org/show_bug.cgi?id=105143
RIM PR 171941

Reviewed by Rob Buis.
Internally reviewed by George Staikos.

Source/WebCore:

TouchPoint instances now provide document coordinates for the viewport
and content position of the touch event. The pixel coordinates stored
in the TouchPoint should no longer be needed in WebKit.

Also adapt to new method names and encapsulation of TouchPoint data
members.

No change in behavior, no new tests.

* platform/blackberry/PlatformTouchPointBlackBerry.cpp:
(WebCore::PlatformTouchPoint::PlatformTouchPoint):

Source/WebKit/blackberry:

TouchPoint instances now provide document coordinates for the viewport
and content position of the touch event. The pixel coordinates stored
in the TouchPoint should no longer be needed in WebKit. One exception
is when passing events to a full screen plugin.

Also adapt to new method names and encapsulation of TouchPoint data
members.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::touchEvent):
(BlackBerry::WebKit::WebPage::touchPointAsMouseEvent):
(BlackBerry::WebKit::WebPagePrivate::dispatchTouchEventToFullScreenPlugin):
(BlackBerry::WebKit::WebPagePrivate::dispatchTouchPointAsMouseEventToFullScreenPlugin):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::shouldRequestSpellCheckingOptionsForPoint):
* WebKitSupport/InputHandler.h:
(InputHandler):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::doFatFingers):
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
* WebKitSupport/TouchEventHandler.h:
(TouchEventHandler):

Tools:

Adapt to new method names and encapsulation of TouchPoint data members.

* DumpRenderTree/blackberry/EventSender.cpp:
(addTouchPointCallback):
(updateTouchPointCallback):
(touchEndCallback):
(releaseTouchPointCallback):
(sendTouchEvent):

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

8 years agoUnreviewed EFL gardening.
christophe.dumez@intel.com [Mon, 17 Dec 2012 07:20:26 +0000 (07:20 +0000)]
Unreviewed EFL gardening.

Mark new compositing/overflow/automatically-opt-into-composited-scrolling.html
test introduced in r137828 as failing on EFL WK2.

* platform/efl-wk2/TestExpectations:

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

8 years agoBytecode dumping should show rare case profiles
fpizlo@apple.com [Mon, 17 Dec 2012 07:16:18 +0000 (07:16 +0000)]
Bytecode dumping should show rare case profiles
https://bugs.webkit.org/show_bug.cgi?id=105133

Reviewed by Geoffrey Garen.

Refactored the dumper to call dumpBytecodeCommandAndNewLine in just one place,
rather than in all of the places. Changed the rare case profile getters to use
tryBinarySearch rather than binarySearch, so that they can be used speculatively
even if you don't know that the bytecode has rare case profiles. This actually
increases our assertion level, since it means that in release builds we will get
null and crash rather than getting some random adjacent profile. And then this
adds some printing of the rare case profiles.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printUnaryOp):
(JSC::CodeBlock::printBinaryOp):
(JSC::CodeBlock::printConditionalJump):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::printPutByIdOp):
(JSC::CodeBlock::beginDumpProfiling):
(JSC):
(JSC::CodeBlock::dumpValueProfiling):
(JSC::CodeBlock::dumpArrayProfiling):
(JSC::CodeBlock::dumpRareCaseProfile):
(JSC::CodeBlock::dumpBytecode):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::rareCaseProfileForBytecodeOffset):
(JSC::CodeBlock::specialFastCaseProfileForBytecodeOffset):

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

8 years agoWeb Inspector: Fix JS compiler warning.
commit-queue@webkit.org [Mon, 17 Dec 2012 07:13:40 +0000 (07:13 +0000)]
Web Inspector: Fix JS compiler warning.
https://bugs.webkit.org/show_bug.cgi?id=105032

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-16
Reviewed by Pavel Feldman.

Problem: event handler parameter has actial parameter
type KeyboardEvent, but ".addEventListener" refuses listeners with such
signature.

Solution: explicitly upcast argument type.

* inspector/front-end/ElementsTreeOutline.js: Update JsDocs.

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

8 years agoPDFPlugin: The "Open in Preview" HUD button should work
timothy_horton@apple.com [Mon, 17 Dec 2012 07:07:51 +0000 (07:07 +0000)]
PDFPlugin: The "Open in Preview" HUD button should work
https://bugs.webkit.org/show_bug.cgi?id=102448
<rdar://problem/12695729>

Reviewed by Alexey Proskuryakov.

Implement the "Open in Preview" button for PDFPlugin, by moving the implementation from PDFViewController
onto WebPageProxyMac, and reusing it in PDFViewController and PDFPlugin.

* UIProcess/API/mac/PDFViewController.h:
(PDFViewController): Remove unnecessary members in favor of a UUID that identifies our PDF on disk.
* UIProcess/API/mac/PDFViewController.mm:
(WebKit::PDFViewController::openPDFInFinder): Move PDFViewController's implementation of openPDFInFinder
and related functions to WebPageProxyMac. This will allow it to be shared with PDFPlugin.
* UIProcess/WebPageProxy.h:
(WebPageProxy): Add savePDFToFileInTemporaryFolderAndOpenWithNativeApplication,
savePDFToFileInTemporaryFolderAndOpenWithNativeApplicationRaw, and openPDFFromTemporaryFolderWithNativeApplication.
Add m_temporaryPDFFiles, which is used to keep track of the filenames of PDFs that we've saved to disk.
* UIProcess/WebPageProxy.messages.in:
Add SavePDFToFileInTemporaryFolderAndOpenWithNativeApplication and OpenPDFFromTemporaryFolderWithNativeApplication.
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::temporaryPDFDirectoryPath): Copied from PDFViewController. Construct the path to a
WebKitPDFs temporary directory into which PDFs to be opened with a native application are downloaded.
(WebKit::pathToPDFOnDisk): Copied from PDFViewController. Combine temporaryPDFDirectoryPath
with the suggested filename for the given PDF, creating a new filename if the file already exists.
(WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplicationRaw):
(WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplication):
Save the given PDF data to a temporary file, given the suggested filename. This inserts the
filename used into m_temporaryPDFFiles, where it can later be retrieved by UUID when asked
to open the PDF again in a native application. Then, open it with NSWorkspace.
(WebKit::WebPageProxy::openPDFFromTemporaryFolderWithNativeApplication):
Open the previously saved PDF file with NSWorkspace, referenced by UUID.
We identify the file by UUID instead of name so that only the UIProcess needs
to keep track of the actual filename, and so that the WebProcess
cannot hand an arbitrary filename back to the UIProcess to open.
* WebProcess/Plugins/PDF/PDFPlugin.h:
(PDFPlugin): Add openWithNativeApplication and storage for the UUID that identifies our PDF on disk.
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(-[WKPDFLayerControllerDelegate openWithPreview]): Forward openWithPreview to PDFPlugin's openWithNativeApplication.
(WebKit::PDFPlugin::saveToPDF):
Hand raw data to WebPage and have it send the message to WebPageProxy instead of using IPC types in PDFPlugin.
(WebKit::PDFPlugin::openWithNativeApplication):
Ask WebPage to save the current PDF to a temporary directory and open it with a native application.
If we've already downloaded the PDF (and have a non-null m_temporaryPDFUUID),
we can just open the existing file.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::savePDFToFileInDownloadsFolder): Hand the PDF data to WebPageProxy to save.
(WebKit::WebPage::savePDFToTemporaryFolderAndOpenWithNativeApplication): Hand the PDF data to WebPageProxy to save and open.
* WebProcess/WebPage/WebPage.h:
(WebPage): Add savePDFToFileInDownloadsFolder and savePDFToTemporaryFolderAndOpenWithNativeApplication.

Expose createCanonicalUUIDString and UUID.h.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:

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

8 years agoUnreviewed EFL gardening.
christophe.dumez@intel.com [Mon, 17 Dec 2012 07:06:12 +0000 (07:06 +0000)]
Unreviewed EFL gardening.

Mark editing/execCommand/indent-paragraphs.html as expected to
crash on EFL port until Bug 105042 is fixed.

* platform/efl/TestExpectations:

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

8 years ago[WK2] Remote Web Inspector requires the inspector
commit-queue@webkit.org [Mon, 17 Dec 2012 07:01:26 +0000 (07:01 +0000)]
[WK2] Remote Web Inspector requires the inspector
https://bugs.webkit.org/show_bug.cgi?id=105088

Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2012-12-16
Reviewed by Sam Weinig.

Inspector server should not be started without inspector.

* config.h:

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

8 years agoFix unused parameter compile warnings
commit-queue@webkit.org [Mon, 17 Dec 2012 06:57:52 +0000 (06:57 +0000)]
Fix unused parameter compile warnings
https://bugs.webkit.org/show_bug.cgi?id=105089

Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2012-12-16
Reviewed by Kentaro Hara.

Use UNUSED_PARAM macro to fix build warning -Wunused-parameter.

Source/WebCore:

No new tests, no behavior change.

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::supportsProfiling):
(WebCore::JSDOMWindowBase::supportsRichSourceInfo):

Source/WebKit/efl:

* ewk/ewk_view.cpp:
(ewk_view_inspector_show):
(ewk_view_inspector_close):
(ewk_view_inspector_view_get):
(ewk_view_inspector_view_set):

Source/WebKit2:

* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_inspector_show):
(ewk_view_inspector_close):

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

8 years ago[EFL][WK2] Header files of ewk_context_menu should be installed
ryuan.choi@samsung.com [Mon, 17 Dec 2012 06:47:40 +0000 (06:47 +0000)]
[EFL][WK2] Header files of ewk_context_menu should be installed
https://bugs.webkit.org/show_bug.cgi?id=105069

Reviewed by Gyuyoung Kim.

* PlatformEfl.cmake:
Modified to install ewk_context_menu.h and ewk_context_menu_item.h which
are included in EWebKit2.h

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

8 years ago<rdar://problem/12886898> Bundle uploads don't work
ap@apple.com [Mon, 17 Dec 2012 05:40:29 +0000 (05:40 +0000)]
<rdar://problem/12886898> Bundle uploads don't work
https://bugs.webkit.org/show_bug.cgi?id=105149

Reviewed by Sam Weinig.

Source/WebCore:

* WebCore.exp.in: Exported FormData::removeGeneratedFilesIfNeeded().

* platform/network/FormData.cpp:
(WebCore::encodeElement):
(WebCore::decodeElement):
Encode generated file name for archive, too. I'm not entirely sure how this affects other uses
of FormData serialization, but it seems logical that if we encode m_hasGeneratedFiles, we
should also encode their names.

Source/WebKit2:

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didReceiveResponse):
(WebKit::NetworkResourceLoader::didFail):
Clean up generated files when they are no longer needed. This has to be done before FormData
destruction. This duplicates same work done in WebProcess, but duplicaiton is safe, and may
be helpful if one of the sides prematurely exits.

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

8 years ago[Shadow DOM] Kill ShadowRoot constructor
hayato@chromium.org [Mon, 17 Dec 2012 04:56:39 +0000 (04:56 +0000)]
[Shadow DOM] Kill ShadowRoot constructor
https://bugs.webkit.org/show_bug.cgi?id=102913

Reviewed by Dimitri Glazkov.

Source/WebCore:

Re-landing r137408 which breaks browser tests on chromium. I've
updated the browser tests on chromium so that they do not use
WebKitShadowRoot constructor.

No new tests. Updating existing layout tests.

* dom/ShadowRoot.idl:
* page/DOMWindow.idl:

LayoutTests:

* fast/js/global-constructors-expected.txt:
* platform/efl/fast/js/global-constructors-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:

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

8 years agoAdd a script to compute the mean and 95% confidence interval (using two-sided t-test...
mjs@apple.com [Mon, 17 Dec 2012 03:17:35 +0000 (03:17 +0000)]
Add a script to compute the mean and 95% confidence interval (using two-sided t-test) of a sample set
https://bugs.webkit.org/show_bug.cgi?id=105148

Reviewed by Filip Pizlo.

Usage examples:

$ sampstat --help
Usage: sampstat [options] [FILES]
  Compute the mean and 95% confidence interval of a sample set.
  Standard input or files must contain two or more decimal numbers, one per line.

Options:
  -h, --help            show this help message and exit
  -u UNIT, --unit=UNIT  assume values are in units of UNIT
  -v, --verbose         print all values (with units)

$ sampstat -u MB memresults.txt
2356.90 MB +/- 101.34 MB (4.3%)

$ sampstat -v -u MB memresults.txt
      2318.21 MB
      2399.56 MB
      2352.93 MB
----------------
Mean: 2356.90 MB +/- 101.34 MB (4.3%)

* Scripts/sampstat: Added.
(sum): Helper function to compute the sum of a list.
(arithmeticMean): Compute the meam of a list.
(standardDeviation): Compute the sample standard deviation (unbiased estimator).
(standardError): Compute the sample standard error.
(tDist): Compute t(.025, n-1), the t-value for atwo-sided 95% confidence interval.
(twoSidedConfidenceInterval): Compute the two-sided confidence interval range about the mean.

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

8 years agoAllow built-in PDF plugin and plugin documents to auto-start
jonlee@apple.com [Mon, 17 Dec 2012 02:43:44 +0000 (02:43 +0000)]
Allow built-in PDF plugin and plugin documents to auto-start
https://bugs.webkit.org/show_bug.cgi?id=105000
<rdar://problem/12633351>

Reviewed by Sam Weinig.

Source/WebCore:

Plug-ins in plug-in documents that are in the main frame should always auto-start.

Add a virtual function that returns whether the PluginViewBase should auto-start its plug-in.
Add a callback that gives the HTML plug-in element an opportunity to set the display state
based on the widget.

* plugins/PluginViewBase.h:
(WebCore::PluginViewBase::shouldAlwaysAutoStart): Added. By default returns false.

* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Renamed from
subframeLoaderWillLoadPlugIn() for consistency. This call will also be made a little later
in the subframe loader. Adds a check to see if the plug-in is inside a plug-in document
of the main frame. If so, auto-start.
(WebCore::HTMLPlugInImageElement::subframeLoaderDidCreatePlugIn): Given the widget created,
check to see if it should always auto-start. If so, set the display state to Playing. Otherwise
leave the display state alone.
* html/HTMLPlugInImageElement.h:

* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::requestPlugin): Move the will-load-plug-in call into loadPlugin().
(WebCore::SubframeLoader::loadPlugin): Immediately prior to the plug-in's creation, make the
will-create call. If a plug-in was made, make the did-create call. The did-create call should
be made before setWidget() since that might initialize the plug-in, which could take the display
state into account if being initialized synchronously.

Source/WebKit2:

Overrides PluginViewBase::shouldAlwaysAutoStart().
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::shouldAlwaysAutoStart): If there's no plug-in, return the default,
otherwise return the plug-in's behavior.
* WebProcess/Plugins/PluginView.h:

* WebProcess/Plugins/Plugin.h:
(WebKit::Plugin::shouldAlwaysAutoStart): Added. By default, return false.
* WebProcess/Plugins/PDF/SimplePDFPlugin.h: Built-in PDF plug-ins should auto-start.

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

8 years ago[TexMap] Perform the layer-tree traversal in GraphicsLayerTextureMapper.
commit-queue@webkit.org [Mon, 17 Dec 2012 02:29:06 +0000 (02:29 +0000)]
[TexMap] Perform the layer-tree traversal in GraphicsLayerTextureMapper.
https://bugs.webkit.org/show_bug.cgi?id=103366

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-16
Reviewed by Noam Rosenthal.

Currently, Texture Mapper performs the layer-tree traversal in
TextureMapperLayer, while Coordinated Graphics performs the traversal in
CoordinatedGraphicsLayer. This patch makes Texture Mapper perform the
traversal in GraphicsLayerTextureMapper.

Also removed the SyncOptions enum, which is redundant since no client
calls it with ComputationsOnly.

This is in preparation for refactoring TextureMapper to work in an actor
model (http://webkit.org/b/103854).

No new tests. Covered by existing tests.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly):
(WebCore::GraphicsLayerTextureMapper::flushCompositingState):
(WebCore::GraphicsLayerTextureMapper::didFlushCompositingState):
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(GraphicsLayerTextureMapper):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):
* platform/graphics/texmap/TextureMapperLayer.h:
(TextureMapperLayer):

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

8 years agoCoordinated Graphics: Small refactor of CoordinatedLayerTreeHost and CoordinatedGraph...
commit-queue@webkit.org [Mon, 17 Dec 2012 02:28:03 +0000 (02:28 +0000)]
Coordinated Graphics: Small refactor of CoordinatedLayerTreeHost and CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=104880

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-16
Reviewed by Noam Rosenthal.

This patch changes two points.
1. Remove layerByIDMap() in CoordinatedGraphicsLayer because it is unused.
2. Remove code swapping m_registeredLayers in CoordinatedLayerTreeHost because
setCoordinator(0) does not call detachLayer().

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):

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

8 years agoRemove the random crash thread
andersca@apple.com [Mon, 17 Dec 2012 02:18:42 +0000 (02:18 +0000)]
Remove the random crash thread
https://bugs.webkit.org/show_bug.cgi?id=105147

Reviewed by Sam Weinig.

Remove old crashy code.

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

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

8 years agoImplement authentication for downloads
andersca@apple.com [Mon, 17 Dec 2012 02:14:19 +0000 (02:14 +0000)]
Implement authentication for downloads
https://bugs.webkit.org/show_bug.cgi?id=105146
<rdar://problem/12239483>

Reviewed by Sam Weinig.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initialize):
(WebKit::NetworkProcess::didReceiveMessage):
(WebKit::NetworkProcess::didReceiveSyncMessage):
(WebKit::NetworkProcess::downloadsAuthenticationManager):
* NetworkProcess/NetworkProcess.h:
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
* WebProcess/Downloads/Download.cpp:
(WebKit::Download::didReceiveAuthenticationChallenge):
* WebProcess/Downloads/DownloadManager.cpp:
(WebKit::DownloadManager::downloadsAuthenticationManager):
* WebProcess/Downloads/DownloadManager.h:
* WebProcess/Downloads/mac/DownloadMac.mm:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::downloadsAuthenticationManager):
(WebKit::WebProcess::didReceiveSyncMessage):
* WebProcess/WebProcess.h:

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

8 years agoCoordinated Graphics: Small refactor of CoordinatedLayerTreeHost and CoordinatedGraph...
commit-queue@webkit.org [Mon, 17 Dec 2012 02:10:28 +0000 (02:10 +0000)]
Coordinated Graphics: Small refactor of CoordinatedLayerTreeHost and CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=104880

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-16
Reviewed by Noam Rosenthal.

Delete backing stores explicitly in ~CoordinatedLayerTreeHost().

Clarify the lifecycle of backing stores in CoordinatedGraphicsLayer.
Currently, CoordinatedGraphicsLayer::removeTile() checks if m_coordinator
exists, because ~CoordinatedLayerTreeHost() sets m_coordinator in
CoordinatedGraphicsLayer to 0. This patch purges backing stores before setting
m_coordinator to 0. This change makes code more readable.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):

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

8 years agoAuthentication manager cleanup
andersca@apple.com [Mon, 17 Dec 2012 01:51:18 +0000 (01:51 +0000)]
Authentication manager cleanup
https://bugs.webkit.org/show_bug.cgi?id=105144

Reviewed by Sam Weinig.

Some cleanup to make it possible to reuse the authentication manager from the network process.

* UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
(WebKit::AuthenticationChallengeProxy::AuthenticationChallengeProxy):
(WebKit::AuthenticationChallengeProxy::~AuthenticationChallengeProxy):
(WebKit::AuthenticationChallengeProxy::useCredential):
(WebKit::AuthenticationChallengeProxy::cancel):
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
(WebKit::AuthenticationChallengeProxy::create):
(AuthenticationChallengeProxy):
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveAuthenticationChallenge):
* WebProcess/Authentication/AuthenticationManager.cpp:
(WebKit::AuthenticationManager::AuthenticationManager):
(WebKit::AuthenticationManager::setConnection):
(WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
(WebKit::AuthenticationManager::useCredentialForChallenge):
* WebProcess/Authentication/AuthenticationManager.h:
* WebProcess/Downloads/Download.cpp:
(WebKit::Download::didReceiveAuthenticationChallenge):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initialize):
* WebProcess/WebProcess.h:
(WebKit::WebProcess::authenticationManager):
(WebProcess):

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientat...
haraken@chromium.org [Mon, 17 Dec 2012 01:26:44 +0000 (01:26 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation.html.

* platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-orientation-expected.png: Added.

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons...
haraken@chromium.org [Mon, 17 Dec 2012 01:24:49 +0000 (01:24 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons.html.

* platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/scrollbar-buttons-expected.png: Added.

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar...
haraken@chromium.org [Mon, 17 Dec 2012 01:20:48 +0000 (01:20 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar.html.

* platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/disabled-scrollbar-expected.png: Added.

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

8 years agoRudimentary support for main resource downloads
andersca@apple.com [Mon, 17 Dec 2012 01:19:33 +0000 (01:19 +0000)]
Rudimentary support for main resource downloads
https://bugs.webkit.org/show_bug.cgi?id=105141

Reviewed by Sam Weinig.

For now, instead of converting a main resource load into a download, just cancel it and start
a new separate download.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::downloadRequest):
Call through to the download manager.

(WebKit::NetworkProcess::cancelDownload):
Call through to the download manager.

* NetworkProcess/NetworkProcess.messages.in:
Add new messages.

* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::cancel):
Send the cancel message to the network process when needed.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::download):
Handle the network process case.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::decidePolicyForResponse):
Keep track of the current request when calling decidePolicyForResponse.

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar...
haraken@chromium.org [Mon, 17 Dec 2012 01:18:54 +0000 (01:18 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar.html.

* platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/basic-scrollbar-expected.png: Added.

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/updating-scrolling...
haraken@chromium.org [Mon, 17 Dec 2012 01:15:56 +0000 (01:15 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/updating-scrolling-content.html.

* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt: Added.

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/textarea-scroll...
haraken@chromium.org [Mon, 17 Dec 2012 01:13:14 +0000 (01:13 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch.html.

* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt: Added.

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/scrolling-without...
haraken@chromium.org [Mon, 17 Dec 2012 01:11:20 +0000 (01:11 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/scrolling-without-painting.html.

* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt: Added.

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

8 years agoUnreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/remove-overflow...
haraken@chromium.org [Mon, 17 Dec 2012 01:09:33 +0000 (01:09 +0000)]
Unreviewed. Rebaselined virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2.html.

* platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2-expected.png: Added.
* platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/remove-overflow-crash2-expected.png: Added.

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

8 years agoUnreviewed. Rebaselined webkitConvertPoint.html.
haraken@chromium.org [Mon, 17 Dec 2012 01:06:23 +0000 (01:06 +0000)]
Unreviewed. Rebaselined webkitConvertPoint.html.

* platform/chromium-mac/fast/dom/Window/webkitConvertPoint-expected.txt:
* platform/chromium/fast/dom/Window/webkitConvertPoint-expected.txt: Renamed from LayoutTests/platform/chromium-win/fast/dom/Window/webkitConvertPoint-expected.txt.

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

8 years agoUnreviewed. Rebaselined pixels of transformed-iframe-copy-on-scroll.html.
haraken@chromium.org [Mon, 17 Dec 2012 01:03:32 +0000 (01:03 +0000)]
Unreviewed. Rebaselined pixels of transformed-iframe-copy-on-scroll.html.

* platform/chromium-mac-lion/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
* platform/chromium-mac/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
* platform/chromium-mac/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.txt: Added.

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

8 years agoUnreviewed. Rebaselined images for fast/inline/justify-emphasis-inline-box.html.
haraken@chromium.org [Mon, 17 Dec 2012 00:59:54 +0000 (00:59 +0000)]
Unreviewed. Rebaselined images for fast/inline/justify-emphasis-inline-box.html.

* platform/chromium-mac-lion/fast/inline/justify-emphasis-inline-box-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/inline/justify-emphasis-inline-box-expected.png.
* platform/chromium-mac/fast/inline/justify-emphasis-inline-box-expected.png:

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

8 years agoUnreviewed. Rebaselined fast/css/nested-layers-with-hover.html.
haraken@chromium.org [Mon, 17 Dec 2012 00:57:26 +0000 (00:57 +0000)]
Unreviewed. Rebaselined fast/css/nested-layers-with-hover.html.

* platform/chromium-win/fast/css/nested-layers-with-hover-expected.txt: Removed.
* platform/chromium/fast/css/nested-layers-with-hover-expected.txt: Removed.
* platform/efl/fast/css/nested-layers-with-hover-expected.txt: Removed.
* platform/gtk/fast/css/nested-layers-with-hover-expected.txt: Removed.
* platform/qt/fast/css/nested-layers-with-hover-expected.txt: Removed.

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

8 years ago[WebKit2] CustomProtocolManager should intercept messages of class MessageClassCustom...
aestes@apple.com [Sun, 16 Dec 2012 22:38:47 +0000 (22:38 +0000)]
[WebKit2] CustomProtocolManager should intercept messages of class MessageClassCustomProtocolManager sent to the network process
https://bugs.webkit.org/show_bug.cgi?id=105137

Reviewed by Anders Carlsson.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::didReceiveMessage):

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

8 years agoPush pixel snapping logic into TransformState
leviw@chromium.org [Sun, 16 Dec 2012 21:50:20 +0000 (21:50 +0000)]
Push pixel snapping logic into TransformState
https://bugs.webkit.org/show_bug.cgi?id=101779

Reviewed by Simon Fraser.

Source/WebCore:

The old SnapOffsetForTransforms behavior fell apart when there was content nested in
multiple levels of containers with sub-pixel offsets. The point of this flag was to
mirror the pixel snapping that occurs in paint, where offsets are accumulated bottom-
up through the render tree and snapped at the end. This change eliminates this flag
and pushes pixel snapping logic down into TransformState.

TransformState now tracks a LayoutSize accumulated offset when there's no transform
or we're just translating. We then snap and apply this offset before accumulating
values into a transform, and when returning planar coordinates to callers.

Test: fast/sub-pixel/transformed-iframe-copy-on-scroll.html added,
      fast/sub-pixel/sub-pixel-iframe-copy-on-scroll.html modified to also catch this bug.

* platform/graphics/transforms/TransformState.cpp:
(WebCore::TransformState::operator=): Pass accumulated offset.
(WebCore::TransformState::translateTransform): Extracted this functionality for
re-use when applying the accumulated offset, or accumulating from a call to move.
(WebCore::TransformState::translateMappedCoordinates): Same as above when we're not
acculating into a transform.
(WebCore::TransformState::move): Changed to accumulate into m_accumulatedOffset when
not accumulating into a transform.
(WebCore::TransformState::applyAccumulatedOffset):
(WebCore::TransformState::applyTransform): Applies the accumulated offset before the
transform.
(WebCore::TransformState::flatten): Ditto for flattening.
(WebCore::TransformState::mappedPoint): Translates by the accumulated offset before
returning.
(WebCore::TransformState::mappedQuad): Ditto.
* platform/graphics/transforms/TransformState.h:
(TransformState): Added m_accumulatedOffset.
* rendering/RenderGeometryMap.cpp:
(WebCore::RenderGeometryMap::mapToContainer): When not using a transform, we still need
to snap our offset before applying to our float result. Also, flatten when we have a
non-uniform step.
* rendering/RenderGeometryMap.h:
(RenderGeometryMap): Remove use of SnapOffsetForTransforms.

Everything below simply drops the use of SnapOffsetForTransforms:

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::getUpperLeftCorner):
* dom/MouseRelatedEvent.cpp:
(WebCore::MouseRelatedEvent::computeRelativePosition):
* editing/FrameSelection.cpp:
(WebCore::CaretBase::absoluteBoundsForLocalRect):
* editing/RenderedPosition.cpp:
(WebCore::RenderedPosition::absoluteRect):
* editing/VisiblePosition.cpp:
(WebCore::VisiblePosition::absoluteCaretBounds):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::setPositionFromPoint):
* html/shadow/SpinButtonElement.cpp:
(WebCore::SpinButtonElement::defaultEventHandler):
* page/FrameView.cpp:
(WebCore::FrameView::convertFromRenderer):
(WebCore::FrameView::convertToRenderer):
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintDocumentMarker):
(WebCore::InlineTextBox::paintTextMatchMarker):
(WebCore::InlineTextBox::computeRectForReplacementMarker):
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::mapLocalToContainer):
(WebCore::RenderBox::pushMappingToContainer):
* rendering/RenderBox.h:
(RenderBox):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::computeStickyPositionConstraints):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::userResize):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::mapLocalToContainer):
(WebCore::RenderInline::pushMappingToContainer):
* rendering/RenderInline.h:
(RenderInline):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::absoluteToContents):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::childrenClipRect):
(WebCore::RenderLayer::selfClipRect):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::contentsVisible):
* rendering/RenderMediaControls.cpp:
(WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton):
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::showPopup):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::absoluteFocusRingQuads):
* rendering/RenderObject.h:
* rendering/RenderText.cpp:
(WebCore::RenderText::absoluteRectsForRange):
(WebCore::RenderText::absoluteQuads):
(WebCore::RenderText::absoluteQuadsForRange):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::volumeSliderOffsetFromMuteButton):
* rendering/RenderView.cpp:
(WebCore::RenderView::selectionBounds):
* rendering/RenderView.h:
(RenderView):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::updateWidgetGeometry):
* rendering/svg/RenderSVGForeignObject.cpp:
(WebCore::RenderSVGForeignObject::mapLocalToContainer):
* rendering/svg/RenderSVGForeignObject.h:
(RenderSVGForeignObject):
* rendering/svg/RenderSVGInline.cpp:
(WebCore::RenderSVGInline::mapLocalToContainer):
* rendering/svg/RenderSVGInline.h:
(RenderSVGInline):
* rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::mapLocalToContainer):
* rendering/svg/RenderSVGModelObject.h:
(RenderSVGModelObject):
* rendering/svg/RenderSVGRoot.h:
(RenderSVGRoot):
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::mapLocalToContainer):
* rendering/svg/RenderSVGText.h:
(RenderSVGText):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::mapLocalToContainer):
* rendering/svg/SVGRenderSupport.h:
(SVGRenderSupport):

Source/WebKit/chromium:

Eliminating use of SnapOffsetForTransforms as it's no longer needed.

* src/FindInPageCoordinates.cpp:
(WebKit::toNormalizedRect):
* src/LinkHighlight.cpp:
(WebKit::convertTargetSpaceQuadToCompositedLayer):
* src/WebInputEventConversion.cpp:
(WebKit::convertAbsoluteLocationForRenderObject):
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::windowToLocalPoint):

Source/WebKit/mac:

* WebView/WebFullScreenController.mm:
(screenRectOfContents): Removed SnapOffsetForTransforms as it's no longer needed.

Source/WebKit2:

Eliminating use of SnapOffsetForTransforms as it's no longer needed.

* WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::screenRectOfContents):

LayoutTests:

* fast/dom/Window/webkitConvertPoint.html: Updating values to match corrected pixel snapping.
* fast/multicol/break-properties.html: Fixing sub-pixel layout feature checking.
* fast/multicol/vertical-lr/break-properties.html: Ditto.
* fast/multicol/vertical-rl/break-properties.html: Ditto.
* fast/sub-pixel/sub-pixel-iframe-copy-on-scroll.html: Updating to catch the bug where the old
pixel snapping logic did the wrong thing when nested.
* fast/sub-pixel/transformed-iframe-copy-on-scroll.html: Added.
* platform/chromium-linux/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
* platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
* platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.txt: Added.
* platform/chromium-win/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.txt:
* platform/chromium/TestExpectations:

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

8 years agoRename WebFrame::convertHandleToDownload to convertMainResourceLoadToDownload
andersca@apple.com [Sun, 16 Dec 2012 20:57:09 +0000 (20:57 +0000)]
Rename WebFrame::convertHandleToDownload to convertMainResourceLoadToDownload
https://bugs.webkit.org/show_bug.cgi?id=105134

Reviewed by Sam Weinig.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::convertMainResourceLoadToDownload):
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::convertMainResourceLoadToDownload):
* WebProcess/WebPage/WebFrame.h:
(WebFrame):

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

8 years agoRename FrameLoaderClient::download to convertMainResourceLoadToDownload
andersca@apple.com [Sun, 16 Dec 2012 20:30:40 +0000 (20:30 +0000)]
Rename FrameLoaderClient::download to convertMainResourceLoadToDownload
https://bugs.webkit.org/show_bug.cgi?id=105122

Reviewed by Andreas Kling.

Source/WebCore:

Rename FrameLoaderClient::download to convertMainResourceLoadToDownload and change it to take a MainResourceLoader instead
of a ResourceHandle, since resource handles may not exist when loading isn't done in the web process.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* loader/EmptyClients.h:
* loader/FrameLoaderClient.h:
(WebCore):
(FrameLoaderClient):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::continueAfterContentPolicy):

Source/WebKit/blackberry:

Update for WebCore changes.

* Api/WebPage.h:
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::convertMainResourceLoadToDownload):
* WebCoreSupport/FrameLoaderClientBlackBerry.h:
(FrameLoaderClientBlackBerry):

Source/WebKit/chromium:

Update for WebCore changes.

* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::convertMainResourceLoadToDownload):
* src/FrameLoaderClientImpl.h:
(FrameLoaderClientImpl):

Source/WebKit/efl:

Update for WebCore changes.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::convertMainResourceLoadToDownload):
* WebCoreSupport/FrameLoaderClientEfl.h:
(FrameLoaderClientEfl):

Source/WebKit/gtk:

Update for WebCore changes.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::convertMainResourceLoadToDownload):
* WebCoreSupport/FrameLoaderClientGtk.h:
(FrameLoaderClient):

Source/WebKit/mac:

Update for WebCore changes.

* WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::convertMainResourceLoadToDownload):

Source/WebKit/qt:

Update for WebCore changes.

* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::convertMainResourceLoadToDownload):
* WebCoreSupport/FrameLoaderClientQt.h:
(FrameLoaderClientQt):

Source/WebKit/win:

Update for WebCore changes.

* WebFrame.cpp:
(WebFrame::convertMainResourceLoadToDownload):
* WebFrame.h:

Source/WebKit/wince:

Update for WebCore changes.

* WebCoreSupport/FrameLoaderClientWinCE.cpp:
(WebKit::FrameLoaderClientWinCE::convertMainResourceLoadToDownload):
* WebCoreSupport/FrameLoaderClientWinCE.h:
(FrameLoaderClientWinCE):

Source/WebKit/wx:

Update for WebCore changes.

* WebKitSupport/FrameLoaderClientWx.cpp:
(WebCore::FrameLoaderClientWx::convertMainResourceLoadToDownload):
* WebKitSupport/FrameLoaderClientWx.h:
(FrameLoaderClientWx):

Source/WebKit2:

Update for WebCore changes.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::convertMainResourceLoadToDownload):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient):

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

8 years agoRemove in-band text tracks when media element's src changes
eric.carlson@apple.com [Sun, 16 Dec 2012 19:26:12 +0000 (19:26 +0000)]
Remove in-band text tracks when media element's src changes
https://bugs.webkit.org/show_bug.cgi?id=105081

Reviewed by Sam Weinig.

Source/WebCore:

No new tests, media/track/track-in-band.html was updated to test this change.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerDidRemoveTrack): Move some code into removeTrack.
(WebCore::HTMLMediaElement::removeTrack): New, remove a track and all of its cues.
(WebCore::HTMLMediaElement::removeAllInbandTracks): New, remove all in-band tracks.
(WebCore::HTMLMediaElement::clearMediaPlayer): Call removeAllInbandTracks.
* html/HTMLMediaElement.h:

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::~MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Call clearTextTracks.
(WebCore::MediaPlayerPrivateAVFoundationObjC::clearTextTracks): Remove all tracks from client.

LayoutTests:

Extend test to verify that all in-band tracks are removed from the media element
when its src changes.

* media/track/track-in-band-expected.txt:
* media/track/track-in-band.html:

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

8 years ago[BlackBerry] GUIMark3 page is rendered at a large scale during history navigation...
zhajiang@rim.com [Sun, 16 Dec 2012 18:36:45 +0000 (18:36 +0000)]
[BlackBerry] GUIMark3 page is rendered at a large scale during history navigation back
https://bugs.webkit.org/show_bug.cgi?id=105130

Patch by Jacky Jiang  <zhajiang@rim.com>.
Reviewed by George Staikos.

PR: 265999
During history navigation, UI thread can blit the contents at a bad
view state before WebKit thread restores the view state.
Suspend screen updates before goBackOrForward() and resume thereafter
so that screen can be updated after the correct view state is updated.
No need to render or blit here, as goBackOrForward() can dispatch a
message to WebKit thread to do that in WebPagePrivate::restoreHistoryViewState().

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::goBackOrForward):

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

8 years agoUnreviewed EFL gardening.
christophe.dumez@intel.com [Sun, 16 Dec 2012 18:20:55 +0000 (18:20 +0000)]
Unreviewed EFL gardening.

Mark new editing/pasteboard/copy-paste-ruby-text.html test introduced
in r137477 as expected to fail for EFL port due to missing PasteBoard
implementation.

* platform/efl/TestExpectations:

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

8 years agoFix assertions when doing a full repaint of compositing layers
simon.fraser@apple.com [Sun, 16 Dec 2012 18:14:52 +0000 (18:14 +0000)]
Fix assertions when doing a full repaint of compositing layers
https://bugs.webkit.org/show_bug.cgi?id=105128

Reviewed by Dan Bernstein.

In r137811 I added code to repaint all compositing layers when FrameView::layout()
is doing a full repaint. However, this code needs to avoid calling setContentsNeedDisplay()
on layers that don't actually draw their own content: those that draw into an ancestor,
and those that draw into a window.

Fixes assertions in existing tests.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterLayout):

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

8 years agoUnreviewed EFL gardening.
christophe.dumez@intel.com [Sun, 16 Dec 2012 18:10:56 +0000 (18:10 +0000)]
Unreviewed EFL gardening.

Generate EFL expectation for new fast/inline/justify-emphasis-inline-box.html
test introduced in r137786.

* platform/efl/fast/inline/justify-emphasis-inline-box-expected.png: Added.
* platform/efl/fast/inline/justify-emphasis-inline-box-expected.txt: Added.

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

8 years ago[GTK][AC] Build failure with an option --with-acceleration-backend=clutter
commit-queue@webkit.org [Sun, 16 Dec 2012 17:59:46 +0000 (17:59 +0000)]
[GTK][AC] Build failure with an option --with-acceleration-backend=clutter
https://bugs.webkit.org/show_bug.cgi?id=105027

Patch by ChangSeok Oh <shivamidow@gmail.com> on 2012-12-16
Reviewed by Gustavo Noronha Silva.

.:

I turned off opengl related variables, enable_glx, enable_egl and enable_gles2
when selecting clutter as the acceleration-backend. Because they seem useless for the AC by clutter.

* configure.ac:

Source/WebCore:

GLContext.* and RedirectedXCompositeWindow.* are meaningful only if opengl is
a backend for the AC. So I wrap them in USE_OPENGL.

No new tests. This patch fixes a build fauilure, not adding new features.

* GNUmakefile.list.am:

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

8 years ago[GStreamer] create playbin in ::load(), not in player constructor
commit-queue@webkit.org [Sun, 16 Dec 2012 15:41:47 +0000 (15:41 +0000)]
[GStreamer] create playbin in ::load(), not in player constructor
https://bugs.webkit.org/show_bug.cgi?id=103898

Patch by Víctor Manuel Jáquez Leal <vjaquez@igalia.com> on 2012-12-16
Reviewed by Philippe Normand.

This patch moves the instantiation of the playbin pipeline into the
WebCore::MediaPlayerPrivateGStreamer::load() method, so the pipeline
layout can reflect other predefined settings such as audio pitch
preservation in variable playback rate scenarios

No new tests. Covered by existing tests.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::load):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
(MediaPlayerPrivateGStreamer):

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

8 years agoUnreviewed rebaseline.
christophe.dumez@intel.com [Sun, 16 Dec 2012 14:53:04 +0000 (14:53 +0000)]
Unreviewed rebaseline.

Rebaseline several compositing tests after r137798.

* compositing/iframes/overlapped-nested-iframes-expected.txt:
* compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
* compositing/rtl/rtl-iframe-absolute-expected.txt:
* compositing/rtl/rtl-iframe-fixed-expected.txt:
* compositing/rtl/rtl-iframe-relative-expected.txt:
* compositing/tiling/crash-reparent-tiled-layer-expected.txt:
* compositing/tiling/huge-layer-add-remove-child-expected.txt:
* compositing/tiling/huge-layer-with-layer-children-expected.txt:
* compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:

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

8 years ago[CSSRegions] Pseudo-elements should not be directly collected into a named flow
mihnea@adobe.com [Sun, 16 Dec 2012 11:00:05 +0000 (11:00 +0000)]
[CSSRegions] Pseudo-elements should not be directly collected into a named flow
https://bugs.webkit.org/show_bug.cgi?id=105046

Reviewed by Abhishek Arya.

Source/WebCore:

Prevent pseudo-elements to be collected into a named-flow by bailing out early in the collecting stage.
Following the CSSRegions spec, http://dev.w3.org/csswg/css3-regions/#flow-into, the pseudo-elements
like ::before/::after/::first-letter/::first-line are not allowed to become content nodes, being directly
collected into a flow thread.

Tests: fast/regions/pseudo-after-content-node.html
       fast/regions/pseudo-before-content-node.html
       fast/regions/pseudo-first-letter-content-node.html
       fast/regions/pseudo-first-line-content-node.html

* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):

LayoutTests:

Prevent pseudo-elements to be collected into a named-flow by bailing out early in the collecting stage.

Following the CSSRegions spec, http://dev.w3.org/csswg/css3-regions/#flow-into, the pseudo-elements
like ::before/::after/::first-letter/::first-line are not allowed to become content nodes, being directly
collected into a flow thread.

* fast/regions/pseudo-after-content-node-expected.txt: Added.
* fast/regions/pseudo-after-content-node.html: Added.
* fast/regions/pseudo-before-content-node-expected.txt: Added.
* fast/regions/pseudo-before-content-node.html: Added.
* fast/regions/pseudo-first-letter-content-node-expected.txt: Added.
* fast/regions/pseudo-first-letter-content-node.html: Added.
* fast/regions/pseudo-first-line-content-node-expected.txt: Added.
* fast/regions/pseudo-first-line-content-node.html: Added.

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

8 years agoSource/WebCore: [CSS Regions] broken feature detection: body.webkitRegionOverset...
commit-queue@webkit.org [Sun, 16 Dec 2012 10:01:09 +0000 (10:01 +0000)]
Source/WebCore: [CSS Regions] broken feature detection: body.webkitRegionOverset and body.webkitGetRegionFlowRanges shouldn't succeed when disabled at runtime
https://bugs.webkit.org/show_bug.cgi?id=99707

Patch by Mihai Maerean <mmaerean@adobe.com> on 2012-12-16
Reviewed by Hajime Morita.

The bug is that the CSS Regions feature leaks information at run-time. There are JS properties that exist even
if the feature is disabled at run-time (document.webkitGetNamedFlows, document.body.webkitRegionOverset,
document.body.webkitGetRegionFlowRanges and window.WebKitCSSRegionRule).

The fix is to add V8EnabledAtRuntime=cssRegions in the IDL files to the properties that leak information and to
the interfaces that are the type of those properties.

Test: fast/regions/region-leak-js-information-when-disabled-at-runtime.html

* css/WebKitCSSRegionRule.idl:
    added V8EnabledAtRuntime=cssRegions for the WebKitCSSRegionRule interface.
* dom/DOMNamedFlowCollection.idl:
    added V8EnabledAtRuntime=cssRegions for the DOMNamedFlowCollection interface.
* dom/Document.idl:
    added V8EnabledAtRuntime=cssRegions for the webkitGetNamedFlows method.
* dom/Element.idl:
    added V8EnabledAtRuntime=cssRegions for the webkitRegionOverset attribute.
    added V8EnabledAtRuntime=cssRegions for the webkitGetRegionFlowRanges method.
* page/DOMWindow.idl:
    added V8EnabledAtRuntime=cssRegions for the WebKitCSSRegionRule attribute.

LayoutTests: [CSS Regions] broken feature detection: body.webkitRegionOverset and body.webkitGetRegionFlowRanges shouldn't succeed when disabled at runtime.
https://bugs.webkit.org/show_bug.cgi?id=99707

Patch by Mihai Maerean <mmaerean@adobe.com> on 2012-12-16
Reviewed by Hajime Morita.

The bug is that the CSS Regions feature leaks information at run-time. There are JS properties that exist even
if the feature is disabled at run-time (document.webkitGetNamedFlows, document.body.webkitRegionOverset,
document.body.webkitGetRegionFlowRanges and window.WebKitCSSRegionRule).
The best LayoutTest would test that the properties exist when the feature is enabled and that the properties
just aren't there when the feature is disabled.
But, since during running Layout Tests the feature is enabled by default and switching the
RuntimeEnabledFeatures requires the process to be restarted and that is currently not possible, we can only test
that the properties exist and have the proper type.

* fast/regions/region-leak-js-information-when-disabled-at-runtime-expected.txt: Added.
* fast/regions/region-leak-js-information-when-disabled-at-runtime.html: Added.

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

8 years ago[chromium] More expectations updates for composited scrolling.
vollick@chromium.org [Sun, 16 Dec 2012 04:41:09 +0000 (04:41 +0000)]
[chromium] More expectations updates for composited scrolling.

Unreviewed change. Updating expectations.

Added expectations for a remaining test that needs a new baseline.

* platform/chromium/TestExpectations:

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

8 years ago[chromium] More expectations updates for composited scrolling.
vollick@chromium.org [Sun, 16 Dec 2012 04:03:50 +0000 (04:03 +0000)]
[chromium] More expectations updates for composited scrolling.

Unreviewed change. Updating expectations.

Some of the Failures noted in the last change were actually
ImageOnlyFailures, and some tests are now passing - these are
corrected in this patch.

* platform/chromium/TestExpectations:

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

8 years agoAnother build fix.
andersca@apple.com [Sun, 16 Dec 2012 03:11:05 +0000 (03:11 +0000)]
Another build fix.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::createDownloadProxy):

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

8 years ago[WebKit2] Have CustomProtocolManager and CustomProtocolManagerProxy store Connections...
aestes@apple.com [Sun, 16 Dec 2012 02:54:54 +0000 (02:54 +0000)]
[WebKit2] Have CustomProtocolManager and CustomProtocolManagerProxy store Connections for messaging
https://bugs.webkit.org/show_bug.cgi?id=105124

Reviewed by Anders Carlsson.

Remove CustomProtocolManagerProxy's assumption that all messages go to
a web process. Have it take a ChildProcessProxy instead and extract its
connection.

Similarly, remove CustomProtocolManager's assumption that all messages
go through a shared WebProcess. Initialize the shared CustomProtocolManager
with a Connection object instead.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess): Initialize the
shared CustomProtocolManager with the NetworkProcess's connection to
the UI process.
* Shared/Network/CustomProtocols/CustomProtocolManager.h:
(WebKit::CustomProtocolManager::connection): Assert m_connection is
non-0 and return it.
* Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
(+[WKCustomProtocol canInitWithRequest:]): Remove an unnecessary
namespace.
(-[WKCustomProtocol initWithRequest:cachedResponse:client:]): Ditto.
(-[WKCustomProtocol startLoading]): Send a message on the
CustomProtocolManager's connection rather than assuming there is a
shared WebProcess in our address space.
(-[WKCustomProtocol stopLoading]): Ditto.
(WebKit::CustomProtocolManager::initialize): Initialize the shared
CustomProtocolManager with a Connection and register our custom
protocol handler with NSURLProtocol.
* UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
(WebKit):
(CustomProtocolManagerProxy): Take a ChildProcessProxy* rather than a
WebProcessProxy*.
* UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
(WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy): Ditto.
(WebKit::CustomProtocolManagerProxy::startLoading): Ditto.
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::NetworkProcessProxy): Instantiate a
CustomProtocolManagerProxy for the network process.
(WebKit::NetworkProcessProxy::didReceiveMessage): Route messages of
class MessageClassCustomProtocolManagerProxy to the
CustomProtocolManagerProxy.
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didReceiveMessage): Assert that we aren't
using the network process since we've received a message from a
web process's CustomProtocolManager.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess): Break CustomProtocolManager
initialization out into a helper function.
(WebKit::WebProcess::initializeCustomProtocolManager): Initialize our
CustomProtocolManager.
* WebProcess/WebProcess.h:

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

8 years agoHappy little Qt build fix.
andersca@apple.com [Sun, 16 Dec 2012 02:47:55 +0000 (02:47 +0000)]
Happy little Qt build fix.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::download):

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

8 years ago[chromium] Update test expectations now that we're opting into composited scrolling
vollick@chromium.org [Sun, 16 Dec 2012 02:41:39 +0000 (02:41 +0000)]
[chromium] Update test expectations now that we're opting into composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=105123

Unreviewed change. Updating expectations.

Added expectations for tests that need updated baselines now that
we're opting into composited scrolling.

* platform/chromium/TestExpectations:

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

8 years agoSource/WebCore: [chromium] Automatically use composited scrolling
vollick@chromium.org [Sun, 16 Dec 2012 02:07:57 +0000 (02:07 +0000)]
Source/WebCore: [chromium] Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

We currently use the composited scrolling facilities provided by
wkb.ug/91117 if the overflow scroll block element is styled with
-webkit-overflow-scrolling: touch. Ideally, we could automatically
opt into composited scrolling if it is safe to do so. This can affect
antialiasing, so it is important that automatically opting in is only
enabled via a setting.

The way I determine if it is safe is by checking that z-ordering will
not be affected if the overflow scrollable element were promoted to a
stacking context (details below), and that clipping our scrolling
descendants will not affect rendering.

To check the first condition (that z-ordering will not be affected).
I ensure that the candidate element and all its descendants appear as a
contiguous block in the candidate's stacking context. That is, if no
other elements are 'between' any of the candidates descendants when we
sort in paint order, then we're safe. This is overly conservative,
however. We could, in future, only consider stacking problems between
elements that actually overlap.

To ensure that clipping will not cause a rendering change, I ensure
that the layer has no out of flow positioned descendant whose
containing block is not also a descendant of ours.

Test: compositing/overflow/automatically-opt-into-compositing-scrolling.html

(WebCore):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::acceleratedCompositingForOverflowScrollEnabled):
(WebCore):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrderRecursive):
(WebCore::RenderLayer::positionNewlyCreatedOverflowControls):
(WebCore::RenderLayer::canSafelyEstablishAStackingContext):
  Returns true if the RenderLayer could become a stacking context without
  affecting the stacking order.
(WebCore::RenderLayer::updateDescendantDependentFlags):
  We now need to keep track of out of flow positioned descendants.
(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::usesCompositedScrolling):
  Returns true if the layer actually is using composited scrolling.
  This function may return false, even when needsCompositedScrolling
  returns true.
(WebCore::RenderLayer::needsCompositedScrolling):
  This function returns true if we would like to use composited
  scrolling and it is safe to turn it on.
(WebCore::RenderLayer::updateNeedsCompositedScrolling):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):
  Since these could affect opting into composited scrolling, we must
  request that the RenderLayerCompositor reevaluate compositing.
(WebCore::RenderLayer::updateLayerListsIfNeeded):
  We call updateCanSafelyEstablishStackingContext here, if necessary.
(WebCore::RenderLayer::shouldBeNormalFlowOnly):
(WebCore::RenderLayer::shouldBeSelfPaintingLayer):
  usesCompositedScrolling -> needsCompositedScrolling
(WebCore::RenderLayer::setAncestorChainHasOutOfFlowPositionedDescendant):
(WebCore::RenderLayer::dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus):
(WebCore::RenderLayer::updateOutOfFlowPositioned):
  Dirties and sets the out of flow positioned descendant state.
(WebCore::RenderLayer::styleChanged):
* rendering/RenderLayer.h:
(RenderLayer):
(WebCore::RenderLayer::hasOutOfFlowPositionedDescendant):
* rendering/RenderLayerBacking.cpp:
(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::hasUnpositionedOverflowControlsLayers):
(WebCore):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::requiresCompositingForOverflowScrolling):
* rendering/RenderLayerCompositor.h:
(WebCore::RenderLayerCompositor::setShouldReevaluateCompositingAfterLayout):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setEnableCompositingForOverflowScroll):
  Allows enabling the setting in layout tests.
(WebCore):
* testing/InternalSettings.h:
(InternalSettings):
* testing/InternalSettings.idl:

LayoutTests: Automatically use composited scrolling
https://bugs.webkit.org/show_bug.cgi?id=94743

Reviewed by Adrienne Walker.

Tests various configurations of elements to ensure that we only automatically opt into
composited scrolling when it is safe to do so.

* compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Added.
* compositing/overflow/automatically-opt-into-composited-scrolling.html: Added.
* platform/chromium/TestExpectations:
 The test platform/chromium/virtual/gpu/compositedscrolling/scrollbars/custom-scrollbar-with-incomplete-style.html
 is failing due to wkb.ug/103156

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

8 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Sun, 16 Dec 2012 02:01:34 +0000 (02:01 +0000)]
Unreviewed. Fix make distcheck.

* bindings/gobject/GNUmakefile.am: Do not dist generated DOM
bindings headers.
* platform/ScrollAnimatorNone.cpp: Include PlatformGestureEvent.h
only if gesture events are enabled.

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

8 years ago Build fix.
ap@apple.com [Sun, 16 Dec 2012 01:49:38 +0000 (01:49 +0000)]
    Build fix.

        * platform/network/FormData.cpp:
        (WebCore::encodeElement):
        (WebCore::decodeElement):
        (WebCore::FormData::encode):
        (WebCore::FormData::decode):
        Disambiguated encode/decode functions. I'm not quite sure why the compiler was
        confused, but distinct names should make the code more readable anyway.

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

8 years ago <rdar://problem/12886312> Cannot upload patches to Bugzilla (<input type...
ap@apple.com [Sun, 16 Dec 2012 01:31:00 +0000 (01:31 +0000)]
    <rdar://problem/12886312> Cannot upload patches to Bugzilla (<input type=file> doesn't work)
        https://bugs.webkit.org/show_bug.cgi?id=105120

        Reviewed by Sam Weinig.

        Serialize HTTP body. ResourceRequest serialization cannot (and shouldn't) know about
        body streams, as used with files.

        * Shared/Network/NetworkResourceLoadParameters.cpp:
        (WebKit::NetworkResourceLoadParameters::encode):
        (WebKit::NetworkResourceLoadParameters::decode):
        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::encode):

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

8 years agoHandle downloads in the network process
andersca@apple.com [Sun, 16 Dec 2012 01:26:05 +0000 (01:26 +0000)]
Handle downloads in the network process
https://bugs.webkit.org/show_bug.cgi?id=105117

Reviewed by Sam Weinig.

Start using the download manager in the network process.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::startDownload):
Call through to the download manager.

* NetworkProcess/NetworkConnectionToWebProcess.messages.in:
Add StartDownload message.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::downloadManager):
Add "singleton" download manager.

(WebKit::NetworkProcess::didCreateDownload):
(WebKit::NetworkProcess::didDestroyDownload):
(WebKit::NetworkProcess::downloadProxyConnection):
Implement DownloadManager::Client.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didReceiveMessage):
(WebKit::NetworkProcessProxy::didReceiveSyncMessage):
Call through to the message receiver map.

* WebProcess/Downloads/Download.cpp:
* WebProcess/Downloads/DownloadManager.cpp:
(WebKit::DownloadManager::downloadProxyConnection):
* WebProcess/Downloads/DownloadManager.h:
Rename connection to downloadProxyConnection.

* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::startDownload):
When using the network process, send a message to it with the request that needs to be downloaded.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::downloadProxyConnection):
Return the connection to the UI process.

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

8 years agoNSURLCache should be disabled in the WebProcess when using the NetworkProcess
weinig@apple.com [Sun, 16 Dec 2012 01:15:52 +0000 (01:15 +0000)]
NSURLCache should be disabled in the WebProcess when using the NetworkProcess
<rdar://problem/12872266>
https://bugs.webkit.org/show_bug.cgi?id=105119

Reviewed by Alexey Proskuryakov.

Set the size of the NSURLCache to 0 (both disk and memory) in the WebProcess when using
the NetworkProcess.

* WebProcess/mac/WebProcessMac.mm:
(WebKit::WebProcess::platformSetCacheModel):
(WebKit::WebProcess::platformInitializeWebProcess):

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

8 years ago[WebKit2] Register the custom protocol handler in the network process if it exists
aestes@apple.com [Sun, 16 Dec 2012 00:42:11 +0000 (00:42 +0000)]
[WebKit2] Register the custom protocol handler in the network process if it exists
https://bugs.webkit.org/show_bug.cgi?id=105118

Reviewed by Anders Carlsson.

Register our custom protocol handler with NSURLProtocol when starting
up the network process; do not register the custom protocol handler in
web processes if a network process is being used.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):
* WebProcess/mac/WebProcessMac.mm:
(WebKit::WebProcess::platformInitializeWebProcess):

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

8 years agoThe network process should use the correct NSURLCache location and set its size corre...
weinig@apple.com [Sun, 16 Dec 2012 00:22:35 +0000 (00:22 +0000)]
The network process should use the correct NSURLCache location and set its size correctly for the CacheModel
<rdar://problem/12848505>
https://bugs.webkit.org/show_bug.cgi?id=105115

Reviewed by Anders Carlsson.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::setCacheModel):
* NetworkProcess/NetworkProcess.h:
(NetworkProcess):
* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::platformInitialize):
(WebKit::memorySize):
(WebKit::volumeFreeSize):
(WebKit::NetworkProcess::platformSetCacheModel):
Copy code from the WebProcess to set up the NSURLCache correctly (location and size).
We should eventually move the calculation of this to the WebContext so it can be done
once.

* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
(NetworkProcessCreationParameters):
Add the necessary creation parameters to set up the cache.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didFinishLaunching):
* UIProcess/Network/NetworkProcessProxy.h:
(NetworkProcessProxy):
* UIProcess/Network/mac/NetworkProcessProxyMac.mm:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::setCacheModel):
* UIProcess/WebContext.h:
(WebKit):
(WebContext):
* UIProcess/mac/WebContextMac.mm:
(WebKit):
(WebKit::WebContext::platformInitializeNetworkProcess):
Move initializing the NetworkProcess to just after creating (matching the WebProcess),
rather than waiting for it finish loading before sending the creation parameters.
Additionally, this moves the setting up of the creation parameters to the WebContext,
as that is where all the interesting state resides (and also matches the WebProcess).

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

8 years agoClean up the previous build fix; access m_networkProcess directly.
aestes@apple.com [Sun, 16 Dec 2012 00:18:49 +0000 (00:18 +0000)]
Clean up the previous build fix; access m_networkProcess directly.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::registerSchemeForCustomProtocol):
(WebKit::WebContext::unregisterSchemeForCustomProtocol):

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

8 years agoFix the build.
aestes@apple.com [Sun, 16 Dec 2012 00:13:51 +0000 (00:13 +0000)]
Fix the build.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::registerSchemeForCustomProtocol):
(WebKit::WebContext::unregisterSchemeForCustomProtocol):

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

8 years ago[WebKit2] Register schemes with the network process if it is being used
aestes@apple.com [Sun, 16 Dec 2012 00:03:27 +0000 (00:03 +0000)]
[WebKit2] Register schemes with the network process if it is being used
https://bugs.webkit.org/show_bug.cgi?id=105113

Reviewed by Anders Carlsson.

If a WebContext is using the network process, it needs to be told about
scheme (un)registration rather than the context's web processes.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess): Tell the shared
CustomProtocolManager about schemes registered at process creation time.
(WebKit::NetworkProcess::registerSchemeForCustomProtocol): Tell the
shared CustomProtocolManager about a new scheme.
(WebKit::NetworkProcess::unregisterSchemeForCustomProtocol): Remove a
scheme from the shared CustomProtocolManager.
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in: Add registration and
unregistration messages for the NetworkProcess.
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode): Encode
urlSchemesRegisteredForCustomProtocols.
(WebKit::NetworkProcessCreationParameters::decode): Decode
urlSchemesRegisteredForCustomProtocols.
* Shared/Network/NetworkProcessCreationParameters.h: Define
urlSchemesRegisteredForCustomProtocols.
* UIProcess/Network/mac/NetworkProcessProxyMac.mm:
(WebKit::NetworkProcessProxy::platformInitializeNetworkProcess): Populate
urlSchemesRegisteredForCustomProtocols with the current set of schemes.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::registerSchemeForCustomProtocol): Send a new
scheme to either the network process or to the context's web processes.
(WebKit::WebContext::unregisterSchemeForCustomProtocol): Ditto for
removing a scheme.
* UIProcess/WebContext.h:
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitializeWebProcess): Only populate
urlSchemesRegisteredForCustomProtocols if the network process isn't
being used.
(WebKit::WebContext::registerNotificationObservers):
* WebProcess/mac/WebProcessMac.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
urlSchemesRegisteredForCustomProtocols should only be non-empty if the
network process isn't being used. Assert this.

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

8 years ago[BlackBerry] Pass key modifiers with touch and mouse events
nghanavatian@rim.com [Sat, 15 Dec 2012 23:43:15 +0000 (23:43 +0000)]
[BlackBerry] Pass key modifiers with touch and mouse events
https://bugs.webkit.org/show_bug.cgi?id=105108

Reviewed by Rob Buis.

Source/WebCore:

Call Screen to retrieve current key modifiers.

Internally reviewed by Gen Mak.

* platform/PlatformMouseEvent.h:
(PlatformMouseEvent):
* platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:
(WebCore::PlatformKeyboardEvent::getCurrentModifierState):
* platform/blackberry/PlatformMouseEventBlackBerry.cpp:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/blackberry/PlatformTouchEventBlackBerry.cpp:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):

Source/WebKit/blackberry:

Pass key modifiers to allow for added functionality, such as
shift+click to highlight.

Internally reviewed by Gen Mak.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::webContext):
(BlackBerry::WebKit::WebPagePrivate::updateCursor):
(BlackBerry::WebKit::WebPage::mouseEvent):
(BlackBerry::WebKit::WebPage::touchPointAsMouseEvent):
* Api/WebPage.h:
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::sendClickAtFatFingersPoint):
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
(BlackBerry::WebKit::TouchEventHandler::handleFatFingerPressed):
* WebKitSupport/TouchEventHandler.h:
(TouchEventHandler):

Tools:

Update DRT to new api.

Internally reviewed by Gen Mak.

* DumpRenderTree/blackberry/EventSender.cpp:
(mouseDownCallback):
(mouseUpCallback):
(mouseMoveToCallback):

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

8 years ago[BlackBerry] Clean up allocated memory from InputMethodSupport
nghanavatian@rim.com [Sat, 15 Dec 2012 23:40:12 +0000 (23:40 +0000)]
[BlackBerry] Clean up allocated memory from InputMethodSupport
https://bugs.webkit.org/show_bug.cgi?id=105110

Reviewed by Rob Buis.

PR265919
We are deep copying the spannable_string from IMF and freeing
here once we're done with it.

Internally reviewed by Jeff Rogers.

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::spellCheckingRequestProcessed):

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

8 years agoRemove the unneeded NetworkProcessCrashed message
andersca@apple.com [Sat, 15 Dec 2012 23:35:50 +0000 (23:35 +0000)]
Remove the unneeded NetworkProcessCrashed message
https://bugs.webkit.org/show_bug.cgi?id=105114

Reviewed by Sam Weinig.

Remove the NetworkProcessCrashed message; it's not needed since the connection member variable is already
nulled out in WebProcess::networkProcessConnectionClosed which is called when the Connection::Client::didClose member
function is called on the connection between the web process and network process.

Furthermore, this message was handled on the connection queue which runs on a different thread and the handler was not
thread-safe so this could in theory cause bad crashes.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didClose):
* WebProcess/WebProcess.cpp:
* WebProcess/WebProcess.h:
(WebProcess):
* WebProcess/WebProcess.messages.in:

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

8 years ago[BlackBerry] Prevent CookieManager from blocking the WKT thread
commit-queue@webkit.org [Sat, 15 Dec 2012 23:32:12 +0000 (23:32 +0000)]
[BlackBerry] Prevent CookieManager from blocking the WKT thread
https://bugs.webkit.org/show_bug.cgi?id=105111

PR 265603

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-12-15
Reviewed by Rob Buis.
Internally reviewed by Konrad Piascik.

The getBackingStoreCookies in WKT is blocking the thread because it has to wait for
the db to be opened before it can call on it.

The fix is to make CookieDatabaseBackingStore in the cookie_db thread dispatch
a getBackingStoreCookies call on WKT after invokeOpen is finished.

Tested loading the browser. Cookies are being loaded into memory on start up.

* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:
(WebCore::CookieDatabaseBackingStore::invokeOpen):
* platform/blackberry/CookieManager.cpp:
(WebCore::cookieManager):
* platform/blackberry/CookieManager.h:

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

8 years agoAdd a DownloadProxyMap object to the NetworkProcessProxy object
andersca@apple.com [Sat, 15 Dec 2012 23:11:52 +0000 (23:11 +0000)]
Add a DownloadProxyMap object to the NetworkProcessProxy object
https://bugs.webkit.org/show_bug.cgi?id=105112

Reviewed by Sam Weinig.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::createDownloadProxy):
(WebKit::NetworkProcessProxy::didClose):
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::createDownloadProxy):
* UIProcess/WebProcessProxy.cpp:
* UIProcess/WebProcessProxy.h:

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

8 years agoMove the download proxy map from the web context to the web process proxy
andersca@apple.com [Sat, 15 Dec 2012 22:49:36 +0000 (22:49 +0000)]
Move the download proxy map from the web context to the web process proxy
https://bugs.webkit.org/show_bug.cgi?id=105109

Reviewed by Andreas Kling.

More progress towards making downloads work with the networking process. Since downloads are handled by the
web process when not using a networking process, it makes sense for the download proxy map to live in the
web process proxy object.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::shouldTerminate):
(WebKit::WebContext::disconnectProcess):
(WebKit::WebContext::download):
(WebKit::WebContext::createDownloadProxy):
* UIProcess/WebContext.h:
(WebContext):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::disconnect):
(WebKit::WebProcessProxy::shouldTerminate):
(WebKit):
(WebKit::WebProcessProxy::createDownloadProxy):
* UIProcess/WebProcessProxy.h:
(WebProcessProxy):

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

8 years agoFix repaint issues when resizing a window with centered content, for platforms with...
simon.fraser@apple.com [Sat, 15 Dec 2012 22:11:27 +0000 (22:11 +0000)]
Fix repaint issues when resizing a window with centered content, for platforms with a tile cache
https://bugs.webkit.org/show_bug.cgi?id=105073

Reviewed by Dan Bernstein.

Add a manual test for window resize with a centered element.

* ManualTests/resize-repaint.html: Added.

Source/WebCore:

There were several issues with the "do full repaint" code path in
FrameView::layout(). These caused repaint issues when resizing the web view,
especially for platforms that use a tile cache.

First, the m_doFullRepaint flag wold get clobbered on resize-layouts, because
the call to adjustViewSize() re-enters layout(), and resets the m_doFullRepaint member
variable to false, even if the outer call had previously set it to true. This would
cause us to lose track of whether we needed to do a full repaint. The patch fixes
this by restoring m_doFullRepaint to the value it had before the call to adjustViewSize().

The second problem was that full repaints would not propagate to compositing
layers. They only repainted the RenderView, and on platforms that use a tile cache,
this only repaints the top portion of that tile cache. This was fixed by sending
a NeedsFullRepaintInBacking flag down into RenderLayer::updateLayerPositions(),
and using that to do a full repaint on all compositing layers.

Sending this new flag down into updateAfterLayout() prompted some boolean/flags
cleanup with propagated into several files. This also allowed me to no longer
include RenderLayerBacking.h in RenderLayerCompositor.h, but that required
header cleanup in several files.

Automated testing is not possible because WebKitTestRunner resizes the window
asynchronously (bug 105101). Added manual test.

* page/FrameView.cpp:
(WebCore::updateLayerPositionFlags):
(WebCore::FrameView::layout):
* page/scrolling/ScrollingCoordinator.cpp:
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updateCompositingLayersAfterScroll):
* rendering/RenderLayer.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterLayout):
(WebCore::RenderLayerBacking::contentChanged):
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
* rendering/RenderLayerCompositor.h:
* rendering/RenderObject.cpp:
* rendering/RenderView.cpp:

Source/WebKit/chromium:

Include RenderLayerBacking.h, which is no longer included by RenderLayerCompositor.h.

* tests/ScrollingCoordinatorChromiumTest.cpp:

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

8 years agoDownloadProxy should keep a strong reference to its associated web context
andersca@apple.com [Sat, 15 Dec 2012 22:04:12 +0000 (22:04 +0000)]
DownloadProxy should keep a strong reference to its associated web context
https://bugs.webkit.org/show_bug.cgi?id=105107

Reviewed by Alexey Proskuryakov.

While this does create a ref-cycle, it's broken when the download completes, fails, is canceled or
if the process that's doing the download crashes.

* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::processDidClose):
(WebKit::DownloadProxy::didStart):
(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
(WebKit::DownloadProxy::didReceiveResponse):
(WebKit::DownloadProxy::didReceiveData):
(WebKit::DownloadProxy::shouldDecodeSourceDataOfMIMEType):
(WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):
(WebKit::DownloadProxy::didCreateDestination):
(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):
* UIProcess/Downloads/DownloadProxy.h:
(DownloadProxy):

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

8 years agoRemove WebContext::downloadFinished
andersca@apple.com [Sat, 15 Dec 2012 21:53:11 +0000 (21:53 +0000)]
Remove WebContext::downloadFinished
https://bugs.webkit.org/show_bug.cgi?id=105105

Reviewed by Sam Weinig.

Have DownloadProxyMap manage the message receiver map and remove WebContext::downloadFinished.

* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):
* UIProcess/Downloads/DownloadProxyMap.cpp:
(WebKit::DownloadProxyMap::DownloadProxyMap):
(WebKit::DownloadProxyMap::createDownloadProxy):
(WebKit::DownloadProxyMap::downloadFinished):
* UIProcess/Downloads/DownloadProxyMap.h:
(DownloadProxyMap):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::createDownloadProxy):
* UIProcess/WebContext.h:

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

8 years agoMake the NetworkProcess be managed by the WebContext, rather than a singleton Network...
weinig@apple.com [Sat, 15 Dec 2012 21:31:14 +0000 (21:31 +0000)]
Make the NetworkProcess be managed by the WebContext, rather than a singleton NetworkProcessMananger
https://bugs.webkit.org/show_bug.cgi?id=105104

Reviewed by Alexey Proskuryakov.

Move to having the WebContext own and manage the NetworkProcessProxy.

* UIProcess/Network/NetworkProcessManager.cpp: Removed.
* UIProcess/Network/NetworkProcessManager.h: Removed.
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::create):
(WebKit::NetworkProcessProxy::NetworkProcessProxy):
(WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
* UIProcess/Network/NetworkProcessProxy.h:
(WebKit):
(NetworkProcessProxy):
* UIProcess/Network/mac/NetworkProcessManagerMac.mm: Removed.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::removeNetworkProcessProxy):
(WebKit::WebContext::getNetworkProcessConnection):
(WebKit::WebContext::willStartUsingPrivateBrowsing):
(WebKit::WebContext::willStopUsingPrivateBrowsing):
(WebKit::WebContext::createNewWebProcess):
* UIProcess/WebContext.h:
(WebKit):
(WebContext):
(WebKit::WebContext::networkProcess):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::getNetworkProcessConnection):
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::applicationBecameVisible):
(WebKit::WebContext::applicationBecameOccluded):
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoDownloadProxy objects should know which DownloadProxyMap they belong to
andersca@apple.com [Sat, 15 Dec 2012 21:15:29 +0000 (21:15 +0000)]
DownloadProxy objects should know which DownloadProxyMap they belong to
https://bugs.webkit.org/show_bug.cgi?id=105102

Reviewed by Andy Estes.

* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::create):
(WebKit::DownloadProxy::DownloadProxy):
* UIProcess/Downloads/DownloadProxy.h:
(WebKit):
(DownloadProxy):
* UIProcess/Downloads/DownloadProxyMap.cpp:
(WebKit::DownloadProxyMap::createDownloadProxy):

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

8 years ago[WebKit2] Move CustomProtocolManager to Shared/
aestes@apple.com [Sat, 15 Dec 2012 21:08:46 +0000 (21:08 +0000)]
[WebKit2] Move CustomProtocolManager to Shared/
https://bugs.webkit.org/show_bug.cgi?id=105103

Reviewed by Sam Weinig.

CustomProtocolManager can be instantiated either in the NetworkProcess or the WebProcess, so it should live in Shared/.

* DerivedSources.make: Update the path where CustomProtocolManager.messages.in can be found.
* Shared/Network/CustomProtocols/CustomProtocolManager.h: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/CustomProtocolManager.h.
* Shared/Network/CustomProtocols/CustomProtocolManager.messages.in: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/CustomProtocolManager.messages.in.
* Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm.
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoTry to fix the Qt build.
weinig@apple.com [Sat, 15 Dec 2012 21:02:52 +0000 (21:02 +0000)]
Try to fix the Qt build.

* Target.pri:

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

8 years agoGet rid of DownloadProxyMap::downloads()
andersca@apple.com [Sat, 15 Dec 2012 20:35:53 +0000 (20:35 +0000)]
Get rid of DownloadProxyMap::downloads()
https://bugs.webkit.org/show_bug.cgi?id=105100

Reviewed by Sam Weinig.

Add the needed member functions to DownloadProxyMap and remove the downloads() member function.

* UIProcess/Downloads/DownloadProxyMap.cpp:
(WebKit::DownloadProxyMap::downloadFinished):
(WebKit::DownloadProxyMap::processDidClose):
(WebKit):
* UIProcess/Downloads/DownloadProxyMap.h:
(WebKit::DownloadProxyMap::isEmpty):
(DownloadProxyMap):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::shouldTerminate):
(WebKit::WebContext::disconnectProcess):
(WebKit::WebContext::downloadFinished):

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

8 years agoMove calculation of caches sizes based on the cache model to CacheModel.h/cpp
weinig@apple.com [Sat, 15 Dec 2012 20:26:40 +0000 (20:26 +0000)]
Move calculation of caches sizes based on the cache model to CacheModel.h/cpp
https://bugs.webkit.org/show_bug.cgi?id=105098

Reviewed by Anders Carlsson.

Move calculation of caches sizes based on the cache model to CacheModel.h/cpp so
that it can be used by more than just the WebProcess.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Shared/CacheModel.cpp: Added.
(WebKit):
(WebKit::calculateCacheSizes):
* Shared/CacheModel.h:
* Target.pri:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebProcess.cpp:
* WebProcess/WebProcess.h:
(WebProcess):
* win/WebKit2.vcproj:

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

8 years agoDownloadProxyMap shouldn't be a singleton after all
andersca@apple.com [Sat, 15 Dec 2012 20:13:41 +0000 (20:13 +0000)]
DownloadProxyMap shouldn't be a singleton after all
https://bugs.webkit.org/show_bug.cgi?id=105099

Reviewed by Sam Weinig.

Make the DownloadProxyMap be per context instead, and get rid of the m_downloads hash map from WebContext.

* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):
* UIProcess/Downloads/DownloadProxyMap.cpp:
(WebKit::DownloadProxyMap::~DownloadProxyMap):
* UIProcess/Downloads/DownloadProxyMap.h:
(DownloadProxyMap):
(WebKit::DownloadProxyMap::downloads):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::shouldTerminate):
(WebKit::WebContext::disconnectProcess):
(WebKit::WebContext::createDownloadProxy):
(WebKit::WebContext::downloadFinished):
* UIProcess/WebContext.h:
(WebContext):

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

8 years agoFix build.
andersca@apple.com [Sat, 15 Dec 2012 19:40:17 +0000 (19:40 +0000)]
Fix build.

* platform/graphics/ca/GraphicsLayerCA.h:
Remove an unused member variable.

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