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