[Qt] Taps are sometimes not highlighted.
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2012-03-26  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
2
3         [Qt] Taps are sometimes not highlighted.
4         https://bugs.webkit.org/show_bug.cgi?id=82188
5
6         Reviewed by Kenneth Rohde Christiansen.
7
8         Highlight any focusable parent element, or if none is found at least
9         the element returned by bestClickableNodeForTouchPoint.
10
11         * WebProcess/WebPage/WebPage.cpp:
12         (WebKit::WebPage::highlightPotentialActivation):
13
14 2012-03-26  Sheriff Bot  <webkit.review.bot@gmail.com>
15
16         Unreviewed, rolling out r111993.
17         http://trac.webkit.org/changeset/111993
18         https://bugs.webkit.org/show_bug.cgi?id=82184
19
20         It broke layout and API tests and made WTR crash (Requested by
21         Ossy on #webkit).
22
23         * UIProcess/qt/QtPageClient.cpp:
24         (QtPageClient::isViewWindowActive):
25
26 2012-03-25  Hayato Ito  <hayato@chromium.org>
27
28         [Shadow DOM] Add Reified DOM Tree traversal internal APIs.
29         https://bugs.webkit.org/show_bug.cgi?id=79197
30
31         Reviewed by Dimitri Glazkov.
32
33         Add internal APIs which can be used to traverse Reified DOM tree, which is
34         a result of node distribution algorithm explained in Shadow DOM spec.
35         https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html
36
37         Every public functions defined in ReifiedTreeTraversal are static
38         functions and are named in a similar way to ones defined in WebCore::Node class.
39         The only difference is that ReifiedTreeTraversal APIs consider shadow
40         hosts and also traverse nodes is Shadow DOM subtrees, crossing shadow's upper and lower boundary
41         transparently.
42
43         There is no actual client which uses these APIs. Follow-up patches for FocusNavigation
44         and EventDispatcher will use the APIs so that they can traverse node in reified tree order.
45
46         * win/WebKit2.def:
47         * win/WebKit2CFLite.def:
48
49 2012-03-25  Alexander Færøy  <alexander.faeroy@nokia.com>
50
51         Unreviewed build fix for QtWebKit on Mac OS X.
52
53         * UIProcess/API/qt/tests/bytearraytestdata.cpp:
54         (ByteArrayTestData::~ByteArrayTestData):
55         * UIProcess/API/qt/tests/bytearraytestdata.h:
56
57 2012-03-24  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
58
59         [Qt][WK2] Implement PageClient::isViewWindowActive()
60         https://bugs.webkit.org/show_bug.cgi?id=81143
61
62         Reviewed by Kenneth Rohde Christiansen.
63
64         This patch implements PageClient::isViewWindowActive()
65         now that QQuickCanvas::isActive() is available (from QWindow).
66
67         * UIProcess/qt/QtPageClient.cpp:
68         (QtPageClient::isViewWindowActive):
69
70 2012-03-23  Alexey Proskuryakov  <ap@apple.com>
71
72         [Mac] No need for platform-specific ENABLE_BLOB values
73         https://bugs.webkit.org/show_bug.cgi?id=82102
74
75         Reviewed by David Kilzer.
76
77         * Configurations/FeatureDefines.xcconfig:
78
79 2012-03-23  Sheriff Bot  <webkit.review.bot@gmail.com>
80
81         Unreviewed, rolling out r108851.
82         http://trac.webkit.org/changeset/108851
83         https://bugs.webkit.org/show_bug.cgi?id=82098
84
85         "Revert the addition of unnecessary, deprecated functions in
86         WKPreferences.h" (Requested by estes on #webkit).
87
88         * UIProcess/API/C/WKPreferences.cpp:
89         * UIProcess/API/C/WKPreferences.h:
90
91 2012-03-23  Brent Fulgham  <bfulgham@webkit.org>
92
93         [WinCairo] Unreviewed build fix.
94
95         * win/WebKit2CFLite.def: Add missing export symbols so that other
96         tools can link properly.
97
98 2012-03-23  Dean Jackson  <dino@apple.com>
99
100         Disable CSS_SHADERS in Apple builds
101         https://bugs.webkit.org/show_bug.cgi?id=81996
102
103         Reviewed by Simon Fraser.
104
105         Remove ENABLE_CSS_SHADERS from FeatureDefines. It's now in Platform.h.
106
107         * Configurations/FeatureDefines.xcconfig:
108
109 2012-03-23  Dave Michael  <dmichael@chromium.org>
110
111         Relanding(r111754): HTMLPluginElement is not destroyed on reload or navigation if getNPObject is called
112         https://bugs.webkit.org/show_bug.cgi?id=80428
113
114         Reviewed by Eric Seidel and Ryosuke Niwa.
115
116         * win/WebKit2.def: Export a symbol for InspectorCounters::counterValue
117         * win/WebKit2CFLite.def: Export a symbol for InspectorCounters::counterValue
118
119 2012-03-23  Sheriff Bot  <webkit.review.bot@gmail.com>
120
121         Unreviewed, rolling out r111855.
122         http://trac.webkit.org/changeset/111855
123         https://bugs.webkit.org/show_bug.cgi?id=82053
124
125         It broke 30+ tests (Requested by Ossy on #webkit).
126
127         * UIProcess/qt/QtPageClient.cpp:
128         (QtPageClient::isViewWindowActive):
129
130 2012-03-23  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
131
132         [Qt][WK2] Implement PageClient::isViewWindowActive()
133         https://bugs.webkit.org/show_bug.cgi?id=81143
134
135         Reviewed by Kenneth Rohde Christiansen.
136
137         This patch implements PageClient::isViewWindowActive()
138         now that QQuickCanvas::isActive() is available (from QWindow).
139
140         * UIProcess/qt/QtPageClient.cpp:
141         (QtPageClient::isViewWindowActive):
142
143 2012-03-23  Andras Becsi  <andras.becsi@nokia.com>
144
145         [Qt][WK2] Disable the flickable when pinching.
146
147         Reviewed by Kenneth Rohde Christiansen.
148
149         Set the interactivity of the internal flickable to false
150         when pinching so that it does not react to mouse events
151         which might break pinch zoom.
152         This is a temporal workaround and needed until the event
153         propagation in QtQuick is fixed.
154
155         * UIProcess/qt/QtViewportInteractionEngine.cpp:
156         (WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
157         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
158         (WebKit::QtViewportInteractionEngine::pinchGestureEnded):
159
160 2012-03-23  Ryosuke Niwa  <rniwa@webkit.org>
161
162         REGRESSION(r111754): plugins/reloadplugins-and-pages.html fails on all platforms
163         https://bugs.webkit.org/show_bug.cgi?id=82035
164
165         * win/WebKit2.def:
166         * win/WebKit2CFLite.def:
167
168 2012-03-22  Anders Carlsson  <andersca@apple.com>
169
170         Remove the Flash NPRuntime short-circuit hacks
171         https://bugs.webkit.org/show_bug.cgi?id=81997
172         <rdar://problem/10409289>
173
174         Reviewed by Sam Weinig.
175
176         This code was added to help speed up Flash plug-in instantiation by reducing the number of
177         synchronous API calls from the plug-in process to the web process during instantiation.
178         However, there was no real indication that this actually improved performance.
179
180         Furthermore, it seems to have introduced crashers when misbehaving plug-ins would make NPRuntime calls
181         after a plug-in had been destroyed. Since Flash is now 64-bit like the rest of WebKit launch time has
182         improved since we don't have to bring in all of the 32-bit system frameworks, so the time has come to
183         rip out this egregious hack.
184
185         * PluginProcess/PluginControllerProxy.cpp:
186         (WebKit::PluginControllerProxy::evaluate):
187         * PluginProcess/PluginControllerProxy.h:
188         (PluginControllerProxy):
189         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
190         (WebKit::NetscapePluginModule::determineQuirks):
191         * Shared/Plugins/PluginQuirks.h:
192         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
193         (WebKit::NPN_Invoke):
194         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
195         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
196         (NetscapePlugin):
197         * WebProcess/Plugins/Plugin.cpp:
198         (WebKit::Plugin::Parameters::encode):
199         (WebKit::Plugin::Parameters::decode):
200         * WebProcess/Plugins/Plugin.h:
201         (Parameters):
202         * WebProcess/Plugins/PluginController.h:
203         (PluginController):
204         * WebProcess/Plugins/PluginView.cpp:
205         * WebProcess/Plugins/PluginView.h:
206         (PluginView):
207         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
208         (WebKit::WebFrameLoaderClient::createPlugin):
209
210 2012-03-22  Raphael Kubo da Costa  <rakuco@FreeBSD.org>
211
212         [CMake] Unreviewed build fix after r111778.
213
214         * CMakeLists.txt: Replace ${JAVASCRIPTCORE_DIR}/wtf includes with
215         ${WTF_DIR}/wtf ones.
216
217 2012-03-22  Csaba Osztrogonác  <ossy@webkit.org>
218
219         Actually move WTF files to their new home
220         https://bugs.webkit.org/show_bug.cgi?id=81844
221
222         [Qt] Unreviewed buildfix after r111778.
223
224         * UIProcess/API/qt/qquicknetworkrequest_p.h:
225         * WebKit2.pri:
226
227 2012-03-22  Dave Michael  <dmichael@chromium.org>
228
229         HTMLPluginElement is not destroyed on reload or navigation if getNPObject is called
230         https://bugs.webkit.org/show_bug.cgi?id=80428
231
232         Reviewed by Eric Seidel.
233
234         Test: plugins/netscape-dom-access-and-reload.html
235
236         * win/WebKit2.def: Export a symbol for InspectorCounters::counterValue
237         * win/WebKit2CFLite.def: Export a symbol for InspectorCounters::counterValue
238
239 2012-03-22  Pierre Rossi  <pierre.rossi@gmail.com>
240
241         Revert back the device DPI to 160.
242
243         This corresponds to a device pixel ratio of 1, which
244         is nicer on the eye in many cases.
245
246         Rubber-stamped by Kenneth Rohde Christiansen.
247
248         * UIProcess/API/qt/qquickwebview.cpp:
249         (QQuickWebViewFlickablePrivate::computeViewportConstraints):
250
251 2012-03-22  Alexander Færøy  <alexander.faeroy@nokia.com>
252
253         [Qt][WK2] Remember to initialize databaseQuotaDialog
254         https://bugs.webkit.org/show_bug.cgi?id=81942
255
256         Reviewed by Kenneth Rohde Christiansen.
257
258         * UIProcess/API/qt/qquickwebview.cpp:
259         (QQuickWebViewPrivate::QQuickWebViewPrivate):
260
261 2012-03-22  Alexander Færøy  <alexander.faeroy@nokia.com>
262
263         [Qt][WK2] Pass Origin information to the DatabaseQuotaDialogContextObject
264         https://bugs.webkit.org/show_bug.cgi?id=81910
265
266         Reviewed by Simon Hausmann.
267
268         * UIProcess/API/qt/qquickwebview.cpp:
269         (QQuickWebViewPrivate::exceededDatabaseQuota):
270         * UIProcess/API/qt/qquickwebview_p_p.h:
271         (QQuickWebViewPrivate):
272         * UIProcess/qt/QtDialogRunner.cpp:
273         (DatabaseQuotaDialogContextObject):
274         (DatabaseQuotaDialogContextObject::DatabaseQuotaDialogContextObject):
275         (DatabaseQuotaDialogContextObject::securityOrigin):
276         (QtDialogRunner::initForDatabaseQuotaDialog):
277         * UIProcess/qt/QtDialogRunner.h:
278         (QtDialogRunner):
279         * UIProcess/qt/QtWebPageUIClient.cpp:
280         (QtWebPageUIClient::exceededDatabaseQuota):
281         * UIProcess/qt/QtWebPageUIClient.h:
282
283 2012-03-22  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
284
285         [Qt] Don't resume the suspended page if the user is continuously flicking.
286         https://bugs.webkit.org/show_bug.cgi?id=81895
287
288         Reviewed by Kenneth Rohde Christiansen.
289
290         Create an additional suspend deferrer between TouchBegin and TouchEnd to
291         relay with the one kept while the flick animation is running.
292         This allows the page to be suspended when a pan gesture starts and stay
293         that way until the last flick animation ends.
294
295         * UIProcess/qt/QtViewportInteractionEngine.cpp:
296         (WebKit::QtViewportInteractionEngine::touchBegin):
297         (WebKit):
298         (WebKit::QtViewportInteractionEngine::touchEnd):
299         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
300         * UIProcess/qt/QtViewportInteractionEngine.h:
301         (QtViewportInteractionEngine):
302         * UIProcess/qt/QtWebPageEventHandler.cpp:
303         (QtWebPageEventHandler::doneWithTouchEvent):
304
305 2012-03-22  Carlos Garcia Campos  <cgarcia@bb-webkit-rel-64.local.igalia.com>
306
307         [GTK] Use the angle-bracket form to include wtf headers
308         https://bugs.webkit.org/show_bug.cgi?id=81884
309
310         Reviewed by Eric Seidel.
311
312         Use #include <wtf/foo> instead of #include <JavaScriptCore/foo>.
313
314         * UIProcess/API/gtk/tests/TestMain.h:
315         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
316
317 2012-03-22  No'am Rosenthal  <noam.rosenthal@nokia.com>
318
319         [Qt][WK2] The background appears to have one extra pixel from the contents
320         https://bugs.webkit.org/show_bug.cgi?id=81830
321
322         Reviewed by Kenneth Rohde Christiansen.
323
324         The clip-polygon from the scenegraph uses floats, not integers.
325         This could cause 1-offset clipping problems in some cases.
326
327         * UIProcess/qt/QtWebPageSGNode.cpp:
328         (WebKit::ContentsSGNode::clipRect):
329
330 2012-03-21  Alexander Færøy  <alexander.faeroy@nokia.com>
331
332         [Qt][WK2] Add QML API for handling database quotas
333         https://bugs.webkit.org/show_bug.cgi?id=81827
334
335         Reviewed by Simon Hausmann.
336
337         Patch by Pierre Rossi and Alexander Færøy.
338
339         This patch adds a QML API for handling database quotas.
340
341         * UIProcess/API/qt/qquickwebview.cpp:
342         (QQuickWebViewPrivate::exceededDatabaseQuota):
343         (QQuickWebViewExperimental::databaseQuotaDialog):
344         (QQuickWebViewExperimental::setDatabaseQuotaDialog):
345         * UIProcess/API/qt/qquickwebview_p.h:
346         * UIProcess/API/qt/qquickwebview_p_p.h:
347         (QQuickWebViewPrivate):
348         * UIProcess/qt/QtDialogRunner.cpp:
349         (DatabaseQuotaDialogContextObject):
350         (DatabaseQuotaDialogContextObject::DatabaseQuotaDialogContextObject):
351         (DatabaseQuotaDialogContextObject::databaseName):
352         (DatabaseQuotaDialogContextObject::displayName):
353         (DatabaseQuotaDialogContextObject::currentQuota):
354         (DatabaseQuotaDialogContextObject::currentOriginUsage):
355         (DatabaseQuotaDialogContextObject::currentDatabaseUsage):
356         (DatabaseQuotaDialogContextObject::expectedUsage):
357         (DatabaseQuotaDialogContextObject::accept):
358         (DatabaseQuotaDialogContextObject::reject):
359         (QtDialogRunner::initForDatabaseQuotaDialog):
360         * UIProcess/qt/QtDialogRunner.h:
361         (QtDialogRunner):
362         (QtDialogRunner::databaseQuota):
363         (QtDialogRunner::onDatabaseQuotaAccepted):
364         * UIProcess/qt/QtWebPageUIClient.cpp:
365         (QtWebPageUIClient::QtWebPageUIClient):
366         (QtWebPageUIClient::exceededDatabaseQuota):
367         * UIProcess/qt/QtWebPageUIClient.h:
368         * UIProcess/qt/WebContextQt.cpp:
369         (WebKit::WebContext::platformDefaultDatabaseDirectory):
370
371 2012-03-21  Tim Horton  <timothy_horton@apple.com>
372
373         Make use of CG rounded-rect primitives
374         https://bugs.webkit.org/show_bug.cgi?id=79932
375         <rdar://problem/9274953>
376
377         Reviewed by Simon Fraser.
378         
379         Portions of patch by Nikolas Zimmermann and Mustafizur Rahaman.
380
381         Add wkCGPathAddRoundedRect.
382
383         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
384         (InitWebCoreSystemInterface):
385
386 2012-03-21  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
387
388         [Qt] WebGraphicsLayer: Untie the layer updates and tile updates.
389         https://bugs.webkit.org/show_bug.cgi?id=81771
390
391         Reviewed by Kenneth Rohde Christiansen.
392
393         The DidRenderFrame message needs to be sent for every UpdateTileForLayer
394         message, but this currently has to be triggered by m_shouldSyncFrame which
395         is only set after sending a SyncCompositingLayerState message.
396         This patch makes sure that tile updates won't trigger sending the whole
397         layer info if it didn't change, and send the DidRenderFrame message directly.
398
399         It also makes sure that the layer info is sent before any tile update so that
400         the layer can be created on the UI process before any tile update is handled.
401
402         * UIProcess/WebLayerTreeRenderer.cpp:
403         (WebKit::WebLayerTreeRenderer::getBackingStore):
404         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
405         (WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
406         (WebCore::WebGraphicsLayer::tiledBackingStorePaint):
407         (WebCore::WebGraphicsLayer::createTile):
408         (WebCore::WebGraphicsLayer::updateTile):
409         (WebCore::WebGraphicsLayer::removeTile):
410         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
411         (WebKit::LayerTreeHostQt::createTile):
412         (WebKit::LayerTreeHostQt::updateTile):
413         (WebKit::LayerTreeHostQt::removeTile):
414
415 2012-03-21  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
416
417         [Qt] Don't clip the contents rendering to the contents size.
418         https://bugs.webkit.org/show_bug.cgi?id=81770
419
420         Reviewed by Kenneth Rohde Christiansen.
421
422         The original bug was caused by the contents size updates
423         having to go through the UI process before being applied
424         on the TiledBackingStore of the non composited contents layer.
425         With this bug being fixed, the clipping isn't necessary anymore.
426
427         * UIProcess/qt/LayerBackingStore.cpp:
428         (WebKit::LayerBackingStore::paintToTextureMapper):
429
430 2012-03-21  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
431
432         [Qt] Apply tile removals at the same time as update buffer swaps.
433         https://bugs.webkit.org/show_bug.cgi?id=81768
434
435         Reviewed by Kenneth Rohde Christiansen.
436
437         When committing the scale, we have to remove old tiles once the
438         tiles for the new scale are rendered. This should however wait
439         until those tiles gets their buffer swapped (following the DidRenderFrame
440         message) to make sure that there is no rendered gap between the removals
441         and updates swap.
442         This patch continues rendering the removed tiles until the DidRenderFrame
443         message is received to discard the old contents and show the new contents
444         at the same frame.
445
446         * UIProcess/WebLayerTreeRenderer.cpp:
447         (WebKit::WebLayerTreeRenderer::commitTileUpdates):
448         (WebKit::WebLayerTreeRenderer::flushLayerChanges):
449         * UIProcess/WebLayerTreeRenderer.h:
450         (WebLayerTreeRenderer):
451         * UIProcess/qt/LayerBackingStore.cpp:
452         (WebKit::LayerBackingStore::removeTile):
453         (WebKit::LayerBackingStore::commitTileUpdates):
454         * UIProcess/qt/LayerBackingStore.h:
455         (LayerBackingStore):
456
457 2012-03-21  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
458
459         [Qt] Trigger scene graph repaints only for relevant layer updates.
460         https://bugs.webkit.org/show_bug.cgi?id=81765
461
462         Reviewed by Kenneth Rohde Christiansen.
463
464         Tile updates and removal shouldn't re-render the scene all by themselves
465         since they need a buffer swap before having any effect on the framebuffer.
466
467         * UIProcess/LayerTreeHostProxy.cpp:
468         (WebKit::LayerTreeHostProxy::dispatchUpdate):
469         (WebKit::LayerTreeHostProxy::deleteCompositingLayer):
470         (WebKit::LayerTreeHostProxy::setRootCompositingLayer):
471         (WebKit::LayerTreeHostProxy::didRenderFrame):
472
473 2012-03-21  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
474
475         [Qt] Don't go through the UI process to update a layer's contents size.
476         https://bugs.webkit.org/show_bug.cgi?id=81764
477
478         Reviewed by Kenneth Rohde Christiansen.
479
480         It's happening when navigating pages that contents from the old page
481         is still present on the tiles until the contents size is shrunk to cut it out.
482         Since the contents size updates are asynchronous and go through the UI process,
483         this could occasionally show some glitch frames.
484         Even worse, the user could delay this update by starting to pan and keep
485         his finger on the screen.
486         This patch makes sure that changes to contents size are notifying the LayerTreeHost
487         immediately when in fixed layout mode, and remove the loop through the UI process.
488
489         * UIProcess/API/qt/qquickwebpage.cpp:
490         (QQuickWebPage::setContentsSize):
491         * UIProcess/API/qt/qquickwebpage_p_p.h:
492         (QQuickWebPagePrivate):
493         * UIProcess/API/qt/qquickwebview.cpp:
494         (QQuickWebViewPrivate::didRelaunchProcess):
495         (QQuickWebViewLegacyPrivate::updateViewportSize):
496         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
497         (WebKit::WebChromeClient::contentsSizeChanged):
498         * WebProcess/WebPage/DrawingArea.h:
499         (WebKit):
500         (WebKit::DrawingArea::layerTreeHost):
501         * WebProcess/WebPage/DrawingAreaImpl.cpp:
502         (WebKit::DrawingAreaImpl::updateBackingStoreState):
503         * WebProcess/WebPage/DrawingAreaImpl.h:
504         (WebKit::DrawingAreaImpl::layerTreeHost):
505         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
506         (WebKit::LayerTreeHostQt::sizeDidChange):
507
508 2012-03-21  Kenneth Rohde Christiansen  <kenneth@webkit.org>
509
510         The activation highlight does not always hide
511         https://bugs.webkit.org/show_bug.cgi?id=81767
512
513         Reviewed by Simon Hausmann.
514
515         The zero point used for hiding potential activations should
516         not be transformed.
517
518         * UIProcess/qt/QtWebPageEventHandler.cpp:
519         (QtWebPageEventHandler::handlePotentialSingleTapEvent):
520
521 2012-03-21  Dinu Jacob  <dinu.jacob@nokia.com>
522
523         [Qt][WK2] Item cannot be selected from select list in touch webview
524         https://bugs.webkit.org/show_bug.cgi?id=81674
525
526         Reviewed by Simon Hausmann.
527
528         Activate flag to prevent QQuickWebView from accepting touch event when select
529         dialog is being displayed.
530
531         * UIProcess/API/qt/qquickwebview.cpp:
532         (QQuickWebViewPrivate::QQuickWebViewPrivate):
533         (QQuickWebViewPrivate::execDialogRunner):
534         (QQuickWebView::touchEvent):
535         * UIProcess/API/qt/qquickwebview_p_p.h:
536         (QQuickWebViewPrivate::setDialogActive):
537         (QQuickWebViewPrivate):
538         * UIProcess/qt/WebPopupMenuProxyQt.cpp:
539         (WebKit::WebPopupMenuProxyQt::showPopupMenu):
540         (WebKit::WebPopupMenuProxyQt::hidePopupMenu):
541
542 2012-03-21  Kenneth Rohde Christiansen  <kenneth@webkit.org>
543
544         [Qt] Remove the PostTransitionState
545         https://bugs.webkit.org/show_bug.cgi?id=81751
546
547         Reviewed by Simon Hausmann.
548
549         As we are handling content size change event etc from the
550         WebProcess, that conflicts with the PostTransitionState handling
551         and we therefore need to handle this slightly differently.
552
553         Remove the code and make sure that we never resize the tiled
554         area to something smaller than the layout viewport.
555
556         * UIProcess/API/qt/qquickwebview.cpp:
557         (QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
558         (QQuickWebViewFlickablePrivate::loadDidCommit):
559         (QQuickWebViewFlickablePrivate::didFinishFirstNonEmptyLayout):
560         (QQuickWebViewFlickablePrivate::didChangeViewportProperties):
561         (QQuickWebViewFlickablePrivate::_q_resume):
562         (QQuickWebViewFlickablePrivate::pageDidRequestScroll):
563         (QQuickWebViewFlickablePrivate::didChangeContentsSize):
564         * UIProcess/API/qt/qquickwebview_p_p.h:
565         (QQuickWebViewFlickablePrivate):
566         * UIProcess/qt/QtViewportInteractionEngine.cpp:
567         (WebKit::QtViewportInteractionEngine::applyConstraints):
568         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
569         (WebKit::WebChromeClient::contentsSizeChanged):
570         * WebProcess/WebPage/WebPage.cpp:
571         (WebKit::WebPage::resizeToContentsIfNeeded):
572
573 2012-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
574
575         [GTK] Add webkit_web_view_run_javascript() to WebKit2 GTK+
576         https://bugs.webkit.org/show_bug.cgi?id=75543
577
578         Reviewed by Martin Robinson.
579
580         * GNUmakefile.am: Add new files to compilation.
581         * UIProcess/API/gtk/WebKitError.cpp:
582         (webkit_javascript_error_quark): Add new error domain for
583         Javascript errors.
584         * UIProcess/API/gtk/WebKitError.h:
585         * UIProcess/API/gtk/WebKitJavascriptResult.cpp: Added.
586         (webkitJavascriptResultCreate): Create a WebKitJavascriptResult
587         for the given WKSerializedScriptValueRef.
588         (webkit_javascript_result_ref): Increment reference count of
589         WebKitJavascriptResult.
590         (webkit_javascript_result_unref): Decrement reference count of
591         WebKitJavascriptResult.
592         (webkit_javascript_result_get_global_context): Get global
593         javascript context of the result.
594         (webkit_javascript_result_get_value): Get the JSValueRef of the
595         result.
596         * UIProcess/API/gtk/WebKitJavascriptResult.h: Added.
597         * UIProcess/API/gtk/WebKitJavascriptResultPrivate.h: Added.
598         * UIProcess/API/gtk/WebKitPrivate.h:
599         * UIProcess/API/gtk/WebKitWebView.cpp:
600         (webkitWebViewFinalize): Release the global javascript context.
601         (webkit_web_view_get_javascript_global_context): Get or create the
602         global javascript context.
603         (webkitWebViewRunJavaScriptCallback): Callback called by C API when
604         javascript execution finishes.
605         (webkit_web_view_run_javascript): Asynchronously run a given
606         javascript.
607         (webkit_web_view_run_javascript_finish): Finish async operation
608         started by webkit_web_view_run_javascript().
609         * UIProcess/API/gtk/WebKitWebView.h:
610         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
611         * UIProcess/API/gtk/docs/webkit2gtk.types: Add
612         webkit_javascript_result_get_type().
613         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
614         (testWebViewRunJavaScript):
615         (beforeAll):
616         * UIProcess/API/gtk/tests/WebViewTest.cpp:
617         (WebViewTest::WebViewTest):
618         (WebViewTest::~WebViewTest):
619         (runJavaScriptReadyCallback):
620         (WebViewTest::runJavaScriptAndWaitUntilFinished):
621         (jsValueToCString):
622         (WebViewTest::javascriptResultToCString):
623         (WebViewTest::javascriptResultToNumber):
624         (WebViewTest::javascriptResultToBoolean):
625         (WebViewTest::javascriptResultIsNull):
626         (WebViewTest::javascriptResultIsUndefined):
627         * UIProcess/API/gtk/tests/WebViewTest.h:
628         * UIProcess/API/gtk/webkit2.h:
629
630 2012-03-20  Eric Seidel  <eric@webkit.org>
631
632         Move wtf/Platform.h from JavaScriptCore to Source/WTF/wtf
633         https://bugs.webkit.org/show_bug.cgi?id=80911
634
635         Reviewed by Adam Barth.
636
637         Update to not depend on "Foo.h" includes for WTF headers.
638
639         * Shared/qt/QtNetworkReplyData.h:
640         * Shared/qt/QtNetworkRequestData.cpp:
641         * Shared/qt/QtNetworkRequestData.h:
642
643 2012-03-20  Anders Carlsson  <andersca@apple.com>
644
645         REGRESSION (r110780): Loading a PDF always makes the WKView layer backed
646         https://bugs.webkit.org/show_bug.cgi?id=81734
647         <rdar://problem/11088172>
648
649         Reviewed by Adele Peterson.
650
651         * UIProcess/API/mac/WKView.mm:
652         (-[WKView _setPageHasCustomRepresentation:]):
653         Don't call -[NSView setWantsLayer:], the web process already takes care of entering and exiting
654         accelerated compositing mode for us.
655
656 2012-03-20  Jon Lee  <jonlee@apple.com>
657
658         Restrict access to notifications for unique origins and file URLs with no local file access
659         https://bugs.webkit.org/show_bug.cgi?id=79704
660         <rdar://problem/10912430>
661
662         Reviewed by Adam Barth.
663
664         In the specific case where a file URL has restricted file access and is denied universal access,
665         SecurityOrigin::canShowNotifications() returns Ask, since it is not considered a unique origin.
666         The cached table of permissions held by the notification manager will typically not have an entry for
667         the toString() representation of these file URLs, which is "null", since that can also cover unique
668         origins, and it is possible that the client will want different permissions between the two types.
669
670         It is reasonable, however, for there to be an entry for "file://", so we use toRawString() to do the lookup.
671
672         * WebProcess/Notifications/WebNotificationManager.cpp:
673         (WebKit::WebNotificationManager::policyForOrigin):
674
675 2012-03-20  Alexey Proskuryakov  <ap@apple.com>
676
677         Address review comment for WebProcess side, too.
678
679         * WebProcess/mac/WebProcessMac.mm: (WebKit::initializeSandbox): There is no need for
680         path to be in static storage, setenv will copy the value.
681
682 2012-03-20  Alexey Proskuryakov  <ap@apple.com>
683
684         Sandboxed PluginProcess should use private temporary and cache directories
685         https://bugs.webkit.org/show_bug.cgi?id=81702
686         <rdar://problem/10792047>
687
688         Reviewed by Anders Carlsson.
689
690         * Platform/Module.h:
691         * Platform/mac/ModuleMac.mm:
692         (WebKit::Module::bundleIdentifier):
693         Expose plug-in's bundle identifier.
694
695         * PluginProcess/mac/com.apple.WebKit.PluginProcess.sb.in: Some unerlated fixes to make
696         networking functional on my testing platforms. These serveices are already allowed for
697         WebProcess.
698
699         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
700         (readSandboxProfile): Unrelated fix - I've been made to rename the profile file, but
701         didn't update where it's read from!
702         (WKN_EnterSandbox): Add a suffix to user directories.
703
704 2012-03-20  Sheriff Bot  <webkit.review.bot@gmail.com>
705
706         Unreviewed, rolling out r111445 and r111446.
707         http://trac.webkit.org/changeset/111445
708         http://trac.webkit.org/changeset/111446
709         https://bugs.webkit.org/show_bug.cgi?id=81708
710
711         It broke Qt and GTK build intentionally (Requested by Ossy on
712         #webkit).
713
714         * WebProcess/Notifications/WebNotificationManager.cpp:
715         (WebKit::WebNotificationManager::policyForOrigin):
716
717 2012-03-20  Jon Lee  <jonlee@apple.com>
718
719         Restrict access to notifications for unique origins and file URLs with no local file access
720         https://bugs.webkit.org/show_bug.cgi?id=79704
721         <rdar://problem/10912430>
722
723         Reviewed by Adam Barth.
724
725         In the specific case where a file URL has restricted file access and is denied universal access,
726         SecurityOrigin::canShowNotifications() returns Ask, since it is not considered a unique origin.
727         The cached table of permissions held by the notification manager will typically not have an entry for
728         the toString() representation of these file URLs, which is "null", since that can also cover unique
729         origins, and it is possible that the client will want different permissions between the two types.
730
731         It is reasonable, however, for there to be an entry for "file://", so we use toRawString() to do the lookup.
732
733         * WebProcess/Notifications/WebNotificationManager.cpp:
734         (WebKit::WebNotificationManager::policyForOrigin):
735
736 2012-03-20  Alexey Proskuryakov  <ap@apple.com>
737
738         WebProcess should use private temporary and cache directories
739         https://bugs.webkit.org/show_bug.cgi?id=80876
740
741         Reviewed by Sam Weinig.
742
743         * Shared/WebProcessCreationParameters.cpp:
744         (WebKit::WebProcessCreationParameters::encode):
745         (WebKit::WebProcessCreationParameters::decode):
746         * Shared/WebProcessCreationParameters.h: (WebProcessCreationParameters):
747         * UIProcess/mac/WebContextMac.mm: (WebKit::WebContext::platformInitializeWebProcess):
748         Always pass uiProcessBundleIdentifier to WebProcess on Mac, it's now used for more than
749         CFURL sessions.
750
751         * WebProcess/com.apple.WebProcess.sb.in: Limit old workaround to platforms that need it.
752
753         * WebProcess/mac/WebProcessMac.mm: (WebKit::initializeSandbox): Tell confstr to use a suffix
754         on user directories.
755
756 2012-03-20  Anders Carlsson  <andersca@apple.com>
757
758         Graphic distortion effect when launching with empty page Safari after reset
759         https://bugs.webkit.org/show_bug.cgi?id=81677
760         <rdar://problem/11065904>
761
762         Reviewed by Sam Weinig.
763
764         Don't set the redraw policy to never, since that was causing the WKView layer to never be updated. Instead,
765         let AppKit decide which redraw policy to use.
766
767         * UIProcess/API/mac/WKView.mm:
768         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
769
770 2012-03-20  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
771
772         Convert hasSpellingMarker to use Internals interface.
773         https://bugs.webkit.org/show_bug.cgi?id=81300
774
775         Reviewed by Ryosuke Niwa.
776
777         * win/WebKit2.def: Export a symbol for hasSpellingMarker.
778
779 2012-03-20  Antaryami Pandia  <antaryami.pandia@motorola.com>
780
781         [GTK] [WK2] Add javascript clipboard functionality settings to WebKit2 GTK+ API.
782         https://bugs.webkit.org/show_bug.cgi?id=80981
783
784         Reviewed by Martin Robinson.
785
786         Add WebSettings to enable/disable javascript clipboard functionality.
787
788         * UIProcess/API/gtk/WebKitSettings.cpp:
789         (webKitSettingsSetProperty):
790         (webKitSettingsGetProperty):
791         (webkit_settings_class_init):
792         (webkit_settings_get_javascript_can_access_clipboard):
793         (webkit_settings_set_javascript_can_access_clipboard):
794         * UIProcess/API/gtk/WebKitSettings.h:
795         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
796         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
797         (testWebKitSettings):
798
799 2012-03-19  Adam Barth  <abarth@webkit.org>
800
801         Remove support for "magic" iframe
802         https://bugs.webkit.org/show_bug.cgi?id=81590
803
804         Reviewed by Eric Seidel.
805
806         Remove FrameLoaderClient methods that no longer exist.
807
808         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
809         (WebKit):
810         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
811
812 2012-03-19  Gustavo Noronha Silva  <gns@gnome.org>
813
814         [GTK] libWebCore.la has become too big for make
815         https://bugs.webkit.org/show_bug.cgi?id=81582
816
817         Unreviewed build fix.
818
819         * GNUmakefile.am: link-in the new libWebCoreModules.la
820
821 2012-03-19  Sam Weinig  <sam@webkit.org>
822
823         Stop messing with the AppKit grow box on platforms that don't support it
824         <rdar://problem/10752048>
825         https://bugs.webkit.org/show_bug.cgi?id=81614
826
827         Reviewed by Dan Bernstein.
828
829         * UIProcess/API/mac/WKView.mm:
830         (-[WKView viewWillMoveToWindow:]):
831         (-[WKView _didChangeScrollbarsForMainFrame]):
832         Snow Leopard was the last Mac OS to need a grow box.
833
834 2012-03-19  Enrica Casucci  <enrica@apple.com>
835
836         WebKit2: create sandbox extensions for files that are dropped in an input control.
837         https://bugs.webkit.org/show_bug.cgi?id=81153
838         <rdar://problem/11031207>
839
840         Reviewed by Alexey Proskuryakov.
841
842         Now the pasteboard access is performed only in the UI process, it is
843         necessary to create sandbox extensions for each file that is dropped into
844         an input type=file element. The extensions are created at the time the files
845         are dropped and consumed immediately.
846         
847         * Platform/CoreIPC/HandleMessage.h:
848         (CoreIPC::callMemberFunction): Added template that takes 8 arguments.
849         * Shared/SandboxExtension.h:
850         (HandleArray): Added new class to handle an array of sandbox extension handles.
851         (WebKit::SandboxExtension::HandleArray::HandleArray):
852         (WebKit::SandboxExtension::HandleArray::~HandleArray):
853         (WebKit::SandboxExtension::HandleArray::resize):
854         (WebKit::SandboxExtension::HandleArray::operator[]):
855         (WebKit::SandboxExtension::HandleArray::size):
856         (WebKit::SandboxExtension::HandleArray::encode):
857         (WebKit::SandboxExtension::HandleArray::decode):
858         * Shared/mac/SandboxExtensionMac.mm: Added new class implementation.
859         (WebKit::SandboxExtension::HandleArray::HandleArray):
860         (WebKit::SandboxExtension::HandleArray::~HandleArray):
861         (WebKit::SandboxExtension::HandleArray::resize):
862         (WebKit::SandboxExtension::HandleArray::operator[]):
863         (WebKit::SandboxExtension::HandleArray::size):
864         (WebKit::SandboxExtension::HandleArray::encode):
865         (WebKit::SandboxExtension::HandleArray::decode):
866         * UIProcess/API/mac/WKView.mm:
867         (createSandboxExtensionsForFileUpload):
868         (-[WKView performDragOperation:]): Added logic to create the sandbox extensions for each
869         file/directory being dropped.
870         * UIProcess/WebPageProxy.cpp:
871         (WebKit::WebPageProxy::dragEntered):
872         (WebKit::WebPageProxy::dragUpdated):
873         (WebKit::WebPageProxy::dragExited):
874         (WebKit::WebPageProxy::performDrag):
875         (WebKit::WebPageProxy::performDragControllerAction): Added the handle array parameter.
876         * UIProcess/WebPageProxy.h:
877         * UIProcess/qt/QtWebPageEventHandler.cpp:
878         (QtWebPageEventHandler::handleDropEvent):
879         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
880         * UIProcess/win/WebView.cpp:
881         (WebKit::WebView::Drop):
882         * WebProcess/WebCoreSupport/WebDragClient.cpp:
883         (WebKit::WebDragClient::willPerformDragDestinationAction): Added handling of the new DragActionUpload.
884         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
885         (WebKit::WebPlatformStrategies::getPathnamesForType): Implemented using message to the UI process.
886         * WebProcess/WebPage/WebPage.cpp:
887         (WebKit::WebPage::performDragControllerAction):
888         (WebKit::WebPage::performUploadDragDestinationAction): Added method that consumes the received extensions.
889         * WebProcess/WebPage/WebPage.h:
890         * WebProcess/WebPage/WebPage.messages.in:
891
892 2012-03-19  Alexey Proskuryakov  <ap@apple.com>
893
894         Make WebFrameLoaderClient::createFrame more like WebKit1 version.
895         https://bugs.webkit.org/show_bug.cgi?id=81550
896
897         Covered by existing tests.
898
899         Reviewed by Jessie Berlin.
900
901         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::createFrame):
902
903 2012-03-19  Anders Carlsson  <andersca@apple.com>
904
905         Find in page highlights get out of place when scrolling
906         https://bugs.webkit.org/show_bug.cgi?id=81543
907         <rdar://problem/10932590>
908
909         Reviewed by Sam Weinig.
910
911         When we have a page overlay layer, always force a full repaint of it whenever the page changes.
912         If this turns out to be a real performance problem (measurements suggest that it isn't), we could once
913         again try to figure out when a full page repaint is needed. Doing so could probably be more expensive than
914         simply repainting the page, given that a page overlay consists of a bunch of rect-fills mostly.
915
916         Also turn on accelerated drawing for the page overlay layer, since that cut CPU usage in half when scrolling
917         on a page that had a find overlay visible.
918
919         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
920         (TiledCoreAnimationDrawingArea):
921         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
922         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
923         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
924
925 2012-03-19  Anders Carlsson  <andersca@apple.com>
926
927         When Find overlay first appears and the page scrolls, the scrolling happens through a fade
928         https://bugs.webkit.org/show_bug.cgi?id=81539
929         <rdar://problem/11031093>
930
931         Reviewed by Dan Bernstein.
932
933         Disable implicit animations when adding the page overlay layer to its superlayer.
934
935         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
936         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
937
938 2012-03-19  Anders Carlsson  <andersca@apple.com>
939
940         Crash when closing an inspected web page with tiled drawing enabled
941         https://bugs.webkit.org/show_bug.cgi?id=81524
942         <rdar://problem/11062396>
943
944         Reviewed by Sam Weinig.
945
946         Guard against the WebPage's underlying WebCore Page being null, which can happen
947         when the inspector highlight overlay is uninstalled by the inspector when the inspected
948         page goes away.
949
950         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
951         (WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
952
953 2012-03-19  Kenneth Rohde Christiansen  <kenneth@webkit.org>
954
955         Merge _q_commitScaleChange and _q_commitPositionChange
956         https://bugs.webkit.org/show_bug.cgi?id=81511
957
958         Reviewed by Simon Hausmann.
959
960         Both methods were used for notifying WebCore of the new
961         viewport and re-tiling. The methods are merge into
962         _q_contentViewportChanged.
963
964         * UIProcess/API/qt/qquickwebview.cpp:
965         (QQuickWebViewFlickablePrivate::onComponentComplete):
966         (QQuickWebViewFlickablePrivate::updateViewportSize):
967         (QQuickWebViewFlickablePrivate::_q_contentViewportChanged):
968         (QQuickWebViewFlickablePrivate::_q_resume):
969         * UIProcess/API/qt/qquickwebview_p.h:
970         * UIProcess/API/qt/qquickwebview_p_p.h:
971         (QQuickWebViewPrivate::_q_contentViewportChanged):
972         (QQuickWebViewFlickablePrivate):
973         * UIProcess/qt/QtViewportInteractionEngine.cpp:
974         (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
975         (WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
976         (WebKit::QtViewportInteractionEngine::wheelEvent):
977         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
978         * UIProcess/qt/QtViewportInteractionEngine.h:
979         (QtViewportInteractionEngine):
980
981 2012-03-19  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
982
983         Select best target for tap gesture.
984         https://bugs.webkit.org/show_bug.cgi?id=78801
985
986         Reviewed by Kenneth Rohde Christiansen.
987
988         Send radius to handlePotentialSingleTapEvent so it can do the same hit
989         detection the tap gesture later does.
990
991         * UIProcess/WebPageProxy.cpp:
992         (WebKit::WebPageProxy::handlePotentialActivation):
993         * UIProcess/WebPageProxy.h:
994         * UIProcess/qt/QtWebPageEventHandler.cpp:
995         (QtWebPageEventHandler::handlePotentialSingleTapEvent):
996         * WebProcess/WebPage/WebPage.cpp:
997         (WebKit::WebPage::highlightPotentialActivation):
998         * WebProcess/WebPage/WebPage.h:
999         * WebProcess/WebPage/WebPage.messages.in:
1000
1001 2012-03-19  Alexander Færøy  <alexander.faeroy@nokia.com>
1002
1003         [Qt] Add experimental API for dynamically changing the UA string
1004
1005         Reviewed by Simon Hausmann.
1006
1007         This patch adds a new property named userAgent to the
1008         QQuickWebViewExperimental type which allows us to dynamically change
1009         the user agent string from the QML API.
1010
1011         * UIProcess/API/qt/qquickwebview.cpp:
1012         (QQuickWebViewExperimental::userAgent):
1013         (QQuickWebViewExperimental::setUserAgent):
1014         * UIProcess/API/qt/qquickwebview_p.h:
1015
1016 2012-03-18  No'am Rosenthal  <noam.rosenthal@nokia.com>
1017
1018         [Qt][WK2] Avoid usage of manual scaling in the Qt scenegraph integration
1019         https://bugs.webkit.org/show_bug.cgi?id=81368
1020
1021         Reviewed by Simon Hausmann.
1022
1023         Moved the QtScenegraph integration classes to a separate file,
1024         QtWebPageSGNode. The nodes created for QQuickWebPage now include
1025         a QSGTransformNode that controls the contentsScale, a 
1026         QSGSimpleRectNode that controls the background color, and a
1027         QSGRenderNode subclass that renders the actual contents.
1028         * Target.pri:
1029         * UIProcess/API/qt/qquickwebpage.cpp:
1030         (QQuickWebPage::updatePaintNode):
1031         * UIProcess/qt/QtWebPageSGNode.cpp: Added.
1032         * UIProcess/qt/QtWebPageSGNode.h: Added.
1033
1034 2012-03-18  No'am Rosenthal  <noam.rosenthal@nokia.com>
1035
1036         [Qt] The background is visible for tiles inside the contents area which are not ready
1037         https://bugs.webkit.org/show_bug.cgi?id=81349
1038
1039         Reviewed by Simon Hausmann.
1040
1041         Split PageProxyNode to BackgroundSGNode and ContentsSGNode.
1042         BackgroundSGNode paints a solid background, either white or transparent
1043         (depending on drawsTransparentBackground flag).
1044
1045         * UIProcess/API/qt/qquickwebpage.cpp:
1046         (ContentsSGNode):
1047         (ContentsSGNode::ContentsSGNode):
1048         (ContentsSGNode::changedStates):
1049         (ContentsSGNode::~ContentsSGNode):
1050         (BackgroundSGNode):
1051         (BackgroundSGNode::BackgroundSGNode):
1052         (BackgroundSGNode::contentsNode):
1053         (QQuickWebPage::updatePaintNode):
1054
1055 2012-03-17  Joe Thomas  <joethomas@motorola.com>
1056
1057         move calc*Value functions out from Length (and platform)
1058         https://bugs.webkit.org/show_bug.cgi?id=80897
1059
1060         Moving the Length calc*Value functions out from Length structure and also from /WebCore/platform/ folder.
1061         This helps to avoid the layering violation while length calculation. Otherwise layer violation can be avoided only by adding a virtual interface(bug 27160).
1062
1063         Reviewed by Antti Koivisto.
1064
1065         * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
1066         (WebKit::WebPopupMenu::setUpPlatformData):
1067
1068 2012-03-17  Dan Bernstein  <mitz@apple.com>
1069
1070         <rdar://problem/10263562> Crash in WebCore::Range::startPosition() when dismissing the Press and Hold panel by clicking in the menu bar
1071         https://bugs.webkit.org/show_bug.cgi?id=81454
1072
1073         Reviewed by Ada Chan.
1074
1075         When the Press and Hold panel is dismissed by clicking in the menu bar,
1076         -insertText:replacementRange: is called with an NSRange whose location is NSNotFound - 1
1077         (see <rdar://problem/11069374>). Trying to convert this bogus range to a WebCore Range
1078         returns 0, which leads to the crash.
1079
1080         * WebProcess/WebPage/mac/WebPageMac.mm:
1081         (WebKit::WebPage::insertText): Added a null check, to protect the code from bogus ranges.
1082
1083 2012-03-16  Stephanie Lewis  <slewis@apple.com>
1084
1085         https://bugs.webkit.org/show_bug.cgi?id=81065
1086         <rdar://problem/10944309> CrashTracer: [USER] 111 crashes in WebProcess at WebKitTestRunnerInjectedBundle: WTR::InjectedBundle::done + 142
1087         Add some string function exports to Windows so the WebKitTestRunner can use them.
1088
1089         Reviewed by Geoff Garen.
1090
1091         * win/WebKit2.def:
1092
1093 2012-03-16  Brady Eidson  <beidson@apple.com>
1094
1095         <rdar://problem/11027997> and https://bugs.webkit.org/show_bug.cgi?id=81412
1096         REGRESSION (r107435) Copy a link and paste to Mail: Nothing is pasted
1097
1098         Reviewed by Geoff Garen.
1099
1100         Add new message so the WebProcess can ask the UIProcesses pasteboard for the URL:
1101         * UIProcess/WebContext.h:
1102         * UIProcess/WebContext.messages.in:
1103         * UIProcess/mac/WebContextMac.mm:
1104         (WebKit::WebContext::getPasteboardURL):
1105
1106         Use that new message to implement the pasteboard strategy:
1107         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1108         (WebKit::WebPlatformStrategies::url):
1109         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1110         (WebPlatformStrategies):
1111
1112 2012-03-16  Alexey Proskuryakov  <ap@apple.com>
1113
1114         ASSERTION FAILED: m_loadState == LoadStateCommitted in WebFrameProxy::didFinishLoad causing
1115         "crashes" on Lion Intel Debug WebKit2 Tests
1116         https://bugs.webkit.org/show_bug.cgi?id=81184
1117         <rdar://problem/11052462>
1118
1119         Rubber-stamped by Anders Carlsson.
1120
1121         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::finishedLoading):
1122         Don't leave a lingering m_pluginView after load is finished. When plug-in data was empty,
1123         we would create the plug-in here, but failed to finalize the load.
1124
1125 2012-03-08  Jer Noble  <jer.noble@apple.com>
1126
1127         Support W3C Full Screen API proposal
1128         https://bugs.webkit.org/show_bug.cgi?id=80660
1129
1130         Reviewed by Alexey Proskuryakov.
1131
1132         Allow full screen elements to access the keyboard.
1133
1134         * UIProcess/WebFullScreenManagerProxy.cpp:
1135         (WebKit::WebFullScreenManagerProxy::supportsFullScreen):
1136         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1137         (WebKit::WebFullScreenManager::exitFullScreenForElement):
1138
1139 2012-03-16  Andras Becsi  <andras.becsi@nokia.com>
1140
1141         [Qt][WK2] Fix bounce-back behaviour for panning
1142         https://bugs.webkit.org/show_bug.cgi?id=81144
1143
1144         Reviewed by Kenneth Rohde Christiansen.
1145
1146         If the pan gesture recognizer receives a touch begin event
1147         during an ongoing kinetic scroll animation of a previous
1148         pan gesture, the animation is stopped and the content is
1149         immediately positioned back to valid boundaries.
1150
1151         * UIProcess/qt/QtPanGestureRecognizer.cpp:
1152         (WebKit::QtPanGestureRecognizer::recognize):
1153         * UIProcess/qt/QtViewportInteractionEngine.cpp:
1154         (WebKit::QtViewportInteractionEngine::cancelScrollAnimation):
1155         (WebKit):
1156         * UIProcess/qt/QtViewportInteractionEngine.h:
1157         (QtViewportInteractionEngine):
1158
1159 2012-03-16  Dinu Jacob  <dinu.jacob@nokia.com>
1160
1161         [Qt][Wk2] Assertion Failure and crash on file upload
1162         https://bugs.webkit.org/show_bug.cgi?id=80854
1163
1164         Reviewed by Simon Hausmann.
1165
1166         Crash resulted from attempting to create QFileDialog, a QtWidget based dialog from a 
1167         QGuiApplication. Replace QFileDialog with a QML implementable component.
1168         Added a new property 'filePicker' to WebView experimental to set the QML component for
1169         file upload triggered by an input file element.
1170
1171         Co-authored with Kasthuri Nallappasoundararajan <kasthuri.n-s@nokia.com>
1172
1173         * UIProcess/API/qt/qquickwebview.cpp:
1174         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1175         (QQuickWebViewPrivate::chooseFiles):
1176         (QQuickWebViewExperimental::filePicker):
1177         (QQuickWebViewExperimental::setFilePicker):
1178         * UIProcess/API/qt/qquickwebview_p.h:
1179         * UIProcess/API/qt/qquickwebview_p_p.h:
1180         (QQuickWebViewPrivate):
1181         * UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
1182         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_singleFileUpload.qml: Added.
1183         * UIProcess/API/qt/tests/qmltests/common/singlefileupload.html: Added.
1184         * UIProcess/qt/QtDialogRunner.cpp:
1185         (FilePickerContextObject):
1186         (FilePickerContextObject::FilePickerContextObject):
1187         (FilePickerContextObject::fileList):
1188         (FilePickerContextObject::reject):
1189         (FilePickerContextObject::accept):
1190         (QtDialogRunner::initForFilePicker):
1191         * UIProcess/qt/QtDialogRunner.h:
1192         (QtDialogRunner):
1193         (QtDialogRunner::filePaths):
1194         (QtDialogRunner::onFileSelected):
1195
1196 2012-03-16  Dinu Jacob  <dinu.jacob@nokia.com>
1197
1198         [Qt][WK2] Build failure when using --no-touch-events
1199         https://bugs.webkit.org/show_bug.cgi?id=81241
1200
1201         Reviewed by Simon Hausmann.
1202
1203         Fixed inconsistency in the use of ENABLE_TOUCH_EVENTS flag that caused build
1204         failure when using --no-touch-events option
1205
1206         * UIProcess/qt/QtPageClient.h:
1207         (QtPageClient):
1208         * UIProcess/qt/QtWebPageEventHandler.cpp:
1209         (QtWebPageEventHandler::handlePotentialSingleTapEvent):
1210         * UIProcess/qt/QtWebPageEventHandler.h:
1211         (QtWebPageEventHandler):
1212         * WebProcess/WebPage/WebPage.cpp:
1213         (WebKit::WebPage::WebPage):
1214         * WebProcess/WebPage/WebPage.h:
1215         (WebPage):
1216         * WebProcess/WebPage/WebPage.messages.in:
1217
1218 2012-03-16  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1219
1220         Merge setVisibleContentsForScaling with setVisibleContentsRectForPanning
1221         https://bugs.webkit.org/show_bug.cgi?id=81346
1222
1223         Reviewed by Simon Hausmann.
1224
1225         This cleans up the code path and is one step on the way to avoid
1226         calling both methods in succession, for instance after ending pinch
1227         zoom.
1228
1229         * UIProcess/API/qt/qquickwebview.cpp:
1230         (QQuickWebViewLegacyPrivate::updateViewportSize):
1231         (QQuickWebViewFlickablePrivate::_q_commitScaleChange):
1232         (QQuickWebViewPrivate::_q_commitPositionChange):
1233         * UIProcess/DrawingAreaProxy.h:
1234         (WebKit::DrawingAreaProxy::setVisibleContentsRect):
1235         * UIProcess/DrawingAreaProxyImpl.cpp:
1236         (WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
1237         * UIProcess/DrawingAreaProxyImpl.h:
1238         (DrawingAreaProxyImpl):
1239         * UIProcess/LayerTreeHostProxy.cpp:
1240         (WebKit::LayerTreeHostProxy::setVisibleContentsRect):
1241         * UIProcess/LayerTreeHostProxy.h:
1242         (LayerTreeHostProxy):
1243         * UIProcess/WebLayerTreeRenderer.cpp:
1244         (WebKit::WebLayerTreeRenderer::setVisibleContentsRect):
1245         * UIProcess/WebLayerTreeRenderer.h:
1246         (WebLayerTreeRenderer):
1247         * WebProcess/WebPage/LayerTreeHost.h:
1248         (WebKit::LayerTreeHost::setVisibleContentsRect):
1249         * WebProcess/WebPage/LayerTreeHost.messages.in:
1250         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
1251         (WebKit::LayerTreeHostQt::setVisibleContentsRect):
1252         * WebProcess/WebPage/qt/LayerTreeHostQt.h:
1253         (LayerTreeHostQt):
1254
1255 2012-03-16  YoungTaeck Song  <youngtaeck.song@samsung.com>
1256
1257         [EFL][WK2] Add ProcessLauncherEfl.cpp
1258         https://bugs.webkit.org/show_bug.cgi?id=75464
1259
1260         Reviewed by Hajime Morita.
1261
1262         Add first version of ProcessLauncherEfl.cpp including launchProcess() and terminateProcess().
1263
1264         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp: Added.
1265         (WebKit::ProcessLauncher::launchProcess):
1266         (WebKit::ProcessLauncher::terminateProcess):
1267         (WebKit::ProcessLauncher::platformInvalidate):
1268
1269 2012-03-15  Anders Carlsson  <andersca@apple.com>
1270
1271         Try to fix the Snow Leopard build.
1272
1273         * UIProcess/API/mac/PDFViewController.mm:
1274         (WebKit::PDFViewController::pdfKitBundle):
1275
1276 2012-03-07  Jon Lee  <jonlee@apple.com>
1277
1278         Move NotificationContents into Notification
1279         https://bugs.webkit.org/show_bug.cgi?id=80487
1280         <rdar://problem/10965519>
1281
1282         Reviewed by Jian Li.
1283
1284         * UIProcess/Notifications/WebNotificationManagerProxy.cpp: Remove extraneous include.
1285         * WebProcess/Notifications/WebNotificationManager.cpp:
1286         (WebKit::WebNotificationManager::show): Refactor to use accessor methods on Notification.
1287
1288 2012-03-15  Brent Fulgham  <bfulgham@webkit.org>
1289
1290         Unreviewed build correction. WinCairo export definitions
1291         file was not updated when the main Apple file was changed.
1292
1293         * win/WebKit2CFLite.def: Revise export declarations to match
1294         new symbol names.
1295
1296 2012-03-15  Anders Carlsson  <andersca@apple.com>
1297
1298         REGRESSION(r107168?): Assertion failures under pageContainsAnyHorizontalScrollbars causing multiple "crashes" on the Lion Intel Debug WebKit2 testers
1299         https://bugs.webkit.org/show_bug.cgi?id=81162
1300         <rdar://problem/11050423>
1301
1302         Reviewed by Beth Dakin and Jessie Berlin.
1303
1304         Downgrade the ASSERT to a simple if check since scrollableArea->isOnActivePage() can return false when layout happens during page transitions.
1305
1306         * WebProcess/WebPage/WebPage.cpp:
1307         (WebKit::pageContainsAnyHorizontalScrollbars):
1308
1309 2012-03-15  David Hyatt  <hyatt@apple.com>
1310
1311         https://bugs.webkit.org/show_bug.cgi?id=81258
1312
1313         Add a preference for enabling the new multi-column layout code that will be based on regions.
1314
1315         Reviewed by Beth Dakin.
1316
1317         * Shared/WebPreferencesStore.h:
1318         (WebKit):
1319         * UIProcess/API/C/WKPreferences.cpp:
1320         (WKPreferencesSetRegionBasedColumnsEnabled):
1321         (WKPreferencesGetRegionBasedColumnsEnabled):
1322         * UIProcess/API/C/WKPreferencesPrivate.h:
1323         * WebProcess/WebPage/WebPage.cpp:
1324         (WebKit::WebPage::updatePreferences):
1325
1326 2012-03-14  Anders Carlsson  <andersca@apple.com>
1327
1328         Can't swipe to go back/forward when the current page is a PDF document
1329         https://bugs.webkit.org/show_bug.cgi?id=81194
1330         <rdar://problem/6954125>
1331
1332         Reviewed by Sam Weinig.
1333
1334         Override -[PDFViewScrollView scrollWheel:] and have the new implementation call
1335         -[WKPDFView forwardScrollWheelEvent:] when the PDF is pinned to either the left or right side.
1336         WKPDFView will then call PDFController::forwardScrollWheelEvent which checks if we can go back or forward,
1337         and passes the event along to the WKView which ends up triggering the swiping machinery in Safari.
1338
1339         * UIProcess/API/mac/PDFViewController.h:
1340         * UIProcess/API/mac/PDFViewController.mm:
1341         (-[WKPDFView forwardScrollWheelEvent:]):
1342         (WebKit):
1343         (WebKit::PDFViewController::forwardScrollWheelEvent):
1344         (WebKit::findEnclosingWKPDFView):
1345         (WebKit::PDFViewScrollView_scrollWheel):
1346         (WebKit::PDFViewController::pdfKitBundle):
1347         * UIProcess/WebPageProxy.cpp:
1348         (WebKit::WebPageProxy::didCommitLoadForFrame):
1349
1350 2012-03-15  Brady Eidson  <beidson@apple.com>
1351
1352         <rdar://problem/11036900> and https://bugs.webkit.org/show_bug.cgi?id=81079
1353         REGRESSION(r107844): Clipboard API only remembers most recent data set on clipboard
1354
1355         Reviewed by Sam Weinig.
1356
1357         Add the non-destructive "addTypes" to supplement the destructive "setTypes"
1358
1359         * UIProcess/WebContext.h:
1360         * UIProcess/WebContext.messages.in:
1361         * UIProcess/mac/WebContextMac.mm:
1362         (WebKit::WebContext::addPasteboardTypes):
1363
1364         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1365         (WebKit::WebPlatformStrategies::addTypes):
1366         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1367
1368 2012-03-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1369
1370         [GTK] Implement unicode submenu items
1371         https://bugs.webkit.org/show_bug.cgi?id=81117
1372
1373         Reviewed by Martin Robinson.
1374
1375         * WebProcess/WebCoreSupport/WebEditorClient.h:
1376         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
1377         (WebKit::WebEditorClient::shouldShowUnicodeMenu): Implement
1378         shouldShowUnicodeMenu() returning always true. When ContextMenu
1379         API is implemented for GTK+ the UI process will decide whether to
1380         show the unicode menu or not.
1381
1382 2012-03-15  Andras Becsi  <andras.becsi@nokia.com>
1383
1384         [Qt][WK2] Fix bounce-back behaviour for panning
1385         https://bugs.webkit.org/show_bug.cgi?id=81144
1386
1387         Reviewed by Kenneth Rohde Christiansen.
1388
1389         Move the content back to boundaries immediately
1390         in response to a tap gesture during the bounce-back
1391         animation after panning.
1392
1393         * UIProcess/qt/QtPanGestureRecognizer.cpp:
1394         (WebKit::QtPanGestureRecognizer::recognize):
1395         * UIProcess/qt/QtViewportInteractionEngine.h:
1396         Make the ensureContentWithinViewportBoundary function public.
1397         (QtViewportInteractionEngine):
1398
1399 2012-03-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1400
1401         [WK2] WebPageProxy::activeURL should return unreachableURL() when it's not empty
1402         https://bugs.webkit.org/show_bug.cgi?id=75465
1403
1404         Reviewed by Philippe Normand.
1405
1406         * UIProcess/API/gtk/tests/WebViewTest.cpp:
1407         (WebViewTest::replaceContent): Return the main frame
1408         unreachableURL if it's not empty.
1409         * UIProcess/WebPageProxy.cpp:
1410         (WebKit::WebPageProxy::activeURL):
1411
1412 2012-03-14  Anders Carlsson  <andersca@apple.com>
1413
1414         java/java-and-plugins.html test failing
1415         https://bugs.webkit.org/show_bug.cgi?id=81188
1416         <rdar://problem/11048657>
1417
1418         Reviewed by Sam Weinig.
1419
1420         When we're marshaling NPObjects that wrap plug-in objects, make sure to check that the
1421         current plug-in instance is the same as the plug-in instance the object came from and don't
1422         pass the unwrapped object ID if that is the case.
1423
1424         * Shared/Plugins/NPRemoteObjectMap.cpp:
1425         (WebKit::remoteNPObjectID):
1426         (WebKit::NPRemoteObjectMap::npVariantToNPVariantData):
1427
1428 2012-03-14  Matt Falkenhagen  <falken@chromium.org>
1429
1430         Allow per-script font settings to be specified in layout tests
1431         https://bugs.webkit.org/show_bug.cgi?id=78184
1432
1433         Reviewed by Hajime Morita.
1434
1435         This adds per-script font settings to InternalSettings, so it can be used in layout tests instead of
1436         the per-script font settings support in DumpRenderTree overridePreference, which has only been implemented
1437         for Chromium so far.
1438
1439         * win/WebKit2.def: Added symbols.
1440         * win/WebKit2CFLite.def: Added symbols.
1441
1442 2012-03-14  Michael Saboff  <msaboff@apple.com>
1443
1444         REGRESSION(r110383): ASSERTION failures in JSCell::finishCreation causing multiple tests to "crash" on the Lion Intel Debug Bots
1445         https://bugs.webkit.org/show_bug.cgi?id=80993
1446
1447         Reviewed by Mark Rowe.
1448
1449         Moved $(BUILT_PRODUCTS_DIR)/usr/local/include to the front of HEADER_SEARCH_PATH
1450         to fix builds given the wtf move.
1451
1452         * Configurations/BaseTarget.xcconfig:
1453
1454 2012-03-14  Andy Estes  <aestes@apple.com>
1455
1456         Stop shadowing the argument to drawRect: with a local variable.
1457
1458         Reviewed by Sam Weinig.
1459
1460         * UIProcess/API/mac/WKView.mm:
1461         (-[WKView drawRect:]):
1462
1463 2012-03-13  Jon Lee  <jonlee@apple.com>
1464
1465         Separate NOTIFICATIONS and LEGACY_NOTIFICATIONS
1466         https://bugs.webkit.org/show_bug.cgi?id=80922
1467         <rdar://problem/11035082>
1468
1469         Reviewed by Jian Li.
1470
1471         You can include either NOTIFICATIONS or LEGACY_NOTIFICATIONS and have a complete API.
1472         LEGACY_NOTIFICATIONS should cover all of the previous functionality, and NOTIFICATIONS will cover the
1473         new API. Therefore, APIs that are common between the two will have:
1474         #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
1475
1476         This patch initially sets both to be exactly the same. As other bugs with patches begin to migrate to
1477         the new API, the defines will begin to split. This allows ports to decide which set of APIs to include.
1478
1479         Update everything to be #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
1480         * Shared/WebProcessCreationParameters.cpp:
1481         (WebKit::WebProcessCreationParameters::encode):
1482         (WebKit::WebProcessCreationParameters::decode):
1483         * Shared/WebProcessCreationParameters.h:
1484         (WebProcessCreationParameters):
1485         * UIProcess/WebContext.cpp:
1486         (WebKit::WebContext::ensureWebProcess):
1487         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
1488         (WebKit):
1489         (WebKit::NotificationPermissionRequestManager::startRequest):
1490         (WebKit::NotificationPermissionRequestManager::cancelRequest):
1491         (WebKit::NotificationPermissionRequestManager::permissionLevel):
1492         (WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision):
1493         * WebProcess/Notifications/WebNotificationManager.cpp:
1494         (WebKit):
1495         (WebKit::WebNotificationManager::initialize):
1496         (WebKit::WebNotificationManager::didUpdateNotificationDecision):
1497         (WebKit::WebNotificationManager::didRemoveNotificationDecisions):
1498         (WebKit::WebNotificationManager::policyForOrigin):
1499         (WebKit::WebNotificationManager::show):
1500         (WebKit::WebNotificationManager::cancel):
1501         (WebKit::WebNotificationManager::clearNotifications):
1502         (WebKit::WebNotificationManager::didDestroyNotification):
1503         (WebKit::WebNotificationManager::didShowNotification):
1504         (WebKit::WebNotificationManager::didClickNotification):
1505         (WebKit::WebNotificationManager::didCloseNotifications):
1506         * WebProcess/Notifications/WebNotificationManager.h:
1507         (WebNotificationManager):
1508         * WebProcess/WebCoreSupport/WebNotificationClient.cpp:
1509         * WebProcess/WebCoreSupport/WebNotificationClient.h:
1510         * WebProcess/WebPage/WebPage.cpp:
1511         (WebKit::WebPage::WebPage):
1512         (WebKit::WebPage::updatePreferences):
1513         * WebProcess/WebProcess.cpp:
1514         (WebKit::WebProcess::WebProcess):
1515         (WebKit::WebProcess::didReceiveMessage):
1516         * WebProcess/WebProcess.h:
1517         (WebProcess):
1518         * WebProcess/mac/WebProcessMac.mm:
1519         (WebKit::WebProcess::platformInitializeWebProcess):
1520
1521 2012-03-14  Dinu Jacob  <dinu.jacob@nokia.com>
1522
1523         [Qt][WK2] Move code common to both ProxyAuthentication and Authentication context objects into a base class
1524         https://bugs.webkit.org/show_bug.cgi?id=80627
1525
1526         Reviewed by Kenneth Rohde Christiansen.
1527
1528         No impact to QML API.
1529
1530         * UIProcess/qt/QtDialogRunner.cpp:
1531         (BaseAuthenticationContextObject):
1532         (BaseAuthenticationContextObject::BaseAuthenticationContextObject):
1533         (HttpAuthenticationDialogContextObject):
1534         (HttpAuthenticationDialogContextObject::HttpAuthenticationDialogContextObject):
1535         (HttpAuthenticationDialogContextObject::realm):
1536         (ProxyAuthenticationDialogContextObject):
1537         (ProxyAuthenticationDialogContextObject::ProxyAuthenticationDialogContextObject):
1538         (QtDialogRunner::initForAuthentication):
1539
1540 2012-03-14  Anders Carlsson  <andersca@apple.com>
1541
1542         With tiled drawing enabled, clicking a link to a PDF causes a cross-fade
1543         https://bugs.webkit.org/show_bug.cgi?id=79247
1544         <rdar://problem/10910808>
1545
1546         Reviewed by Sam Weinig.
1547
1548         Instead of creating a new CALayer for the WKView when we're in tiled mode, re-use the existing layer that AppKit makes for us.
1549         This way, we won't get any implicit animations when we change layer properties (such as sublayers in this case).
1550
1551         * UIProcess/API/mac/WKView.mm:
1552         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
1553         (-[WKView wantsUpdateLayer]):
1554         (-[WKView updateLayer]):
1555
1556 2012-03-14  Alexey Proskuryakov  <ap@apple.com>
1557
1558         WebProcess sometimes hits an assertion in SandboxExtensionTracker::didCommitProvisionalLoad after running regression tests
1559         https://bugs.webkit.org/show_bug.cgi?id=81150
1560         <rdar://problem/11002254>
1561
1562         Reviewed by Anders Carlsson.
1563
1564         * WebProcess/WebPage/WebPage.cpp:
1565         (WebKit::WebPage::SandboxExtensionTracker::didCommitProvisionalLoad):
1566         (WebKit::WebPage::SandboxExtensionTracker::didFailProvisionalLoad):
1567         It's not great, but for now we need to handle this case. Hopefully, some day we'll make
1568         both WebKit2 processes better aware of what's going on with loading in WebCore.
1569
1570 2012-03-14  Anders Carlsson  <andersca@apple.com>
1571
1572         Fix UI process crash when a plug-in process crashes with a modal dialog showing
1573         https://bugs.webkit.org/show_bug.cgi?id=81139
1574         <rdar://problem/9641197>
1575
1576         Reviewed by Dan Bernstein.
1577
1578         When a plug-in process crashes, its corresponding PluginProcessProxy object is deleted immediately,
1579         which is bad if we're currently running a nested run loop.
1580
1581         Fix this by making PluginProcessProxy ref-counted and protecting it before the call to -[NSApp runModalForWindow:].
1582
1583         * UIProcess/Plugins/PluginProcessManager.cpp:
1584         (WebKit::PluginProcessManager::pluginProcessWithPath):
1585         (WebKit::PluginProcessManager::getOrCreatePluginProcess):
1586         * UIProcess/Plugins/PluginProcessManager.h:
1587         (PluginProcessManager):
1588         * UIProcess/Plugins/PluginProcessProxy.cpp:
1589         (WebKit::PluginProcessProxy::create):
1590         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
1591         * UIProcess/Plugins/PluginProcessProxy.h:
1592         (PluginProcessProxy):
1593         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
1594         (WebKit::PluginProcessProxy::setModalWindowIsShowing):
1595         (WebKit::PluginProcessProxy::beginModal):
1596
1597 2012-03-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1598
1599         [GTK] Handle printing errors in WebKit2
1600         https://bugs.webkit.org/show_bug.cgi?id=77197
1601
1602         Reviewed by Gustavo Noronha Silva.
1603
1604         * UIProcess/API/gtk/WebKitError.cpp:
1605         (webkit_print_error_quark): Add new error domain for print
1606         errors.
1607         * UIProcess/API/gtk/WebKitError.h: Ad print errors.
1608         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
1609         (webkit_print_operation_class_init): Add
1610         WebKitPrintOperation::failed signal.
1611         (drawPagesForPrintingCompleted): Emit WebKitPrintOperation::failed
1612         when the print operation failed with the given error.
1613         (webkitPrintOperationPrintPagesForFrame): Use
1614         PrintFinishedCallback instead of a VoidCallback.
1615         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
1616         * UIProcess/API/gtk/tests/TestPrinting.cpp:
1617         (testPrintOperationPrint):
1618         (testPrintOperationErrors): Test different print errors are
1619         correctly reported.
1620         (beforeAll):
1621         * UIProcess/WebPageProxy.cpp:
1622         (WebKit::WebPageProxy::close): Invalidate print finished callbacks
1623         map.
1624         (WebKit::WebPageProxy::printFinishedCallback): Callback called
1625         when the print operation has finished in the web process.
1626         (WebKit::WebPageProxy::processDidCrash): Invalidate print finished
1627         callbacks map.
1628         (WebKit::WebPageProxy::drawPagesForPrinting): Use a
1629         PrintFinishedCallback instead of a VoidCallback.
1630         * UIProcess/WebPageProxy.h:
1631         (WebKit): Delcare PrintFinishedCallback as a generic callback.
1632         (WebPageProxy):
1633         * UIProcess/WebPageProxy.messages.in: Use PrintFinishedCallback
1634         instead of VoidCallback as callback argument of
1635         DrawPagesForPrinting message.
1636         * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
1637         (WebKit::PrintPagesData::PrintPagesData): Mark the data as invalid
1638         when there are no pages to print.
1639         (PrintPagesData): Add isValid parameter to mark the data struct as
1640         invalid.
1641         (WebKit::WebPrintOperationGtk::printPagesIdleDone): Call
1642         printPagesDone() instead of printDone().
1643         (WebKit::WebPrintOperationGtk::printPagesDone): Renamed.
1644         (WebKit::WebPrintOperationGtk::printDone): Notify the UI process
1645         that the print operation has finsihed.
1646         (WebKit::WebPrintOperationGtk::print): Finish the print if the
1647         PrintPagesData struct is not valid.
1648         * WebProcess/WebPage/gtk/WebPrintOperationGtk.h:
1649
1650 2012-03-13  Jer Noble  <jer.noble@apple.com>
1651
1652         Lion Intel Debug WebKit2 Tests crashing under [WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]
1653         https://bugs.webkit.org/show_bug.cgi?id=81056
1654
1655         Reviewed by Jessie Berlin.
1656
1657         Give the InjectedBundlePageFullScreenClient a first crack at beganEnterFullScreen and beganExitFullScreen:
1658         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1659         (WebKit::WebFullScreenManager::willEnterFullScreen):
1660         (WebKit::WebFullScreenManager::willExitFullScreen):
1661
1662         And call the client function if it exists; otherwise, continue to message the page:
1663         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1664         * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.cpp:
1665         (WebKit::InjectedBundlePageFullScreenClient::beganEnterFullScreen):
1666         (WebKit::InjectedBundlePageFullScreenClient::beganExitFullScreen):
1667         * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h:
1668
1669         Add a custom APIClientTraits for InjectedBundlePageFullScreenClient to handle the API number change.
1670         * Shared/APIClientTraits.cpp:
1671         * Shared/APIClientTraits.h:
1672
1673 2012-03-14  Andrey Kosyakov  <caseq@chromium.org>
1674
1675         Web Inspector: add didCancelFrame timeline event
1676         https://bugs.webkit.org/show_bug.cgi?id=80994
1677
1678         Reviewed by Pavel Feldman.
1679
1680         * win/WebKit2.def:
1681         * win/WebKit2CFLite.def:
1682
1683 2012-03-13  Anders Carlsson  <andersca@apple.com>
1684
1685         Find bouncy doesn’t hide when a subframe is scrolled
1686         https://bugs.webkit.org/show_bug.cgi?id=81060
1687         <rdar://problem/9365329>
1688
1689         Reviewed by Andreas Kling.
1690
1691         Instead of hiding the find indicator when pageDidScroll is called, add a check to FindController::drawRect and hide
1692         the find indicator there if the find selection bounds have changed since the last call to drawRect.
1693
1694         * WebProcess/WebPage/FindController.cpp:
1695         (WebKit::FindController::updateFindIndicator):
1696         (WebKit::FindController::drawRect):
1697         * WebProcess/WebPage/FindController.h:
1698         (FindController):
1699         * WebProcess/WebPage/WebPage.cpp:
1700         (WebKit::WebPage::pageDidScroll):
1701
1702 2012-03-13  Jeff Miller  <jeffm@apple.com>
1703
1704         Support loading a WKPage from web archive data
1705         https://bugs.webkit.org/show_bug.cgi?id=81044
1706
1707         This code was written by Jessie Berlin.
1708
1709         Reviewed by Brady Eidson.
1710
1711         * UIProcess/API/C/WKPage.cpp:
1712         (WKPageLoadWebArchiveData): Added.
1713         
1714         * UIProcess/API/C/WKPage.h: Added WKPageLoadWebArchiveData().
1715         
1716         * UIProcess/WebPageProxy.cpp:
1717         (WebKit::WebPageProxy::loadWebArchiveData): Added.
1718         
1719         * UIProcess/WebPageProxy.h: Added loadWebArchiveData().
1720
1721         * WebProcess/WebPage/WebPage.cpp:
1722         (WebKit::WebPage::loadWebArchiveData): Added.
1723         
1724         * WebProcess/WebPage/WebPage.h: Added loadWebArchiveData().
1725
1726         * WebProcess/WebPage/WebPage.messages.in: Added LoadWebArchiveData message.
1727
1728 2012-03-13  Adam Barth  <abarth@webkit.org> && Benjamin Poulain  <bpoulain@apple.com>
1729
1730         Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
1731         https://bugs.webkit.org/show_bug.cgi?id=78853
1732
1733         Reviewed by Adam Barth.
1734
1735         * Configurations/FeatureDefines.xcconfig:
1736         * WebProcess/Geolocation/WebGeolocationManager.cpp:
1737         (WebKit::WebGeolocationManager::registerWebPage):
1738         (WebKit::WebGeolocationManager::unregisterWebPage):
1739         (WebKit::WebGeolocationManager::didChangePosition):
1740         (WebKit::WebGeolocationManager::didFailToDeterminePosition):
1741         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1742         (WebKit::InjectedBundle::setGeoLocationPermission):
1743         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1744         (WebKit):
1745         * WebProcess/WebCoreSupport/WebChromeClient.h:
1746         (WebChromeClient):
1747         * WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
1748         * WebProcess/WebCoreSupport/WebGeolocationClient.h:
1749         * WebProcess/WebPage/WebPage.cpp:
1750         (WebKit::WebPage::WebPage):
1751         * mac/WebKit2.order:
1752
1753 2012-03-13  Max Vujovic  <mvujovic@adobe.com>
1754
1755         Add a method to window.internals to enable testing of inspector highlight rects
1756         https://bugs.webkit.org/show_bug.cgi?id=80338
1757
1758         Reviewed by Pavel Feldman.
1759
1760         * win/WebKit2.def: Export symbols for win.
1761         * win/WebKit2CFLite.def: Same as above.
1762
1763 2012-03-13  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
1764
1765         [Qt] Set correct device width and height.
1766         https://bugs.webkit.org/show_bug.cgi?id=80980
1767
1768         Reviewed by Tor Arne Vestbø.
1769
1770         * UIProcess/API/qt/qquickwebview.cpp:
1771         (QQuickWebViewFlickablePrivate::computeViewportConstraints):
1772
1773 2012-03-12  Sam Weinig  <sam@webkit.org>
1774
1775         Fix typo in PageClientImpl where we were overriding viewLayerHostingMode with
1776         a function called layerHostingMode.
1777
1778         Reviewed by Anders Carlsson.
1779
1780         * UIProcess/API/mac/PageClientImpl.h:
1781         * UIProcess/API/mac/PageClientImpl.mm:
1782         (WebKit::PageClientImpl::viewLayerHostingMode):
1783         Update name and add OVERRIDE to catch this in the future.
1784
1785 2012-03-12  Enrica Casucci  <enrica@apple.com>
1786
1787         WebKit2: remove NSPasteboard access for promised data from the WebProcess
1788         https://bugs.webkit.org/show_bug.cgi?id=80073
1789
1790         Reviewed by Alexey Proskuryakov.
1791
1792         This patch removes the last remaining access to NSPasteboard from the WebProcess.
1793         The code in WebDragClient::declareAndWriteDragImage now packages all the data
1794         required for the drag and the promised drag types and sends one request to the UI
1795         process that will place the data in the NSPasteboard when appropriate.
1796         
1797         * UIProcess/API/mac/PageClientImpl.h: Added setPromisedData method.
1798         * UIProcess/API/mac/PageClientImpl.mm:
1799         (WebKit::PageClientImpl::setPromisedData):
1800         * UIProcess/API/mac/WKView.mm:
1801         (matchesExtensionOrEquivalent): Added.
1802         (fileExists): Added.
1803         (pathWithUniqueFilenameForPath): Added.
1804         (-[WKView _setPromisedData:WebCore::withFileName:withExtension:withTitle:withURL:withVisibleURL:withArchive:WebCore::forPasteboard:]):
1805         (-[WKView pasteboardChangedOwner:]):
1806         (-[WKView pasteboard:provideDataForType:]):
1807         (-[WKView namesOfPromisedFilesDroppedAtDestination:]):
1808         * UIProcess/API/mac/WKViewInternal.h: Added _setPromisedData.
1809         * UIProcess/PageClient.h:
1810         * UIProcess/WebPageProxy.h: Added method for the new message.
1811         * UIProcess/WebPageProxy.messages.in: Added setPromisedData message.
1812         * UIProcess/mac/WebPageProxyMac.mm:
1813         (WebKit::WebPageProxy::setPromisedData):
1814         * WebProcess/WebCoreSupport/WebDragClient.cpp:
1815         * WebProcess/WebCoreSupport/WebDragClient.h:
1816         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
1817         (WebKit::WebDragClient::declareAndWriteDragImage):
1818         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1819         (InitWebCoreSystemInterface): Added SetMetadataURL.
1820
1821 2012-03-12  Andras Becsi  <andras.becsi@nokia.com>
1822
1823         [Qt][WK2] Add support for rudimentary scroll indicators in MiniBrowser
1824         https://bugs.webkit.org/show_bug.cgi?id=80832
1825
1826         Reviewed by Tor Arne Vestbø.
1827
1828         Since the ScrollDecorator QML component requires a Flickable in its API
1829         we need to expose the Flickable in QML for now and we also need to add
1830         a notifier because we instantiate the internal Flickable only when the
1831         WebView component completes construction.
1832
1833         * UIProcess/API/qt/qquickwebview.cpp:
1834         (QQuickWebViewFlickablePrivate::onComponentComplete):
1835         (QQuickWebViewExperimental::flickable):
1836         * UIProcess/API/qt/qquickwebview_p.h:
1837
1838 2012-03-11  Timothy Hatcher  <timothy@apple.com>
1839
1840         Update how the Web Inspector resources are loaded.
1841
1842         https://bugs.webkit.org/show_bug.cgi?id=80814
1843         rdar://problem/10359959
1844
1845         Reviewed by John Sullivan.
1846
1847         * Shared/WebPreferencesStore.h:
1848         (WebKit): Added InspectorUsesWebKitUserInterface.
1849         * Shared/WebProcessCreationParameters.cpp:
1850         (WebKit::WebProcessCreationParameters::encode): Removed webInspectorLocalizedStringsPath.
1851         (WebKit::WebProcessCreationParameters::decode): Ditto.
1852         * Shared/WebProcessCreationParameters.h: Ditto.
1853         (WebProcessCreationParameters): Ditto.
1854         * UIProcess/API/C/WKContext.cpp:
1855         * UIProcess/API/C/WKContextPrivate.h:
1856         * UIProcess/API/C/WKPreferences.cpp:
1857         (WKPreferencesSetInspectorUsesWebKitUserInterface): Added.
1858         (WKPreferencesGetInspectorUsesWebKitUserInterface): Added.
1859         * UIProcess/API/C/WKPreferencesPrivate.h:
1860         * UIProcess/WebContext.cpp:
1861         (WebKit::WebContext::ensureWebProcess): Removed webInspectorLocalizedStringsPath.
1862         * UIProcess/WebContext.h:
1863         (WebContext): Ditto.
1864         * UIProcess/mac/WebInspectorProxyMac.mm:
1865         (WebKit::inspectorReallyUsesWebKitUserInterface): Added.
1866         (WebKit::WebInspectorProxy::createInspectorWindow): Use inspectorReallyUsesWebKitUserInterface
1867         to determine if texture should be used.
1868         (WebKit::WebInspectorProxy::inspectorPageURL): Choose the right path.
1869         (WebKit::WebInspectorProxy::inspectorBaseURL): Ditto.
1870         * WebProcess/WebPage/WebInspector.h:
1871         * WebProcess/WebPage/mac/WebInspectorMac.mm:
1872         (WebKit::inspectorReallyUsesWebKitUserInterface):
1873         (WebKit::WebInspector::setInspectorUsesWebKitUserInterface): Added.
1874         (WebKit::WebInspector::localizedStringsURL):
1875         * WebProcess/WebPage/mac/WebPageMac.mm:
1876         (WebKit::WebPage::platformPreferencesDidChange): Call WebInspector::setInspectorUsesWebKitUserInterface.
1877         * WebProcess/mac/WebProcessMac.mm:
1878         (WebKit::WebProcess::platformInitializeWebProcess): Removed call to WebInspector::setLocalizedStringsPath.
1879
1880 2012-03-11  Andy Estes  <aestes@apple.com>
1881
1882         Remove unnecessary call to NSSizeToCGSize().
1883         https://bugs.webkit.org/show_bug.cgi?id=80817
1884
1885         Reviewed by Dan Bernstein.
1886
1887         There is no need to call NSSizeToCGSize() to convert an IntSize to a
1888         CGSize. IntSize defines a conversion function to CGSize that will do
1889         this for us implicitly.
1890
1891         * UIProcess/mac/BackingStoreMac.mm:
1892         (WebKit::BackingStore::backingStoreContext): Do not call NSSizeToCGSize().
1893
1894 2012-03-11  Dan Bernstein  <mitz@apple.com>
1895
1896         WebKit2 lacks API for obtaining a representation of the RenderLayer tree of a page, like WebRenderLayer
1897         <http://webkit.org/b/80791>
1898
1899         Reviewed by Anders Carlsson.
1900
1901         * CMakeLists.txt:
1902         * GNUmakefile.am:
1903
1904         * Shared/API/c/WKBase.h: Added a type definition of WKRenderLayerRef.
1905
1906         * Shared/API/c/WKRenderLayer.cpp: Added.
1907         (WKRenderLayerGetTypeID): Added. Returns the WKRenderLayer type ID.
1908         (WKRenderLayerCopyRendererName): Added this getter wrapper.
1909         (WKRenderLayerCopyElementTagName): Ditto.
1910         (WKRenderLayerCopyElementID): Ditto.
1911         (WKRenderLayerGetElementClassNames): Ditto.
1912         (WKRenderLayerGetAbsoluteBounds): Ditto.
1913         (WKRenderLayerIsClipping): Ditto.
1914         (WKRenderLayerIsClipped): Ditto.
1915         (WKRenderLayerIsReflection): Ditto.
1916         (WKRenderLayerGetCompositingLayerType): Ditto.
1917         (WKRenderLayerGetNegativeZOrderList): Ditto.
1918         (WKRenderLayerGetNormalFlowList): Ditto.
1919         (WKRenderLayerGetPositiveZOrderList): Ditto.
1920
1921         * Shared/API/c/WKRenderLayer.h: Added.
1922
1923         * Shared/APIObject.h: Added TypeRenderLayer to the APIObject::Type enum.
1924
1925         * Shared/UserMessageCoders.h:
1926         (WebKit::UserMessageEncoder::baseEncode): Added WebRenderLayer encoding.
1927         (WebKit::UserMessageDecoder::baseDecode): Added WebRenderLayer decoding.
1928
1929         * Shared/WebRenderLayer.cpp: Added.
1930         (WebKit::WebRenderLayer::create): Added. Creates a WebRenderLayer for the page’s main
1931         frame’s root layer.
1932         (WebKit::WebRenderLayer::createArrayFromLayerList): Added this helper function.
1933         (WebKit::WebRenderLayer::WebRenderLayer): Added. Constructs a WebRenderLayer with the
1934         renderer name, element tag, ID and class names, metrics, child lists, and compositing
1935         layer properties of the given RenderLayer.
1936
1937         * Shared/WebRenderLayer.h: Added.
1938         (WebKit::WebRenderLayer::create):
1939         (WebKit::WebRenderLayer::negativeZOrderList):
1940         (WebKit::WebRenderLayer::normalFlowList):
1941         (WebKit::WebRenderLayer::positiveZOrderList):
1942         (WebKit::WebRenderLayer::renderObjectName):
1943         (WebKit::WebRenderLayer::elementTagName):
1944         (WebKit::WebRenderLayer::elementID):
1945         (WebKit::WebRenderLayer::elementClassNames):
1946         (WebKit::WebRenderLayer::isReflection):
1947         (WebKit::WebRenderLayer::isClipping):
1948         (WebKit::WebRenderLayer::isClipped):
1949         (WebKit::WebRenderLayer::compositingLayerType):
1950         (WebKit::WebRenderLayer::absoluteBoundingBox):
1951         (WebKit::WebRenderLayer::WebRenderLayer):
1952
1953         * Target.pri
1954
1955         * UIProcess/API/C/WKAPICast.h: Added a mapping between WKRenderLayerRef and WebRenderLayer.
1956
1957         * WebKit2.xcodeproj/project.pbxproj: Added WebRenderLayer.{cpp,h} and WKRenderLayer.{cpp,h}.
1958
1959         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1960         (WKBundlePageCopyRenderLayerTree): Added this bundle API for getting the layer tree.
1961
1962         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
1963
1964         * win/WebKit2.vcproj:
1965
1966 2012-03-11  Joseph Pecoraro  <pecoraro@apple.com>
1967
1968         <http://webkit.org/b/80782> Web Inspector: Crash using released frontendClient when resizing window with closed inspector
1969
1970         The WebInspectorFrontendClient reference should be cleared when the
1971         WebInspectorClient::closeInspectorFrontend is called. This adds a
1972         destroyInspectorPage to mirror createInspectorPage and clear the weak
1973         pointers that are no longer valid.
1974
1975         Reviewed by Pavel Feldman.
1976
1977         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1978         (WebKit::WebInspectorClient::closeInspectorFrontend):
1979         (WebKit::WebInspectorClient::didResizeMainFrame):
1980         * WebProcess/WebPage/WebInspector.cpp:
1981         (WebKit::WebInspector::destroyInspectorPage):
1982         * WebProcess/WebPage/WebInspector.h:
1983
1984 2012-03-11  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
1985
1986         [Qt] [WK2] Support threaded renderer in WK2
1987         https://bugs.webkit.org/show_bug.cgi?id=76661
1988
1989         Reviewed by Noam Rosenthal.
1990
1991         Implement Qt5 threaded rendering support for Qt WebKit2.
1992         Parts of LayerTreeHostProxy which contain layer tree and layer painting objects 
1993         are moved to separate class called WebLayerTreeRenderer. WebLayerTreeRenderer is 
1994         thread safe ref counted and referenced by LayerTreeHostProxy and paint node.
1995         All layer tree and graphics objects are created, accessed and deallocated from Qt 
1996         Scenegraph's paint thread only.
1997         Layer tree updates from render queue are fetched in updatePaintNode call stack when 
1998         main thread is locked.
1999         Messages from paint thread to web process are passed through MainThreadGuardedInvoker 
2000         call gate (implemented by Noam Rosenthal and previously reviewed by Kenneth Rohde 
2001         Christiansen).
2002
2003         * Target.pri:
2004         * UIProcess/API/qt/qquickwebpage.cpp:
2005         (PageProxyNode::PageProxyNode):
2006         (PageProxyNode::render):
2007         (PageProxyNode::~PageProxyNode):
2008         (PageProxyNode::layerTreeRenderer):
2009         (PageProxyNode):
2010         (PageProxyNode::setScale):
2011         (QQuickWebPage::updatePaintNode):
2012         (QQuickWebPagePrivate::~QQuickWebPagePrivate):
2013         * UIProcess/LayerTreeHostProxy.cpp: Added.
2014         (WebKit):
2015         (WebKit::LayerTreeHostProxy::LayerTreeHostProxy):
2016         (WebKit::LayerTreeHostProxy::~LayerTreeHostProxy):
2017         (WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
2018         (WebKit::LayerTreeHostProxy::paintToGraphicsContext):
2019         (WebKit::LayerTreeHostProxy::updateViewport):
2020         (WebKit::LayerTreeHostProxy::dispatchUpdate):
2021         (WebKit::LayerTreeHostProxy::createTileForLayer):
2022         (WebKit::LayerTreeHostProxy::updateTileForLayer):
2023         (WebKit::LayerTreeHostProxy::removeTileForLayer):
2024         (WebKit::LayerTreeHostProxy::deleteCompositingLayer):
2025         (WebKit::LayerTreeHostProxy::setRootCompositingLayer):
2026         (WebKit::LayerTreeHostProxy::syncCompositingLayerState):
2027         (WebKit::LayerTreeHostProxy::didRenderFrame):
2028         (WebKit::LayerTreeHostProxy::createDirectlyCompositedImage):
2029         (WebKit::LayerTreeHostProxy::destroyDirectlyCompositedImage):
2030         (WebKit::LayerTreeHostProxy::setVisibleContentsRectForPanning):
2031         (WebKit::LayerTreeHostProxy::setVisibleContentsRectForScaling):
2032         (WebKit::LayerTreeHostProxy::renderNextFrame):
2033         (WebKit::LayerTreeHostProxy::purgeBackingStores):
2034         * UIProcess/LayerTreeHostProxy.h:
2035         (WebKit):
2036         (LayerTreeHostProxy):
2037         (WebKit::LayerTreeHostProxy::layerTreeRenderer):
2038         * UIProcess/WebLayerTreeRenderer.cpp: Renamed from Source/WebKit2/UIProcess/qt/LayerTreeHostProxyQt.cpp.
2039         (WebKit):
2040         (MainThreadGuardedInvoker):
2041         (WebKit::MainThreadGuardedInvoker::call):
2042         (WebKit::MainThreadGuardedInvoker::MainThreadGuardedInvoker):
2043         (WebKit::MainThreadGuardedInvoker::invoke):
2044         (WebKit::WebLayerTreeRenderer::callOnMainTread):
2045         (WebKit::WebLayerTreeRenderer::WebLayerTreeRenderer):
2046         (WebKit::WebLayerTreeRenderer::~WebLayerTreeRenderer):
2047         (WebKit::WebLayerTreeRenderer::createLayer):
2048         (WebKit::WebLayerTreeRenderer::paintToCurrentGLContext):
2049         (WebKit::WebLayerTreeRenderer::syncAnimations):
2050         (WebKit::WebLayerTreeRenderer::paintToGraphicsContext):
2051         (WebKit::WebLayerTreeRenderer::setVisibleContentsRectForScaling):
2052         (WebKit::WebLayerTreeRenderer::updateViewport):
2053         (WebKit::WebLayerTreeRenderer::syncLayerParameters):
2054         (WebKit::WebLayerTreeRenderer::deleteLayer):
2055         (WebKit::WebLayerTreeRenderer::ensureLayer):
2056         (WebKit::WebLayerTreeRenderer::setRootLayerID):
2057         (WebKit::WebLayerTreeRenderer::getBackingStore):
2058         (WebKit::WebLayerTreeRenderer::createTile):
2059         (WebKit::WebLayerTreeRenderer::removeTile):
2060         (WebKit::WebLayerTreeRenderer::updateTile):
2061         (WebKit::WebLayerTreeRenderer::createImage):
2062         (WebKit::WebLayerTreeRenderer::destroyImage):
2063         (WebKit::WebLayerTreeRenderer::assignImageToLayer):
2064         (WebKit::WebLayerTreeRenderer::swapBuffers):
2065         (WebKit::WebLayerTreeRenderer::flushLayerChanges):
2066         (WebKit::WebLayerTreeRenderer::renderNextFrame):
2067         (WebKit::WebLayerTreeRenderer::ensureRootLayer):
2068         (WebKit::WebLayerTreeRenderer::syncRemoteContent):
2069         (WebKit::WebLayerTreeRenderer::purgeGLResources):
2070         (WebKit::WebLayerTreeRenderer::purgeBackingStores):
2071         (WebKit::WebLayerTreeRenderer::detach):
2072         (WebKit::WebLayerTreeRenderer::appendUpdate):
2073         * UIProcess/WebLayerTreeRenderer.h: Copied from Source/WebKit2/UIProcess/LayerTreeHostProxy.h.
2074         (WebKit):
2075         (WebLayerTreeRenderer):
2076         (WebKit::WebLayerTreeRenderer::layerByID):
2077         (WebKit::WebLayerTreeRenderer::rootLayer):
2078         (WebKit::WebLayerTreeRenderer::notifyAnimationStarted):
2079         (WebKit::WebLayerTreeRenderer::notifySyncRequired):
2080         (WebKit::WebLayerTreeRenderer::showDebugBorders):
2081         (WebKit::WebLayerTreeRenderer::showRepaintCounter):
2082         (WebKit::WebLayerTreeRenderer::paintContents):
2083
2084 2012-03-09  Jon Lee  <jonlee@apple.com>
2085
2086         Rename NotificationPresenter to NotificationClient
2087         https://bugs.webkit.org/show_bug.cgi?id=80488
2088         <rdar://problem/10965558>
2089
2090         Reviewed by Kentaro Hara.
2091
2092         Refactor to use renamed WebCore::NotificationClient.
2093         * UIProcess/Notifications/WebNotificationManagerProxy.h:
2094         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
2095         (WebKit::NotificationPermissionRequestManager::startRequest):
2096         (WebKit::NotificationPermissionRequestManager::permissionLevel):
2097         * WebProcess/Notifications/NotificationPermissionRequestManager.h:
2098         (NotificationPermissionRequestManager):
2099         * WebProcess/Notifications/WebNotificationManager.cpp:
2100         (WebKit::WebNotificationManager::policyForOrigin):
2101         * WebProcess/Notifications/WebNotificationManager.h:
2102         (WebNotificationManager):
2103         * WebProcess/WebCoreSupport/WebNotificationClient.cpp:
2104         (WebKit::WebNotificationClient::checkPermission):
2105         * WebProcess/WebCoreSupport/WebNotificationClient.h:
2106         (WebNotificationClient):
2107
2108 2012-03-09  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
2109
2110         [Qt] [WK2] Shouldn't use item for clipping rect calculation in paint node.
2111         https://bugs.webkit.org/show_bug.cgi?id=80714
2112
2113         Reviewed by Noam Rosenthal.
2114
2115         Replace item based clip-rect calculation with clipping-nodes based calculation.
2116         This is required for threaded rendering, since we don't have access to the QSGItems
2117         from the render thread.
2118
2119         * UIProcess/API/qt/qquickwebpage.cpp:
2120         (QQuickWebPage::QQuickWebPage):
2121         (QQuickWebPagePrivate::paintToCurrentGLContext):
2122         (PageProxyNode::render):
2123         (PageProxyNode::clipRect):
2124         (PageProxyNode):
2125         * UIProcess/API/qt/qquickwebpage_p_p.h:
2126         (QQuickWebPagePrivate):
2127         * UIProcess/API/qt/qquickwebview.cpp:
2128         (QQuickWebView::QQuickWebView):
2129
2130 2012-03-09  Enrica Casucci  <enrica@apple.com>
2131
2132         Move WebNSURLExtras code down to WebCore.
2133         https://bugs.webkit.org/show_bug.cgi?id=80611
2134
2135         Reviewed by Alexey Proskuryakov.
2136
2137         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2138         (InitWebCoreSystemInterface):
2139
2140 2012-03-09  Jeff Miller  <jeffm@apple.com>
2141
2142         Add WKPageEndPrinting() to balance WKPageBeginPrinting()
2143         https://bugs.webkit.org/show_bug.cgi?id=80739
2144
2145         Reviewed by Dan Bernstein.
2146
2147         * UIProcess/API/C/WKPage.cpp:
2148         (WKPageEndPrinting): Added.
2149         
2150         * UIProcess/API/C/WKPagePrivate.h: Added WKPageEndPrinting().
2151
2152 2012-03-09  Emil A Eklund  <eae@chromium.org>
2153
2154         Add roundedPoint to HitTestResult and change platform code to use it
2155         https://bugs.webkit.org/show_bug.cgi?id=80715
2156
2157         Reviewed by James Robinson.
2158
2159         Change ports to use roundedPoint to avoid exposing subpixel types to
2160         platform code.
2161
2162         * WebProcess/WebPage/WebContextMenu.cpp:
2163         (WebKit::WebContextMenu::show):
2164
2165 2012-03-09  Alexey Proskuryakov  <ap@apple.com>
2166
2167         [Mac] Pass sandbox profiles through preprocessor
2168         https://bugs.webkit.org/show_bug.cgi?id=80651
2169
2170         Reviewed by Mark Rowe.
2171
2172         * DerivedSources.make: Preprocess sandbox profiles.
2173
2174         * PluginProcess/mac/com.apple.WebKit.PluginProcess.sb: Removed.
2175         * PluginProcess/mac/com.apple.WebKit.PluginProcess.sb.in: Copied from Source/WebKit2/PluginProcess/mac/com.apple.WebKit.PluginProcess.sb.
2176         * WebProcess/com.apple.WebProcess.sb: Removed.
2177         * WebProcess/com.apple.WebProcess.sb.in: Copied from Source/WebKit2/WebProcess/com.apple.WebProcess.sb.
2178         Renamed to avoid make finding the wrong original in default paths.
2179
2180         * WebKit2.xcodeproj/project.pbxproj: Copy preprocessed files to Resources, not originals.
2181         Also, changed DerivedSources target to use BaseTarget.xcconfig to have correct include paths.
2182
2183 2012-03-09  Jon Lee  <jonlee@apple.com>
2184
2185         Add support for ENABLE(LEGACY_NOTIFICATIONS)
2186         https://bugs.webkit.org/show_bug.cgi?id=80497
2187
2188         Reviewed by Adam Barth.
2189
2190         Prep for b80472: Update API for Web Notifications
2191         * Configurations/FeatureDefines.xcconfig:
2192
2193 2012-03-09  Ashod Nakashian  <ashodnakashian@yahoo.com>
2194
2195         Bash scripts should support LF endings only
2196         https://bugs.webkit.org/show_bug.cgi?id=79509
2197
2198         Reviewed by David Kilzer.
2199
2200         * win/build-generated-files.sh: Added properties svn:executable and svn:eol-style.
2201
2202 2012-03-08  Enrica Casucci  <enrica@apple.com>
2203
2204         REGRESSION (r109022): Files dragged onto input controls cannot be read due to sandbox violation.
2205         https://bugs.webkit.org/show_bug.cgi?id=80203
2206         <rdar://problem/10976643>
2207
2208         Reviewed by Alexey Proskuryakov.
2209
2210         This patch reverts a small part fo r109022, leaving access to
2211         NSPasteboard in the WebProcess when retrieving pathnames for
2212         files being dragged. This avoid the sandbox violation until we
2213         implement a mechanism to provide a sandbox extension to the WebProcess.
2214         
2215         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2216         (WebKit::WebPlatformStrategies::getPathnamesForType):
2217
2218 2012-03-09  Sheriff Bot  <webkit.review.bot@gmail.com>
2219
2220         Unreviewed, rolling out r110191, r110202, and r110279.
2221         http://trac.webkit.org/changeset/110191
2222         http://trac.webkit.org/changeset/110202
2223         http://trac.webkit.org/changeset/110279
2224         https://bugs.webkit.org/show_bug.cgi?id=80694
2225
2226         They broke !ENABLE(INSPECTOR) builds (Requested by Ossy on
2227         #webkit).
2228
2229         * win/WebKit2.def:
2230         * win/WebKit2CFLite.def:
2231
2232 2012-03-08  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2233
2234         [Qt] Use Qt's module system for install rules and depending on QtWebKit
2235
2236         Instead of rolling our own install rules we now use the same approach as
2237         every other Qt module, by loading qt_module.prf and qt_module_config.prf.
2238
2239         This ensures that we follow the same semantics as the rest of Qt on
2240         what sort of config options are enabled by default (create_cmake eg.).
2241         It also allows us to use QT += webkit instead of the workaround we had
2242         with CONFIG += qtwebkit.
2243
2244         We do however force Qt to always treat our build as a non-developer build,
2245         so the libraries will end up in the WebKit lib directory instead of the
2246         qtbase directory (as with a normal developer-build). This allows us to
2247         keep the webkit-build self-contained. If Qt is a developer build we still
2248         copy the module file manually to Qt, so that you don't have to install
2249         WebKit to make it available.
2250
2251         For non-developer builds of Qt, it is still possible to use the built
2252         WebKit libraries without having to install them, by having the variable
2253         QMAKE_EXTRA_MODULE_FORWARDS set in the project's .qmake.cache file,
2254         pointing to $WEBKITOUTUTDIR/$CONFIGURATION/modules.
2255
2256         https://bugs.webkit.org/show_bug.cgi?id=80590
2257
2258         Reviewed by Simon Hausmann.
2259
2260         * UIProcess/API/qt/tests/publicapi/publicapi.pro:
2261         * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
2262         * UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
2263         * UIProcess/API/qt/tests/qmltests/WebView.pro:
2264         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
2265         * UIProcess/API/qt/tests/qquickwebview/qquickwebview.pro:
2266         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
2267         * UIProcess/API/qt/tests/tests.pri:
2268         * UIProcess/API/qt/tests/util.cpp:
2269         * WebProcess.pro:
2270
2271 2012-03-08  No'am Rosenthal  <noam.rosenthal@nokia.com>
2272
2273         [Qt][WK2] Allow transparent WebViews
2274         https://bugs.webkit.org/show_bug.cgi?id=80608
2275
2276         Reviewed by Tor Arne Vestbø.
2277
2278         Added support for transparentBackground in QQuickWebViewExperimental.
2279         This uses the existing drawsTransparentBackground property in WebKit2.
2280         Also, changed LayerTreeHostQt to set the contentsOpaque flag when the root layer changes,
2281         otherwise the change doesn't take effect.
2282
2283         A new API test was added.
2284
2285         * UIProcess/API/qt/qquickwebview.cpp:
2286         (QQuickWebViewPrivate::setTransparentBackground):
2287         (QQuickWebViewPrivate::transparentBackground):
2288         (QQuickWebViewExperimental::transparentBackground):
2289         (QQuickWebViewExperimental::setTransparentBackground):
2290         * UIProcess/API/qt/qquickwebview_p.h:
2291         * UIProcess/API/qt/qquickwebview_p_p.h:
2292         (QQuickWebViewPrivate):
2293         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
2294         (tst_QQuickWebView):
2295         (tst_QQuickWebView::transparentWebViews):
2296         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
2297         (WebKit::LayerTreeHostQt::LayerTreeHostQt):
2298         (WebKit::LayerTreeHostQt::setRootCompositingLayer):
2299
2300 2012-03-08  Gustavo Noronha Silva  <gns@gnome.org>
2301
2302         GTK+ build fix. Only try to get the backing from the layer in when
2303         ACCELERATED_COMPOSITING is enabled.
2304
2305         Rubber-stamped by Ryosuke Niwa.
2306
2307         * WebProcess/FullScreen/WebFullScreenManager.cpp:
2308         (WebKit::screenRectOfContents):
2309
2310 2012-03-08  Ryosuke Niwa  <rniwa@webkit.org>
2311
2312         Mac build fix for micro data API.
2313
2314         * Configurations/FeatureDefines.xcconfig:
2315
2316 2012-03-08  Jer Noble  <jer.noble@apple.com>
2317
2318         Unreviewed Snow Leopard build fix.
2319
2320         On Leopard and Snow Leopard, provide an implementation for -[NSWindow convertRectToScreen:].
2321
2322         * UIProcess/mac/WKFullScreenWindowController.mm:
2323         (-[NSWindow convertRectToScreen:]):
2324
2325 2012-03-08  Jer Noble  <jer.noble@apple.com>
2326
2327         Further unreviewed build fix.
2328
2329         Add in the WebCore namespace, so that IntRect is pulled in.
2330
2331         * UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp:
2332         * UIProcess/qt/WebFullScreenManagerProxyQt.cpp:
2333         * UIProcess/win/WebFullScreenManagerProxyWin.cpp:
2334
2335 2012-03-08  Jer Noble  <jer.noble@apple.com>
2336
2337         Unreviewed build fix.
2338         
2339         Add stub implementations of beganEnterFullScreen and beganExitFullScreen
2340         to platform-specific WebFullScreenManagerProxy implementations.
2341
2342         * UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp:
2343         (WebKit::WebFullScreenManagerProxy::beganEnterFullScreen):
2344         (WebKit::WebFullScreenManagerProxy::beganExitFullScreen):
2345         * UIProcess/qt/WebFullScreenManagerProxyQt.cpp:
2346         (WebKit::WebFullScreenManagerProxy::beganEnterFullScreen):
2347         (WebKit::WebFullScreenManagerProxy::beganExitFullScreen):
2348         * UIProcess/win/WebFullScreenManagerProxyWin.cpp:
2349         (WebKit::WebFullScreenManagerProxy::beganEnterFullScreen):
2350         (WebKit::WebFullScreenManagerProxy::beganExitFullScreen):
2351
2352 2012-03-08  Jer Noble  <jer.noble@apple.com>
2353
2354         Full Screen Refactor Part 3: Animate into Full Screen mode using new animation classes.
2355         https://bugs.webkit.org/show_bug.cgi?id=78928
2356
2357         Reviewed by Anders Carlsson.
2358
2359         Boilerplate changes to WebKit2 IPC messages and supporting functions.
2360         * UIProcess/WebFullScreenManagerProxy.cpp:
2361         (WebKit::WebFullScreenManagerProxy::setAnimatingFullScreen): Added boilerplate.
2362         * UIProcess/WebFullScreenManagerProxy.h:
2363         * UIProcess/WebFullScreenManagerProxy.messages.in:
2364         * UIProcess/mac/WebFullScreenManagerProxyMac.mm:
2365         (WebKit::WebFullScreenManagerProxy::beganEnterFullScreen): Added boilerplate.
2366         (WebKit::WebFullScreenManagerProxy::beganExitFullScreen): Added boilerplate.
2367         * WebProcess/FullScreen/WebFullScreenManager.cpp:
2368         (WebKit::screenRectOfContents): Added.  Calculates the screen rect of an element's contents.
2369         (WebKit::WebFullScreenManager::enterFullScreenForElement): Use screenRectOfContents()
2370         (WebKit::WebFullScreenManager::willEnterFullScreen): Ditto. Do not set the background color. Call new BeganEnterFullScreen
2371             XPC message.
2372         (WebKit::WebFullScreenManager::didEnterFullScreen): Do not set the background color.
2373         (WebKit::WebFullScreenManager::willExitFullScreen): Use screenRectOfContents. Do not set the background color. Call new
2374             BeganExitFullScreen XPC message.
2375         (WebKit::WebFullScreenManager::didExitFullScreen): Do not set the background color.
2376         (WebKit::WebFullScreenManager::setAnimatingFullScreen): Added boilerplate.
2377         * WebProcess/FullScreen/WebFullScreenManager.h:
2378         * WebProcess/FullScreen/WebFullScreenManager.messages.in:
2379
2380         * UIProcess/mac/WKFullScreenWindowController.h:
2381         * UIProcess/mac/WKFullScreenWindowController.mm:
2382         (-[WKFullScreenWindowController cancelOperation:]): Renamed from _requestExitWithAnimation:.
2383         (-[WKFullScreenWindowController applicationDidResignActive:]): Call cancelOperation: instead
2384             of _requestExitWithAnimation.
2385         (-[WKFullScreenWindowController applicationDidChangeScreenParameters:]): Set the frame of
2386             both the full screen window and the background window.
2387         (-[WKFullScreenWindowController enterFullScreen:]): Save a rendered image of the current
2388             page to use in the placeholder.
2389         (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]): Renamed from 
2390             beganEnterFullScreenAnimation.
2391         (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): No need to swap 
2392             placeholder views here, as they were already swapped in beganEnter...:.
2393         (-[WKFullScreenWindowController exitFullScreen]):
2394         (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]): Renamed from 
2395             beganExitFullScreenAnimation.
2396         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Swap web view back into place.
2397         (-[WKFullScreenWindowController close]):
2398         (-[WKFullScreenWindowController animationDidEnd:]): Added.
2399         (createBackgroundFullscreenWindow): Added.
2400         (windowFrameFromApparentFrames): Added.
2401         (-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]): Added.
2402         (-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]): Added.
2403
2404 2012-03-08  Jer Noble  <jer.noble@apple.com>
2405
2406         Full Screen Refactor Part 2: Remove unnecessary WebKit2 APIs for Full Screen made
2407         https://bugs.webkit.org/show_bug.cgi?id=78926
2408
2409         Reviewed by John Sullivan.
2410
2411         The following functions (and also their Proxy versions) were removed completely:
2412         WebFullScreenManager::enterAcceleratedCompositingMode(const LayerTreeContext&)
2413         WebFullScreenManager::exitAcceleratedCompositingMode()
2414         WebFullScreenManager::beganEnterFullScreenAnimation()
2415         WebFullScreenManager::finishedEnterFullScreenAnimation(bool)
2416         WebFullScreenManager::beganExitFullScreenAnimation()
2417         WebFullScreenManager::finishedExitFullScreenAnimation(bool)
2418         WebFullScreenManager::getFullScreenRect(WebCore::IntRect&)
2419
2420         * UIProcess/WebFullScreenManagerProxy.cpp:
2421         * UIProcess/WebFullScreenManagerProxy.h:
2422         (WebKit::WebFullScreenManagerProxy::beginEnterFullScreenAnimation):
2423         (WebKit::WebFullScreenManagerProxy::beginExitFullScreenAnimation):
2424         (WebKit::WebFullScreenManagerProxy::disposeOfLayerClient):
2425         (WebFullScreenManagerProxy):
2426         * UIProcess/WebFullScreenManagerProxy.messages.in:
2427         * UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp:
2428         * UIProcess/mac/WebFullScreenManagerProxyMac.mm:
2429         * UIProcess/qt/WebFullScreenManagerProxyQt.cpp:
2430         * UIProcess/win/WebFullScreenManagerProxyWin.cpp:
2431         (WebKit::WebFullScreenManagerProxy::finishedExitFullScreenAnimation):
2432         * WebKit2.xcodeproj/project.pbxproj:
2433         * WebProcess/FullScreen/WebFullScreenManager.cpp:
2434         (WebKit::WebFullScreenManager::create):
2435         (WebKit::WebFullScreenManager::~WebFullScreenManager):
2436         * WebProcess/FullScreen/WebFullScreenManager.h:
2437         (WebFullScreenManager):
2438         * WebProcess/FullScreen/WebFullScreenManager.messages.in:
2439         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2440         (WebKit::WebChromeClient::exitFullScreenForElement):
2441         * WebProcess/WebCoreSupport/WebChromeClient.h:
2442         (WebChromeClient):
2443
2444         Additionally, the platform-specific WebFullScreenManager subclasses were removed, as no
2445         platform-specific implementations remained after the above functions were removed:
2446         * GNUmakefile.am:
2447         * Target.pri:
2448         * win/WebKit2.vcproj:
2449         * WebProcess/FullScreen/gtk/WebFullScreenManagerGtk.cpp: Removed.
2450         * WebProcess/FullScreen/gtk/WebFullScreenManagerGtk.h: Removed.
2451         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.h: Removed.
2452         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: Removed.
2453         * WebProcess/FullScreen/qt/WebFullScreenManagerQt.cpp: Removed.
2454         * WebProcess/FullScreen/qt/WebFullScreenManagerQt.h: Removed.
2455         * WebProcess/FullScreen/win/WebFullScreenManagerWin.cpp: Removed.
2456         * WebProcess/FullScreen/win/WebFullScreenManagerWin.h: Removed.
2457
2458 2012-03-08  Matt Lilek  <mrl@apple.com>
2459
2460         Don't enable VIDEO_TRACK on all OS X platforms
2461         https://bugs.webkit.org/show_bug.cgi?id=80635
2462
2463         Reviewed by Eric Carlson.
2464
2465         * Configurations/FeatureDefines.xcconfig:
2466
2467 2012-03-08  Max Vujovic  <mvujovic@adobe.com>
2468
2469         Add a method to window.internals to enable testing of inspector highlight rects
2470         https://bugs.webkit.org/show_bug.cgi?id=80338
2471
2472         Reviewed by Pavel Feldman.
2473
2474         * win/WebKit2.def: Export symbols for win.
2475         * win/WebKit2CFLite.def: Same as above.
2476
2477 2012-03-08  Dinu Jacob  <dinu.jacob@nokia.com>
2478
2479         [Qt WK2] Remove duplicate code related to dialog handling in QQuickWebView
2480         https://bugs.webkit.org/show_bug.cgi?id=80557
2481
2482         Reviewed by Simon Hausmann.
2483
2484         Move common code related to running QtDialogRunner into a separate function
2485  
2486         * UIProcess/API/qt/qquickwebview.cpp:
2487         (QQuickWebViewPrivate::runJavaScriptAlert):
2488         (QQuickWebViewPrivate::runJavaScriptConfirm):
2489         (QQuickWebViewPrivate::runJavaScriptPrompt):
2490         (QQuickWebViewPrivate::handleAuthenticationRequiredRequest):
2491         (QQuickWebViewPrivate::handleProxyAuthenticationRequiredRequest):
2492         (QQuickWebViewPrivate::handleCertificateVerificationRequest):
2493         (QQuickWebViewPrivate::execDialogRunner):
2494         * UIProcess/API/qt/qquickwebview_p_p.h:
2495         (QQuickWebViewPrivate):
2496
2497 2012-03-07  Dinu Jacob  <dinu.jacob@nokia.com>
2498
2499         [Qt] Authentication dialog does not work
2500         https://bugs.webkit.org/show_bug.cgi?id=79738
2501
2502         Reviewed by Simon Hausmann.
2503
2504         QQuickWebView should accept touch events only if there is
2505         no active dialog.
2506
2507         * UIProcess/API/qt/qquickwebview.cpp:
2508         (QQuickWebViewPrivate::QQuickWebViewPrivate):
2509         (QQuickWebViewPrivate::runJavaScriptAlert):
2510         (QQuickWebViewPrivate::runJavaScriptConfirm):
2511         (QQuickWebViewPrivate::runJavaScriptPrompt):
2512         (QQuickWebViewPrivate::handleAuthenticationRequiredRequest):
2513         (QQuickWebViewPrivate::handleProxyAuthenticationRequiredRequest):
2514         (QQuickWebViewPrivate::handleCertificateVerificationRequest):
2515         (QQuickWebView::touchEvent):
2516         * UIProcess/API/qt/qquickwebview_p_p.h:
2517         (QQuickWebViewPrivate):
2518
2519 2012-03-07  Dan Bernstein  <mitz@apple.com>
2520
2521         <rdar://problem/8494396> WebKit2 lacks API for obtaining a representation of the render tree of a page, like WebRenderNode
2522         https://bugs.webkit.org/show_bug.cgi?id=80230
2523
2524         Reviewed by Beth Dakin.
2525
2526         * CMakeLists.txt:
2527         * GNUmakefile.am:
2528
2529         * Shared/API/c/WKBase.h: Added a type definition of WKRenderObjectRef.
2530
2531         * Shared/API/c/WKRenderObject.cpp: Added.
2532         (WKRenderObjectGetTypeID): Added. Returns the WKRenderObject type ID.
2533         (WKRenderObjectCopyName): Added this getter wrapper.
2534         (WKRenderObjectGetAbsolutePosition): Ditto.
2535         (WKRenderObjectGetFrameRect): Ditto.
2536         (WKRenderObjectGetChildren): Ditto.
2537
2538         * Shared/API/c/WKRenderObject.h: Added.
2539
2540         * Shared/APIObject.h: Added TypeRenderObject to the APIObject::Type enum.
2541         * Shared/UserMessageCoders.h:
2542         (WebKit::UserMessageEncoder::baseEncode): Added WebRenderObject encoding.
2543         (WebKit::UserMessageDecoder::baseDecode): Added WebRenderObject decoding.
2544         * Shared/WebRenderObject.cpp: Added.
2545         (WebKit::WebRenderObject::create): Added. Creates a WebRenderObject for the page’s main
2546         frame content renderer.
2547         (WebKit::WebRenderObject::WebRenderObject): Added. Constructs a WebRenderObject with the
2548         name, metrics and children of the given RenderObject, following the rules used in WebKit1
2549         WebRenderNode. In particular, a RenderWidget representing a frame gets the frame’s content
2550         renderer as a child.
2551
2552         * Shared/WebRenderObject.h: Added.
2553         (WebKit::WebRenderObject::create):
2554         (WebKit::WebRenderObject::children):
2555         (WebKit::WebRenderObject::name):
2556         (WebKit::WebRenderObject::absolutePosition):
2557         (WebKit::WebRenderObject::frameRect):
2558         (WebKit::WebRenderObject::WebRenderObject):
2559
2560         * Target.pri:
2561
2562         * UIProcess/API/C/WKAPICast.h: Added a mapping between WKRenderObjectRef and WebRenderObject.
2563
2564         * WebKit2.xcodeproj/project.pbxproj: Added WebRenderObject.{cpp,h} and WKRenderObject.{cpp.h}.
2565
2566         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2567         (WKBundlePageCopyRenderTree): Added this bundle API for getting the render tree.
2568
2569         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
2570
2571         * win/WebKit2.vcproj:
2572
2573 2012-03-07  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2574
2575         Pinch zoom acts weirdly on nytimes.com while loading
2576         https://webkit.org/b/80508
2577
2578         Reviewed by Simon Hausmann.
2579
2580         Make sure to suspend the page while doing pinch zooming.
2581         If the page is suspended (which happens while pinch zooming)
2582         then do not send touch events to the page, even if it has
2583         listeners.
2584
2585         * UIProcess/WebPageProxy.cpp:
2586         (WebKit::WebPageProxy::handleTouchEvent):
2587         * UIProcess/qt/QtViewportInteractionEngine.cpp:
2588         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
2589
2590 2012-03-05  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2591
2592         [Qt] QWebNavigationRequest 'action' property should have an enum type instead of int
2593         https://bugs.webkit.org/show_bug.cgi?id=80164
2594
2595         Reviewed by Simon Hausmann.
2596
2597         Use the appropriate enum type instead of int. Make IgnoreRequest have a bigger
2598         value that give some room for us to put Experimental values in the middle. This
2599         way the Experimental values are in a valid range for the original enumeration. To
2600         avoid confusion, the Experimental enumeration was renamed.
2601
2602         * UIProcess/API/qt/qquickwebview_p.h:
2603         * UIProcess/API/qt/qwebnavigationrequest.cpp:
2604         (QWebNavigationRequestPrivate):
2605         (QWebNavigationRequest::setAction):
2606         (QWebNavigationRequest::action):
2607         * UIProcess/API/qt/qwebnavigationrequest_p.h:
2608         * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
2609
2610 2012-03-07  Andras Becsi  <andras.becsi@nokia.com>
2611
2612         [WK2] Make it possible to build without geolocation support
2613         https://bugs.webkit.org/show_bug.cgi?id=80426
2614
2615         Reviewed by Simon Hausmann.
2616
2617         Add missing guards.
2618
2619         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
2620         (WebKit::GeolocationPermissionRequestManagerProxy::didReceiveGeolocationPermissionDecision):
2621         * UIProcess/WebPageProxy.cpp:
2622         (WebKit::WebPageProxy::close):
2623         (WebKit::WebPageProxy::processDidCrash):
2624         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
2625         * WebProcess/WebPage/WebPage.cpp:
2626         (WebKit::WebPage::WebPage):
2627         (WebKit):
2628         * WebProcess/WebPage/WebPage.h:
2629         (WebPage):
2630         * WebProcess/WebPage/WebPage.messages.in:
2631
2632 2012-03-06  Raphael Kubo da Costa  <kubo@profusion.mobi>
2633
2634         [CMake] Make the removal of transitive library dependencies work with CMake < 2.8.7.
2635         https://bugs.webkit.org/show_bug.cgi?id=80469
2636
2637         Reviewed by Antonio Gomes.
2638
2639         * CMakeLists.txt: Manually set the LINK_INTERFACE_LIBRARIES target
2640         property on the library being created.
2641
2642 2012-03-06  Hugo Parente Lima  <hugo.lima@openbossa.org>
2643
2644         MiniBrowser --window-size 480x800 www.nytimes.com doesn't paint bottom tiles.
2645         https://bugs.webkit.org/show_bug.cgi?id=80313
2646
2647         Reviewed by Kenneth Rohde Christiansen.
2648
2649         Fix the math to get the visible rectangle and add a method to get it.
2650
2651         * UIProcess/API/qt/qquickwebview.cpp:
2652         (QQuickWebViewPrivate::visibleContentsRect):
2653         (QQuickWebViewFlickablePrivate::_q_commitScaleChange):
2654         (QQuickWebViewPrivate::_q_commitPositionChange):
2655         * UIProcess/API/qt/qquickwebview_p_p.h:
2656         (QQuickWebViewPrivate):
2657
2658 2012-03-05  Joseph Pecoraro  <pecoraro@apple.com>
2659
2660         Web Inspector: Hide dock button when not allowed to dock
2661         https://bugs.webkit.org/show_bug.cgi?id=78575
2662
2663         Reviewed by Pavel Feldman.
2664
2665         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
2666         (WebKit::WebInspectorClient::didResizeMainFrame):
2667         * WebProcess/WebCoreSupport/WebInspectorClient.h:
2668         * WebProcess/WebPage/WebInspector.cpp:
2669         (WebKit::WebInspector::updateDockingAvailability):
2670         * WebProcess/WebPage/WebInspector.h:
2671
2672 2012-03-06  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
2673
2674         [Qt] Interaction Engine suspends content during pageload.
2675         https://bugs.webkit.org/show_bug.cgi?id=80294
2676
2677         Only suspend content when viewport updates are deferred
2678         for a non-instantanious interaction.
2679
2680         Reviewed by Kenneth Rohde Christiansen.
2681
2682         * UIProcess/qt/QtViewportInteractionEngine.cpp:
2683         (WebKit::ViewportUpdateDeferrer::ViewportUpdateDeferrer):
2684         (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
2685         (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
2686         (WebKit::QtViewportInteractionEngine::flickableMoveStarted):
2687         (WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
2688         * UIProcess/qt/QtViewportInteractionEngine.h:
2689         (QtViewportInteractionEngine):
2690
2691 2012-03-06  Simon Hausmann  <simon.hausmann@nokia.com>
2692
2693         [Qt] Make QQuickWebView's url property work with a flickable webview
2694
2695         Reviewed by Tor Arne Vestbø.
2696
2697         QQuickWebViewPrivate::onComponentComplete implements the deferred url loading
2698         when the url property is set in the component instantiation. QQuickWebViewFlickablePrivate
2699         is the private sub-class used for a flickable webview, which re-implemented onComponentComplete
2700         but forgot to call the base implementation.
2701
2702         * UIProcess/API/qt/qquickwebview.cpp:
2703         (QQuickWebViewFlickablePrivate::onComponentComplete):
2704
2705 2012-03-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2706
2707         [GTK] Fix several documentation issues in WebKit2 GTK+ API
2708         https://bugs.webkit.org/show_bug.cgi?id=80281
2709
2710         Reviewed by Martin Robinson.
2711
2712         * UIProcess/API/gtk/WebKitFindController.cpp:
2713         * UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
2714         (webkit_navigation_policy_decision_class_init):
2715         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
2716         * UIProcess/API/gtk/WebKitWebView.h:
2717
2718 2012-03-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2719
2720         [GTK] Use a single signal for script dialogs in WebKit2 GTK+ API
2721         https://bugs.webkit.org/show_bug.cgi?id=80271
2722
2723         Reviewed by Martin Robinson.
2724
2725         Add a new signal WebKitWebView::script-dialog that passes a
2726         WebKitScriptDialog boxed type that can be used to build the dialog
2727         and set the responses. It simplifies the API and makes it bindings
2728         friendly.
2729
2730         * GNUmakefile.am:
2731         * UIProcess/API/gtk/WebKitScriptDialog.cpp: Added.
2732         (webkitScriptDialogCopy): Copy method for boxed type.
2733         (webkitScriptDialogFree): Free method for boxed type.
2734         (webkit_script_dialog_get_dialog_type): Return the type of dialog:
2735         alert, confirm or prompt.
2736         (webkit_script_dialog_get_message): Return the message of the dialog.
2737         (webkit_script_dialog_confirm_set_confirmed): Set whether user
2738         confirmed the dialog, for confirm dialogs.
2739         (webkit_script_dialog_prompt_get_default_text): Get the default
2740         text of prompt dialogs.
2741         (webkit_script_dialog_prompt_set_text): Set the text entered by
2742         the user, for prompt dialogs.
2743         * UIProcess/API/gtk/WebKitScriptDialog.h: Added.
2744         * UIProcess/API/gtk/WebKitScriptDialogPrivate.h: Added.
2745         * UIProcess/API/gtk/WebKitWebView.cpp:
2746         (webkitWebViewScriptDialog): Default implementation of
2747         WebKitWebView::script-dialog signal.
2748         (webkit_web_view_class_init): Add WebKitWebView::script-dialog and
2749         remove alert, confirm and propmpt.
2750         (webkitWebViewRunJavaScriptAlert): Create a WebKitScriptDialog and
2751         emit WebKitWebView::script-dialog signal.
2752         (webkitWebViewRunJavaScriptConfirm): Ditto.
2753         (webkitWebViewRunJavaScriptPrompt): Ditto.
2754         * UIProcess/API/gtk/WebKitWebView.h:
2755         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new
2756         symbols.
2757         * UIProcess/API/gtk/docs/webkit2gtk.types: Add webkit_script_dialog_get_type().
2758         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
2759         (testWebViewJavaScriptDialogs): Update javascript dialog test to
2760         use the new API.
2761         * UIProcess/API/gtk/webkit2marshal.list:
2762         * UIProcess/API/gtk/webkit2.h:
2763
2764 2012-03-05  Gavin Barraclough  <barraclough@apple.com>
2765
2766         putByIndex should throw in strict mode
2767         https://bugs.webkit.org/show_bug.cgi?id=80335
2768
2769         Reviewed by Filip Pizlo.
2770
2771         Make the MethodTable PutByIndex trap take a boolean 'shouldThrow' parameter.
2772
2773         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
2774         (WebKit::NPJSObject::setProperty):
2775
2776 2012-03-05  Joseph Pecoraro  <pecoraro@apple.com>
2777
2778         Unreviewed rollout of r109858 for restructuring.
2779
2780 2012-03-05  Joseph Pecoraro  <pecoraro@apple.com>
2781
2782         <http://webkit.org/b/78575> Web Inspector: Hide dock button when not allowed to dock
2783
2784         Reviewed by Timothy Hatcher.
2785
2786         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
2787         (WebKit::WebInspectorClient::updateDockingAvailability):
2788         * WebProcess/WebCoreSupport/WebInspectorClient.h:
2789         * WebProcess/WebPage/WebInspector.cpp:
2790         (WebKit::WebInspector::updateDockingAvailability):
2791         * WebProcess/WebPage/WebInspector.h:
2792
2793 2012-03-05  Anders Carlsson  <andersca@apple.com>
2794
2795         pinch-to-zoom and double-tap flicker when using the new scrolling model
2796         https://bugs.webkit.org/show_bug.cgi?id=80368
2797         <rdar://problem/10866221>
2798
2799         Reviewed by Sam Weinig.
2800
2801         Add a way for drawing areas to respond to callback based force repaint requests asynchronously.
2802         This is currently needed for the tiled drawing area when there might be outstanding scroll updates
2803         that are sent from the scrolling thread to the main thread and we need to ensure that they're processed
2804         before sending a message back.
2805
2806         * WebProcess/WebPage/DrawingArea.h:
2807         (WebKit::DrawingArea::forceRepaintAsync):
2808         Add new member function.
2809
2810         * WebProcess/WebPage/WebPage.cpp:
2811         (WebKit::WebPage::forceRepaint):
2812         Try forceRepaintAsync first.
2813
2814         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2815         (WebKit::forceRepaintAndSendMessage):
2816         Force the repaint and send the message.
2817
2818         (WebKit::dispatchBackToMainThread):
2819         Dispatch a call to forceRepaintAndSendMessage to the main thread.
2820
2821         (WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):
2822         Dispatch a function on the scrolling thread. Its sole purpose is to dispatch a function back to the
2823         main thread, ensuring that all previously dispatched functions have been executed.
2824
2825 2012-03-05  Enrica Casucci  <enrica@apple.com>
2826
2827         Can't type on some websites (plug-ins steal key events).
2828         <rdar://problem/10892291>
2829
2830         When the plugin is disabled, it is necessary to reset _pluginComplexTextInputIdentifier
2831         in order to return the correct input context. Failure to do so results in the inputContext
2832         method to return the plugin input context instead of the context of the browser view.
2833         
2834         Reviewed by Sam Weinig.
2835
2836         * UIProcess/API/mac/WKView.mm:
2837         (-[WKView _setPluginComplexTextInputState:]):
2838         (-[WKView _handlePluginComplexTextInputKeyDown:]):
2839
2840 2012-03-05  Anders Carlsson  <andersca@apple.com>
2841
2842         Be more aggressive about repainting page overlays
2843         https://bugs.webkit.org/show_bug.cgi?id=80336
2844         <rdar://problem/10965943>
2845
2846         Reviewed by Simon Fraser.
2847
2848         Whenever we're flushing layers and we have a page overlay, check if the main frame
2849         has scrolled or if the main frame root content layer needs to be repainted and force the
2850         overlay layer to be repainted if either of those conditions are true.
2851
2852         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2853         (TiledCoreAnimationDrawingArea):
2854         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2855         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
2856         (WebKit::TiledCoreAnimationDrawingArea::shouldRepaintPageOverlayLayer):
2857         (WebKit):
2858
2859 2012-03-05  Sam Weinig  <sam@webkit.org>
2860
2861         Add support for hosting layers in the window server in WebKit2
2862         <rdar://problem/10400246>
2863         https://bugs.webkit.org/show_bug.cgi?id=80310
2864
2865         Reviewed by Anders Carlsson.
2866
2867         This currently only works if you are using TiledCoreAnimation drawing model.
2868
2869         * Platform/mac/LayerHostingContext.h: Renamed from Source/WebKit2/Platform/mac/RemoteLayerClient.h.
2870         * Platform/mac/LayerHostingContext.mm: Renamed from Source/WebKit2/Platform/mac/RemoteLayerClient.mm.
2871         (WebKit::LayerHostingContext::createForPort):
2872         (WebKit::LayerHostingContext::LayerHostingContext):
2873         (WebKit::LayerHostingContext::createForWindowServer):
2874         (WebKit::LayerHostingContext::~LayerHostingContext):
2875         (WebKit::LayerHostingContext::setRootLayer):
2876         (WebKit::LayerHostingContext::rootLayer):
2877         (WebKit::LayerHostingContext::contextID):
2878         (WebKit::LayerHostingContext::invalidate):
2879         Renamed RemoteLayerClient to LayerHostingContext and add ability to use the window server
2880         as the remote context.
2881
2882         * PluginProcess/PluginControllerProxy.cpp:
2883         * PluginProcess/PluginControllerProxy.h:
2884         * PluginProcess/mac/PluginControllerProxyMac.mm:
2885         Update for new names.
2886
2887         * Shared/LayerTreeContext.h:
2888         Add LayerHostingMode enum.
2889
2890         * UIProcess/PageClient.h:
2891         * UIProcess/API/mac/PageClientImpl.h:
2892         * UIProcess/API/mac/PageClientImpl.mm:
2893         (WebKit::PageClientImpl::layerHostingMode):
2894         (WebKit::PageClientImpl::updateAcceleratedCompositingMode):
2895         Add PageClient access points to get the current layer hosting mode,
2896         and a hook to tell the underlying view that the layer hosting context
2897         has changed.
2898
2899         * UIProcess/API/mac/WKViewInternal.h:
2900         * UIProcess/API/mac/WKView.mm:
2901         (-[WKView _updateAcceleratedCompositingMode:WebKit::]):
2902         Implement responding to a new layer hosting context as a simple
2903         exit and re-entrance of compositing.
2904
2905         * UIProcess/DrawingAreaProxy.h:
2906         (WebKit::DrawingAreaProxy::layerHostingModeDidChange):
2907         (WebKit::DrawingAreaProxy::updateAcceleratedCompositingMode):
2908         * UIProcess/DrawingAreaProxy.messages.in:
2909         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
2910         (TiledCoreAnimationDrawingAreaProxy):
2911         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
2912         (WebKit::TiledCoreAnimationDrawingAreaProxy::layerHostingModeDidChange):
2913         (WebKit::TiledCoreAnimationDrawingAreaProxy::updateAcceleratedCompositingMode):
2914         Pipe layer hosting changes around.
2915
2916         * UIProcess/WebPageProxy.h:
2917         (WebKit::WebPageProxy::layerHostingMode):
2918         * UIProcess/WebPageProxy.cpp:
2919         (WebKit::WebPageProxy::WebPageProxy):
2920         (WebKit::WebPageProxy::viewStateDidChange):
2921         Cache the current layer hosting mode so we don't overzealously
2922         tell the WebProcess to reset its context. Re-check layer hosting
2923         mode each time we are added/removed from a window.
2924
2925         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.h:
2926         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:
2927         Update for new names.
2928
2929         * WebProcess/WebPage/DrawingArea.h:
2930         (WebKit::DrawingArea::setDeviceScaleFactor):
2931         (WebKit::DrawingArea::setLayerHostingMode):
2932         * WebProcess/WebPage/DrawingArea.messages.in:
2933         Pipe layer hosting changes around.
2934
2935         * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.h:
2936         * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm:
2937         (WebKit::LayerTreeHostCAMac::~LayerTreeHostCAMac):
2938         (WebKit::LayerTreeHostCAMac::platformInitialize):
2939         (WebKit::LayerTreeHostCAMac::invalidate):
2940         Update for new names.
2941
2942         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2943         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2944         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
2945         (WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
2946         Respond to a change in the layer hosting mode by invalidating our old context,
2947         making a new one of the right type, and informing the UIProcess of our new context.
2948
2949         * WebKit2.xcodeproj/project.pbxproj:
2950         Add new files.
2951
2952 2012-03-05  Anders Carlsson  <andersca@apple.com>
2953
2954         Always update the scroll layer position on the main thread when we have an overlay
2955         https://bugs.webkit.org/show_bug.cgi?id=80324
2956
2957         Reviewed by Sam Weinig.
2958
2959         Call setForceMainThreadScrollLayerPositionUpdates when installing and uninstalling page overlays,
2960         so we'll be able to synchronize painting between the tile cache and the page overlays.
2961
2962         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2963         (WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
2964         (WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
2965
2966 2012-03-05  Timothy Hatcher  <timothy@apple.com>
2967
2968         Change how the Web Inspector Develop menu actions work.
2969
2970         This removes the methods used by Safari's Develop menu. They can now be implemented in Safari.
2971
2972         https://webkit.org/b/80308
2973
2974         Reviewed by John Sullivan.
2975
2976         * UIProcess/API/C/mac/WKInspectorPrivateMac.h: Renamed from Source/WebKit2/UIProcess/API/C/mac/WKInspectorMac.h.
2977         * UIProcess/mac/WebInspectorProxyMac.mm:
2978         (-[WKWebInspectorProxyObjCAdapter inspectorRef]): Added.
2979         * WebKit2.xcodeproj/project.pbxproj: Renamed WKInspectorPrivateMac.h to better reflect its private nature.
2980
2981 2012-03-02  Jon Lee  <jonlee@apple.com>
2982
2983         Add support for notification replaceId in Mac WebKit and WK2
2984         https://bugs.webkit.org/show_bug.cgi?id=80206
2985         <rdar://problem/10965574>
2986
2987         Reviewed by Sam Weinig.
2988
2989         * UIProcess/API/C/WKNotification.cpp: Add WK API.
2990         (WKNotificationCopyReplaceID):
2991         * UIProcess/API/C/WKNotification.h:
2992         * UIProcess/Notifications/WebNotification.cpp:
2993         (WebKit::WebNotification::WebNotification):
2994         * UIProcess/Notifications/WebNotification.h: Add replaceID member.
2995         (WebKit::WebNotification::create):
2996         (WebKit::WebNotification::replaceID):
2997         (WebNotification):
2998         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
2999         (WebKit::WebNotificationManagerProxy::show):
3000         * UIProcess/Notifications/WebNotificationManagerProxy.h:
3001         (WebNotificationManagerProxy):
3002         * UIProcess/WebPageProxy.cpp:
3003         (WebKit::WebPageProxy::showNotification):
3004         * UIProcess/WebPageProxy.h:
3005         (WebPageProxy):
3006         * UIProcess/WebPageProxy.messages.in: Add replaceID to the showNotification message.
3007         * WebProcess/Notifications/WebNotificationManager.cpp:
3008         (WebKit::WebNotificationManager::show):
3009
3010 2012-03-05  Sheriff Bot  <webkit.review.bot@gmail.com>
3011
3012         Unreviewed, rolling out r109748.
3013         http://trac.webkit.org/changeset/109748
3014         https://bugs.webkit.org/show_bug.cgi?id=80296
3015
3016         Made some tests crash, will fix and recommit (Requested by
3017         noamr on #webkit).
3018
3019         * Target.pri:
3020         * UIProcess/API/qt/qquickwebpage.cpp:
3021         (QQuickWebPagePrivate::paintToCurrentGLContext):
3022         (PageProxyNode::PageProxyNode):
3023         (PageProxyNode):
3024         (PageProxyNode::changedStates):
3025         (PageProxyNode::render):
3026         (PageProxyNode::~PageProxyNode):
3027         (QQuickWebPage::updatePaintNode):
3028         (QQuickWebPagePrivate::updateSize):
3029         (QQuickWebPagePrivate::resetPaintNode):
3030         (QQuickWebPagePrivate::~QQuickWebPagePrivate):
3031         * UIProcess/API/qt/qquickwebpage_p_p.h:
3032         (QQuickWebPagePrivate):
3033         * UIProcess/DrawingAreaProxy.h:
3034         (WebKit):
3035         (WebKit::DrawingAreaProxy::layerTreeHostProxy):
3036         (DrawingAreaProxy):
3037         * UIProcess/DrawingAreaProxyImpl.cpp:
3038         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
3039         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
3040         * UIProcess/LayerTreeHostProxy.h:
3041         (LayerTreeHostProxy):
3042         * UIProcess/qt/LayerTreeHostProxyQt.cpp:
3043         (WebKit::LayerTreeHostProxy::syncAnimations):
3044         (WebKit::LayerTreeHostProxy::updateViewport):
3045         (WebKit::LayerTreeHostProxy::syncLayerParameters):
3046         (WebKit::LayerTreeHostProxy::flushLayerChanges):
3047         (WebKit::LayerTreeHostProxy::ensureRootLayer):
3048         (WebKit::LayerTreeHostProxy::syncRemoteContent):
3049         (WebKit::LayerTreeHostProxy::dispatchUpdate):
3050         (WebKit):
3051         (WebKit::LayerTreeHostProxy::createDirectlyCompositedImage):
3052         (WebKit::LayerTreeHostProxy::purgeGLResources):
3053         * UIProcess/qt/QtWebPageSGNode.cpp: Removed.
3054         * UIProcess/qt/QtWebPageSGNode.h: Removed.
3055
3056 2012-03-05  Joone Hur  <joone.hur@collabora.co.uk>
3057
3058         [GTK] zlib link error with --enable-webkit2
3059         https://bugs.webkit.org/show_bug.cgi?id=79877
3060
3061         Reviewed by Martin Robinson.
3062
3063         zlib should be linked properly.
3064
3065         * GNUmakefile.am: Link $(ZLIB_LIBS) with libwebkit2gtk instead of
3066         linking it with WebKitWebProcess.
3067
3068 2012-03-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3069
3070         [WK2] WKPageGetContextMenuFromProposedContextMenuCallback should pass a HitTestResult
3071         https://bugs.webkit.org/show_bug.cgi?id=77208
3072
3073         Reviewed by Anders Carlsson.
3074
3075         A HitTestResultData is now passed to ShowContextMenu WebPageProxy
3076         message instead of the ContextMenuState. ContextMenu client has
3077         been updated to pass the HitTestResult to the
3078         getContextMenuFromProposedMenu callback.
3079
3080         * GNUmakefile.am: Remove ContextMenuState.h.
3081         * Shared/APIClientTraits.h:
3082         * Shared/ContextMenuState.h: Removed.
3083         * Shared/WebHitTestResult.h:
3084         (WebKit::WebHitTestResult::Data::Data): Add constructor that takes
3085         a WebCore::HitTestResult.
3086         * UIProcess/API/C/WKPage.h: Add HitTestResult parameter to
3087         getContextMenuFromProposedMenu callback and deprecate the old
3088         version.
3089         * UIProcess/WebPageContextMenuClient.cpp:
3090         (WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
3091         Pass a HitTestResult to getContextMenuFromProposedMenu or use the
3092         deprecated one if client version is an old one.
3093         * UIProcess/WebPageContextMenuClient.h:
3094         * UIProcess/WebPageProxy.cpp:
3095         (WebKit::WebPageProxy::showContextMenu):
3096         (WebKit::WebPageProxy::internalShowContextMenu): Save the
3097         WebHitTestResult::Data to use it for handling context menu actions.
3098         (WebKit::WebPageProxy::contextMenuItemSelected): Use the saved
3099         WebHitTestResult::Data.
3100         * UIProcess/WebPageProxy.h:
3101         * UIProcess/WebPageProxy.messages.in:
3102         * WebKit2.xcodeproj/project.pbxproj: Remove ContextMenuState.h.
3103         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3104         (WebKit::WebChromeClient::mouseDidMoveOverElement): Use the new
3105         WebHitTestResult::Data constructor that takes a WebCore::HitTestResult.
3106         * WebProcess/WebPage/WebContextMenu.cpp:
3107         (WebKit::WebContextMenu::show): Create a WebHitTestResult::Data
3108         instead of a ContextMenuState and pass it to ShowContextMenu message.
3109         * win/WebKit2.vcproj: ContextMenuState.h.
3110
3111 2012-03-05  No'am Rosenthal  <noam.rosenthal@nokia.com>
3112
3113         [Qt] [WK2] Support threaded renderer in WK2
3114         https://bugs.webkit.org/show_bug.cgi?id=76661
3115
3116         Made the appropriate fixes in the UI process code to make rendering thread-safe.
3117         - Separated the scenegraph node code to QtWebPageSGNode. QtWebPageSGNode has direct access
3118           to LayerTreeHostProxy.
3119
3120         - Each function in LayerTreeHostProxy can be either called from the main thread (handling
3121           messages from the web process), or from the renderer thread (handling the GL context).
3122           The render-queue is locked with a mutex, and messages back to the web process are sent
3123           via callOnMainThread.
3124
3125         - LayerTreeHostProxy is now ThreadSafeRefCounted. That is done to make sure that the GL
3126           resources it creates are only freed when the QtWebPageSGNode is deleted, which can be
3127           before or after the owning DrawingAreaProxy is deleted. This ensures that the class is
3128           deleted only after its GL resources are freed, otherwise those resources may leak.
3129
3130         Based on a patch by Viatcheslav Ostapenko.
3131
3132         Reviewed by Kenneth Rohde Christiansen.
3133
3134         * Target.pri: Added new files.
3135         * UIProcess/API/qt/qquickwebpage.cpp: Moved QtWebPageSGNode out.
3136         (QQuickWebPage::updatePaintNode): Call QtWebPageSGNode
3137         (QQuickWebPagePrivate::updateSize): Call QtWebPageSGNode
3138         (QQuickWebPagePrivate::didDeleteSGWebPageNode): Override QtWebPageSGNode::Client
3139         (QQuickWebPagePrivate::~QQuickWebPagePrivate):
3140         * UIProcess/API/qt/qquickwebpage_p_p.h:
3141         (QQuickWebPagePrivate):
3142         * UIProcess/DrawingAreaProxy.h:
3143         (WebKit):
3144         (WebKit::DrawingAreaProxy::layerTreeHostProxy): Made LayerTreeHostProxy ref-counted.
3145         (DrawingAreaProxy):
3146         * UIProcess/DrawingAreaProxyImpl.cpp:
3147         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
3148         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
3149         * UIProcess/LayerTreeHostProxy.h:
3150         (WebKit):
3151         (WebKit::LayerTreeHostProxy::create):
3152         (LayerTreeHostProxy):
3153         * UIProcess/qt/LayerTreeHostProxyQt.cpp:
3154         (WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
3155         (WebKit):
3156         (MainThreadGuardedInvoker):
3157             A class that allows invoking functions in the main thread, while guarding a ref-
3158             counted object.
3159
3160         (WebKit::MainThreadGuardedInvoker::call):
3161         (WebKit::MainThreadGuardedInvoker::MainThreadGuardedInvoker):
3162         (WebKit::MainThreadGuardedInvoker::invoke):
3163         (WebKit::LayerTreeHostProxy::syncAnimations):
3164         (WebKit::LayerTreeHostProxy::updateViewport):
3165         (WebKit::LayerTreeHostProxy::detachDrawingArea):
3166         (WebKit::LayerTreeHostProxy::syncLayerParameters):
3167         (WebKit::LayerTreeHostProxy::setShouldRenderNextFrame):
3168         (WebKit::LayerTreeHostProxy::flushLayerChanges):
3169         (WebKit::LayerTreeHostProxy::ensureRootLayer):
3170         (WebKit::LayerTreeHostProxy::syncRemoteContent):
3171         (WebKit::LayerTreeHostProxy::dispatchUpdate):
3172         (WebKit::LayerTreeHostProxy::createDirectlyCompositedImage):
3173         (WebKit::LayerTreeHostProxy::purgeGLResources):
3174         * UIProcess/qt/QtWebPageSGNode.cpp: Added.
3175         * UIProcess/qt/QtWebPageSGNode.h: Added.
3176
3177 2012-03-04  Raphael Kubo da Costa  <kubo@profusion.mobi>
3178
3179         [CMake] Libraries are installed to /usr/lib and not /usr/lib64 on x86_64
3180         https://bugs.webkit.org/show_bug.cgi?id=71507
3181
3182         Reviewed by Antonio Gomes.
3183
3184         * CMakeLists.txt: Use ${LIB_INSTALL_DIR} instead of hardcoding "lib".
3185
3186 2012-03-03  Simon Hausmann  <simon.hausmann@nokia.com>
3187
3188         [Qt] Fix static_libs_as_shared build
3189         https://bugs.webkit.org/show_bug.cgi?id=80214
3190
3191         Reviewed by Tor Arne Vestbø.
3192
3193         Replace (static) link time dependency to WK1 with entrypoint
3194         in the separate WebProcess for activating the QStyle theme if
3195         necessary.
3196
3197         * Target.pri:
3198         * UIProcess/Launcher/ProcessLauncher.h:
3199         * WebProcess/qt/WebProcessMainQt.cpp:
3200         (WebKit::WebProcessMainQt):
3201         * qt/MainQt.cpp:
3202         (WebKit):
3203         (main):
3204
3205 2012-03-03  Hans Wennborg  <hans@chromium.org>
3206
3207         Implement Speech JavaScript API
3208         https://bugs.webkit.org/show_bug.cgi?id=80019
3209
3210         Reviewed by Adam Barth.
3211
3212         Add ENABLE_SCRIPTED_SPEECH.
3213
3214         * Configurations/FeatureDefines.xcconfig:
3215
3216 2012-03-03  No'am Rosenthal  <noam.rosenthal@nokia.com>
3217
3218         [Qt] Use the existing inheritedOpacity/matrix properties of QSGNode
3219         https://bugs.webkit.org/show_bug.cgi?id=79543
3220
3221         Use QSGNode::inheritedOpacity() and QSGNode::matrix().
3222         Also, remove flags from changedStates() that we don't actually touch.
3223         This is covered by existing API tests.
3224
3225         Reviewed by Kenneth Rohde Christiansen.
3226
3227         * UIProcess/API/qt/qquickwebpage.cpp:
3228         (QQuickWebPagePrivate::paintToCurrentGLContext):
3229         (PageProxyNode::changedStates):
3230         (PageProxyNode::render):
3231         * UIProcess/API/qt/qquickwebpage_p_p.h:
3232         (QQuickWebPagePrivate):
3233
3234 2012-03-03  Anders Carlsson  <andersca@apple.com>
3235
3236         Fix build with newer versions of clang.
3237
3238         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
3239         (WebKit::NPN_GetValue):
3240         Cast the switch parameter to unsigned to prevent warnings about case values not being part of the enum type.
3241
3242 2012-03-02  Andy Estes  <aestes@apple.com>
3243
3244         Move nsStringFromWebCoreString out of PageClientImpl
3245         https://bugs.webkit.org/show_bug.cgi?id=80202
3246
3247         Reviewed by Sam Weinig.
3248
3249         nsStringFromWebCoreString() doesn't really belong in PageClientImpl.mm,
3250         and it makes us include PageClientImpl.h in places where we shouldn't.
3251         Move this function into StringUtilities.{h, mm}.
3252
3253         * Platform/mac/StringUtilities.h: Added.
3254         * Platform/mac/StringUtilities.mm: Added.
3255         (WebKit::nsStringFromWebCoreString):
3256         * UIProcess/API/mac/PageClientImpl.h:
3257         * UIProcess/API/mac/PageClientImpl.mm:
3258         * UIProcess/API/mac/WKView.mm:
3259         * UIProcess/mac/WebContextMenuProxyMac.mm:
3260         * UIProcess/mac/WebPageProxyMac.mm:
3261         * UIProcess/mac/WebPopupMenuProxyMac.mm:
3262         * UIProcess/mac/WebPreferencesMac.mm:
3263         * WebKit2.xcodeproj/project.pbxproj:
3264
3265 2012-03-02  Andy Estes  <aestes@apple.com>
3266
3267         Remove com.apple.WebKit.PluginProcess.sb from WebKit2.xcodeproj's Headers build phase
3268         https://bugs.webkit.org/show_bug.cgi?id=80197
3269
3270         Reviewed by Alexey Proskuryakov.
3271
3272         It doesn't belong there, and it makes Xcode consider the project to be
3273         invalid, triggering assertions in some builds of Xcode.
3274
3275         * WebKit2.xcodeproj/project.pbxproj:
3276
3277 2012-03-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3278
3279         [Qt] Fix spelling mistake in header guard
3280
3281         Reviewed by Noam Rosenthal.
3282
3283         * UIProcess/API/qt/qwebviewportinfo_p.h:
3284
3285 2012-03-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3286
3287         [GTK] Invalid check in webkit_web_view_set_zoom_level() when zoom-text-only is enabled
3288         https://bugs.webkit.org/show_bug.cgi?id=80150
3289
3290         Reviewed by Philippe Normand.
3291
3292         * UIProcess/API/gtk/WebKitWebView.cpp:
3293         (webkit_web_view_set_zoom_level): Use
3294         webkit_web_view_get_zoom_level() instead of
3295         WKPageGetPageZoomFactor() to get the current effective zoom level
3296         depending on zoom-text-only setting.
3297
3298 2012-03-02  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
3299
3300         Fix build on AppleWebKit after 109548.
3301
3302         * mac/WebKit2.order:
3303
3304 2012-03-02  Simon Hausmann  <simon.hausmann@nokia.com>
3305
3306         [Qt] Fix tests run with WTR not using QStyle theme
3307         https://bugs.webkit.org/show_bug.cgi?id=80147
3308
3309         Reviewed by Csaba Osztrogonác.
3310
3311         Use an environment variable (set by WTR) to select the QStyle theme.
3312         This is a temporary kludge until we rebase the layout tests to use the
3313         QStyle independent "mobile" theme. This also temporarily breaks the
3314         force_static_libs_as_shared build.
3315
3316         * Target.pri:
3317         * WebProcess/qt/WebProcessMainQt.cpp:
3318         (WebKit::WebProcessMainQt):
3319
3320 2012-03-02  Simon Hausmann  <simon.hausmann@nokia.com>
3321
3322         [Qt] Compile WebCore without QtWidgets
3323         https://bugs.webkit.org/show_bug.cgi?id=80141
3324
3325         Reviewed by Tor Arne Vestbø.
3326
3327         * Shared/qt/WebEventFactoryQt.cpp: Removed unnecessary include.
3328         * Target.pri: Require widgets for WK2 for the moment, until bug #79458
3329         is fixed.
3330
3331 2012-03-02  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
3332
3333         Suspend/Resume API for pausing timers and animations.
3334         https://bugs.webkit.org/show_bug.cgi?id=76063
3335
3336         Based on the initial work of Zalan Bujtas <zalan.bujtas@nokia.com>,
3337
3338         Adds suspend and resume API for WebKit2 and uses it in Qt to
3339         suspend animations and DOM timers during panning and zoom.
3340
3341         Reviewed by Kenneth Rohde Christiansen.
3342
3343         * UIProcess/API/qt/qquickwebview.cpp:
3344         (QQuickWebViewFlickablePrivate::_q_suspend):
3345         (QQuickWebViewFlickablePrivate::_q_resume):
3346         * UIProcess/WebPageProxy.cpp:
3347         (WebKit::WebPageProxy::WebPageProxy):
3348         (WebKit::WebPageProxy::resumeActiveDOMObjectsAndAnimations):
3349         (WebKit::WebPageProxy::suspendActiveDOMObjectsAndAnimations):
3350         (WebKit::WebPageProxy::processDidCrash):
3351         * UIProcess/WebPageProxy.h:
3352         * WebProcess/WebPage/WebPage.cpp:
3353         (WebKit::WebPage::suspendActiveDOMObjectsAndAnimations):
3354         (WebKit::WebPage::resumeActiveDOMObjectsAndAnimations):
3355         * WebProcess/WebPage/WebPage.h:
3356         * WebProcess/WebPage/WebPage.messages.in:
3357
3358 2012-03-02  Joone Hur  <joone.hur@collabora.co.uk>
3359
3360         Unreviewed. Fix WebKit2 GTK+ build.
3361
3362         * GNUmakefile.am: allow WebKitWebProcess to link with zlib properly.
3363
3364 2012-03-01  Andras Becsi  <andras.becsi@nokia.com>
3365
3366         [Qt][WK2] Make the interaction with the Flickable work on the N9
3367         https://bugs.webkit.org/show_bug.cgi?id=80029
3368
3369         Reviewed by Simon Hausmann.
3370
3371         Because the WebView item accepts all touch events it receives and sends
3372         them to the web process before propagating them to the gesture recognizers,
3373         which is correct behaviour, we can not rely on the touch->mouse conversion
3374         of Qt5 when controlling Flickable. Hence we need to convert the received
3375         touch events to mouse events in the QtFlickProvider.
3376
3377         * UIProcess/qt/QtFlickProvider.cpp:
3378         (QtFlickProvider::handleTouchFlickEvent):
3379         Do the touch to mouse event conversion for the Flickable.
3380         * UIProcess/qt/QtPanGestureRecognizer.cpp:
3381         (WebKit::QtPanGestureRecognizer::recognize):
3382         A touch begin event should cancel the previous pan gesture
3383         and stop the ongoing flick animation.
3384
3385 2012-03-01  Anders Carlsson  <andersca@apple.com>
3386
3387         Assertion failure in pageContainsAnyHorizontalScrollbars() (scrollableArea->isOnActivePage()) when leaving pages with embedded PDFs
3388         https://bugs.webkit.org/show_bug.cgi?id=80044
3389         <rdar://problem/10919940>
3390
3391         Reviewed by Brady Eidson.
3392
3393         Remove the code that would add and remove wheel event handlers since that's not what we want to track.
3394         Instead, dynamically add and remove the view as its scrollbars come and go.
3395
3396         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
3397         (WebKit::BuiltInPDFView::updateScrollbars):
3398         (WebKit::BuiltInPDFView::initialize):
3399         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
3400         (BuiltInPDFView):
3401
3402 2012-03-01  Kangil Han  <kangil.han@samsung.com>
3403
3404         [DRT] Remove all PlainTextController usages in existing tests by adding internal API
3405         https://bugs.webkit.org/show_bug.cgi?id=78570
3406
3407         Reviewed by Hajime Morita.
3408
3409         This patch will remove all PlainTextController usages
3410         in existing DRT tests by adding internal API to WebCore/testing/Internals
3411
3412         * win/WebKit2.def:
3413         * win/WebKit2CFLite.def:
3414
3415 2012-03-01  Nikolas Zimmermann  <nzimmermann@rim.com>
3416
3417         Unreviewed, rolling out r109255.
3418         http://trac.webkit.org/changeset/109255
3419         https://bugs.webkit.org/show_bug.cgi?id=79932
3420
3421         Breaks rounded rects with dashed strokes in SVG
3422
3423         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
3424         (InitWebCoreSystemInterface):
3425
3426 2012-03-01  Sergio Villar Senin  <svillar@igalia.com>
3427
3428         [WK2] [GTK] [libsoup] SoupSession should use system CA
3429         https://bugs.webkit.org/show_bug.cgi?id=79657
3430
3431         Reviewed by Martin Robinson.
3432
3433         SoupSession sould use system CA list to validate SSL
3434         certificates. Do not use strict certificate validation though as
3435         we want clients to decide whether or not accept/decline invalid
3436         certificates (API to be added later).
3437
3438         No new tests required as current behaviour does not change at all
3439         as we continue to accept invalid certificates by default.
3440
3441         * WebProcess/gtk/WebProcessMainGtk.cpp:
3442         (WebKit::WebProcessMainGtk):
3443
3444 2012-03-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3445
3446         Unreviewed. Fix WebKit2 GTK+ build.
3447
3448         * UIProcess/API/gtk/WebKitDefines.h:
3449         * UIProcess/API/gtk/WebKitWebView.h:
3450
3451 2012-02-29  Simon Hausmann  <simon.hausmann@nokia.com>
3452
3453         [Qt][WK2] QQuickWebView::event should lookup faster which events QQuickWebPage can handle
3454         https://bugs.webkit.org/show_bug.cgi?id=78047
3455
3456         Reviewed by Kenneth Rohde Christiansen.
3457
3458         Replaced double-dispatch of events with direct forwarding of events from QQuickWebView::*Event to
3459         QtWebPageEventHandler::handle*Event.
3460
3461         * UIProcess/API/qt/qquickwebview.cpp:
3462         (QQuickWebView::keyPressEvent):
3463         (QQuickWebView::keyReleaseEvent):
3464         (QQuickWebView::inputMethodEvent):
3465         (QQuickWebView::focusInEvent):
3466         (QQuickWebView::focusOutEvent):
3467         (QQuickWebView::touchEvent):
3468         (QQuickWebView::mousePressEvent):
3469         (QQuickWebView::mouseMoveEvent):
3470         (QQuickWebView::mouseReleaseEvent):
3471         (QQuickWebView::mouseDoubleClickEvent):
3472         (QQuickWebView::wheelEvent):
3473         (QQuickWebView::hoverEnterEvent):
3474         (QQuickWebView::hoverMoveEvent):
3475         (QQuickWebView::hoverLeaveEvent):
3476         (QQuickWebView::dragMoveEvent):
3477         (QQuickWebView::dragEnterEvent):
3478         (QQuickWebView::dragLeaveEvent):
3479         (QQuickWebView::dropEvent):
3480         (QQuickWebView::event):
3481         * UIProcess/qt/QtWebPageEventHandler.cpp:
3482         (QtWebPageEventHandler::handleMouseMoveEvent):
3483         (QtWebPageEventHandler::handleMousePressEvent):
3484         (QtWebPageEventHandler::handleMouseReleaseEvent):
3485         (QtWebPageEventHandler::handleWheelEvent):
3486         (QtWebPageEventHandler::handleHoverLeaveEvent):
3487         (QtWebPageEventHandler::handleHoverMoveEvent):
3488         (QtWebPageEventHandler::handleDragEnterEvent):
3489         (QtWebPageEventHandler::handleDragLeaveEvent):
3490         (QtWebPageEventHandler::handleDragMoveEvent):
3491         (QtWebPageEventHandler::handleDropEvent):
3492         (QtWebPageEventHandler::handleKeyPressEvent):
3493         (QtWebPageEventHandler::handleKeyReleaseEvent):
3494         (QtWebPageEventHandler::handleFocusInEvent):
3495         (QtWebPageEventHandler::handleFocusOutEvent):
3496         (QtWebPageEventHandler::handleInputMethodEvent