When page scaling is in use position:fixed has incorrect results
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2011-12-02  Fady Samuel  <fsamuel@chromium.org>
2
3         When page scaling is in use position:fixed has incorrect results
4         https://bugs.webkit.org/show_bug.cgi?id=68617
5
6         Reviewed by Simon Fraser.
7
8         * win/WebKit2.def:
9         * win/WebKit2CFLite.def:
10
11 2011-12-02  Alexey Proskuryakov  <ap@apple.com>
12
13         Update sandbox rules
14         https://bugs.webkit.org/show_bug.cgi?id=73675
15         <rdar://problem/9276430>
16
17         Reviewed by Sam Weinig.
18
19         * WebProcess/com.apple.WebProcess.sb:
20
21 2011-12-02  Andy Estes  <aestes@apple.com>
22
23         WebKit2: Freeze the state of the layer tree until frame load completion if incremental rendering is suppressed
24         https://bugs.webkit.org/show_bug.cgi?id=73641
25
26         Reviewed by Darin Adler.
27
28         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
29         (WebKit::WebFrameLoaderClient::dispatchDidFirstLayout): Do not
30         un-freeze the layer tree state if incremental rendering is suppressed.
31         * WebProcess/WebPage/DrawingArea.h:
32         (WebKit::DrawingArea::layerTreeStateIsFrozen): Add a getter for
33         m_layerTreeStateIsFrozen.
34         * WebProcess/WebPage/DrawingAreaImpl.h:
35         (WebKit::DrawingAreaImpl::layerTreeStateIsFrozen): Ditto.
36         * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
37         (WebKit::LayerTreeHostCA::initialize): WebFrameLoaderClient might have
38         tried to freeze the state of the layer tree before the layer tree host
39         was created. When creating the layer tree host, only schedule a layer
40         flush if the layer tree state isn't frozen.
41
42 2011-12-02  Nayan Kumar K  <nayankk@motorola.com>
43
44         [WebKit2][gtk] Add 'enable-dns-prefetching' property to WebKitSettings
45         https://bugs.webkit.org/show_bug.cgi?id=73414
46
47         Reviewed by Martin Robinson.
48
49         * UIProcess/API/gtk/WebKitSettings.cpp:
50         (webKitSettingsSetProperty): Add new set function.
51         (webKitSettingsGetProperty): Add new get function.
52         (webkit_settings_class_init): Register new property.
53         (webkit_settings_get_enable_dns_prefetching): API to get 'enable-dns-prefetching' property.
54         (webkit_settings_set_enable_dns_prefetching): API to set 'enable-dns-prefetching' property.
55         * UIProcess/API/gtk/WebKitSettings.h: Expose new public API's.
56         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new APIs to gtk-doc sections file.
57         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
58         (testWebKitSettings): Add new tests.
59
60 2011-12-02  Andras Becsi  <andras.becsi@nokia.com>
61
62         [Qt][WK2] Set event timestamps on custom input events
63
64         Reviewed by Simon Hausmann.
65
66         Since r101791 WebEventFactoryQt uses input event timestamps for WebEvents,
67         thus set the timestamp on the custom events as well.
68
69         * UIProcess/qt/QtWebPageEventHandler.cpp:
70         (QtWebPageEventHandler::handleHoverLeaveEvent):
71         (QtWebPageEventHandler::handleHoverMoveEvent):
72         * UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:
73         (WebKit::WebPopupMenuProxyQtDesktop::showPopupMenu):
74
75 2011-12-02  Andras Becsi  <andras.becsi@nokia.com>
76
77         [Qt] [WK2] Use input event timestamps in WebEvents if available
78         https://bugs.webkit.org/show_bug.cgi?id=73647
79
80         Reviewed by Simon Hausmann.
81
82         Qt5 input events already have a native timestamp, use this timestamp
83         in WebEventFactory instead of WTF::currentTime if it is available.
84
85         * Shared/qt/WebEventFactoryQt.cpp:
86         (WebKit::currentTimeForEvent):
87         (WebKit::WebEventFactory::createWebMouseEvent):
88         (WebKit::WebEventFactory::createWebWheelEvent):
89         (WebKit::WebEventFactory::createWebKeyboardEvent):
90         (WebKit::WebEventFactory::createWebTouchEvent):
91         * Shared/qt/WebEventFactoryQt.h:
92
93 2011-12-02  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
94
95         [Qt][WK2] Split the QtWebPageProxy into PageClient and QtPageProxy
96         https://bugs.webkit.org/show_bug.cgi?id=66668
97
98         Reviewed by Simon Hausmann.
99
100         Split QtPageClient out of QtWebPageProxy.
101         This client will live in QQuickWebViewPrivate and communicate directly
102         with QtWebPageProxy and QtWebPageEventHandler. The functions that need
103         anything else than these entities will need to call the proper implementation
104         through QtWebPageProxy itself.
105         With this we have a clear separation between PageClient and PageProxy, having
106         two well defined and separated entities for hooking our clients with our API layer (QtWebPageProxy)
107         and for hooking the WebPageProxy with our client implementations (QtPageClient).
108         As a positive side-effect we have a cleaner QtWebPageProxy.
109
110         * Target.pri:
111         * UIProcess/API/qt/qquickwebview.cpp:
112         (QQuickWebViewPrivate::QQuickWebViewPrivate):
113         * UIProcess/API/qt/qquickwebview_p_p.h:
114         * UIProcess/qt/QtPageClient.cpp: Added.
115         (QtPageClient::QtPageClient):
116         (QtPageClient::~QtPageClient):
117         (QtPageClient::createDrawingAreaProxy):
118         (QtPageClient::setViewNeedsDisplay):
119         (QtPageClient::pageDidRequestScroll):
120         (QtPageClient::processDidCrash):
121         (QtPageClient::didRelaunchProcess):
122         (QtPageClient::didChangeContentsSize):
123         (QtPageClient::didChangeViewportProperties):
124         (QtPageClient::startDrag):
125         (QtPageClient::handleDownloadRequest):
126         (QtPageClient::setCursor):
127         (QtPageClient::setCursorHiddenUntilMouseMoves):
128         (QtPageClient::toolTipChanged):
129         (QtPageClient::registerEditCommand):
130         (QtPageClient::clearAllEditCommands):
131         (QtPageClient::canUndoRedo):
132         (QtPageClient::executeUndoRedo):
133         (QtPageClient::convertToDeviceSpace):
134         (QtPageClient::convertToUserSpace):
135         (QtPageClient::screenToWindow):
136         (QtPageClient::windowToScreen):
137         (QtPageClient::createPopupMenuProxy):
138         (QtPageClient::createContextMenuProxy):
139         (QtPageClient::flashBackingStoreUpdates):
140         (QtPageClient::didFindZoomableArea):
141         (QtPageClient::didReceiveMessageFromNavigatorQtObject):
142         (QtPageClient::doneWithTouchEvent):
143         (QtPageClient::displayView):
144         (QtPageClient::scrollView):
145         (QtPageClient::viewSize):
146         (QtPageClient::isViewWindowActive):
147         (QtPageClient::isViewFocused):
148         (QtPageClient::isViewVisible):
149         (QtPageClient::isViewInWindow):
150         (QtPageClient::enterAcceleratedCompositingMode):
151         (QtPageClient::exitAcceleratedCompositingMode):
152         * UIProcess/qt/QtPageClient.h: Added.
153         (QtPageClient::pageClosed):
154         (QtPageClient::doneWithKeyEvent):
155         (QtPageClient::setFindIndicator):
156         (QtPageClient::didCommitLoadForMainFrame):
157         (QtPageClient::didFinishLoadingDataForCustomRepresentation):
158         (QtPageClient::customRepresentationZoomFactor):
159         (QtPageClient::setCustomRepresentationZoomFactor):
160         (QtPageClient::didChangeScrollbarsForMainFrame):
161         (QtPageClient::findStringInCustomRepresentation):
162         (QtPageClient::countStringMatchesInCustomRepresentation):
163         (QtPageClient::setEventHandler):
164         (QtPageClient::setPageProxy):
165         * UIProcess/qt/QtWebPageProxy.cpp:
166         (QtWebPageProxy::QtWebPageProxy):
167         * UIProcess/qt/QtWebPageProxy.h:
168
169 2011-12-02  Kenneth Rohde Christiansen  <kenneth@webkit.org>
170
171         [Qt] Do not apply the transition state before we are unsuspended
172
173         Reviewed by Simon Hausmann.
174
175         Also remove an accessor in the private, which is unneeded as
176         everything in the private class is supposed to be public or
177         only used by the private itself.
178
179         * UIProcess/API/qt/qquickwebview.cpp:
180         (QQuickWebViewPrivate::QQuickWebViewPrivate):
181         (QQuickWebViewPrivate::loadDidCommit):
182         (QQuickWebViewPrivate::didFinishFirstNonEmptyLayout):
183         (QQuickWebViewPrivate::_q_suspend):
184         (QQuickWebViewPrivate::_q_resume):
185         (QQuickWebViewPrivate::didChangeContentsSize):
186         (QQuickWebViewPrivate::didChangeViewportProperties):
187         * UIProcess/API/qt/qquickwebview_p_p.h:
188
189 2011-12-02  Kenneth Rohde Christiansen  <kenneth@webkit.org>
190
191         Unreviewed buildfix, add missing include.
192
193         * WebProcess/Notifications/WebNotificationManager.cpp:
194
195 2011-12-02  Hajime Morrita  <morrita@chromium.org>
196
197         Unreviewed, rolling out r101751 and r101775.
198         http://trac.webkit.org/changeset/101751
199         http://trac.webkit.org/changeset/101775
200         https://bugs.webkit.org/show_bug.cgi?id=73191
201
202         breaks Windows build
203
204         * config.h:
205
206 2011-12-02  Carlos Garcia Campos  <cgarcia@igalia.com>
207
208         Unreviewed. Fix GTK+ build after r101750.
209
210         * GNUmakefile.am: Add missing files.
211
212 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
213
214         Unreviewed. GTK+ build fix.
215
216         * GNUmakefile.am:
217
218 2011-12-02  Zalan Bujtas  <zbujtas@gmail.com>
219
220         [Qt][WK2] ASSERT at QQuickWebViewPrivate::computeViewportConstraints() when API test is exercising zero sized views.
221         https://bugs.webkit.org/show_bug.cgi?id=73441
222
223         Do not assert on empty available size, but return default constrain values instead.
224
225         Reviewed by Kenneth Rohde Christiansen.
226
227         * UIProcess/API/qt/qquickwebview.cpp:
228         (QQuickWebViewPrivate::computeViewportConstraints):
229         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
230         (WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):
231
232 2011-12-01  Hajime Morrita  <morrita@chromium.org>
233
234         JS_INLINE and WTF_INLINE should be visible from WebCore
235         https://bugs.webkit.org/show_bug.cgi?id=73191
236
237         Reviewed by Kevin Ollivier.
238
239         Removed macro definitions which is now provided by Platform.h
240
241         * config.h:
242
243 2011-12-01  Jon Lee  <jonlee@apple.com>
244
245         [WK2] Add further support for notifications
246         https://bugs.webkit.org/show_bug.cgi?id=73572
247         <rdar://problem/10472195>
248
249         Reviewed by Darin Adler.
250
251         * WebProcess/Notifications/WebNotificationManager.messages.in: Added. Contains messages for callbacks
252         from the notification platform.
253
254         * DerivedSources.make: Add WebNotificationManager.
255         * DerivedSources.pri: Ditto.
256         * Platform/CoreIPC/MessageID.h: Add message class.
257         * WebProcess/WebProcess.cpp:
258         (WebKit::WebProcess::didReceiveMessage): Forward calls to WebNotificationManager when needed.
259         * WebKit2.xcodeproj/project.pbxproj: Add new message files.
260         * win/WebKit2.vcproj: Adding new files to project.
261         * win/WebKit2Common.vsprops: Add Notifications to include paths
262
263         * UIProcess/WebNotification.h: Add and expose internal ID of each notification sent to the platform.
264         (WebKit::WebNotification::create):
265         (WebKit::WebNotification::notificationID):
266         (WebKit::isNotificationIDValid): Checks that the ID is not a value that might trip up the HashMaps used
267         for mapping IDs to notifications.
268         * UIProcess/WebNotification.cpp:
269         (WebKit::WebNotification::WebNotification):
270         (WebKit::WebNotification::encode):
271         (WebKit::WebNotification::decode):
272         * UIProcess/API/C/WKNotification.h: Expose notification ID to WKAPI.
273         * UIProcess/API/C/WKNotification.cpp:
274         (WKNotificationGetNotificationID):
275
276         * UIProcess/WebNotificationManagerProxy.h: Add callbacks for dispatching events back to the notification.
277         * UIProcess/WebNotificationManagerProxy.cpp:
278         (WebKit::WebNotificationManagerProxy::invalidate): Remove manager.
279         (WebKit::WebNotificationManagerProxy::show): Add manager prior to showing.
280         (WebKit::WebNotificationManagerProxy::cancel): Add manager prior to canceling.
281         (WebKit::WebNotificationManagerProxy::didDestroyNotification):
282         (WebKit::WebNotificationManagerProxy::providerDidShowNotification):
283         (WebKit::WebNotificationManagerProxy::providerDidClickNotification):
284         (WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):
285         * UIProcess/API/C/WKNotificationManager.h:
286         * UIProcess/API/C/WKNotificationManager.cpp:
287         (WKNotificationManagerProviderDidShowNotification):
288         (WKNotificationManagerProviderDidClickNotification):
289         (WKNotificationManagerProviderDidCloseNotifications):
290
291         * UIProcess/WebNotificationProvider.h:
292         * UIProcess/WebNotificationProvider.cpp:
293         (WebKit::WebNotificationProvider::show):
294         (WebKit::WebNotificationProvider::cancel):
295         (WebKit::WebNotificationProvider::didDestroyNotification):
296         (WebKit::WebNotificationProvider::addNotificationManager):
297         (WebKit::WebNotificationProvider::removeNotificationManager):
298         * UIProcess/API/C/WKNotificationProvider.h: Expose add/removeNotificationManager calls
299
300         * WebProcess/Notifications/WebNotificationManager.h: Add bookkeeping to keep track of notification IDs with
301         Notification instances.
302         * WebProcess/Notifications/WebNotificationManager.cpp:
303         (WebKit::generateNotificationID):
304         (WebKit::WebNotificationManager::didReceiveMessage):
305         (WebKit::WebNotificationManager::show):
306         (WebKit::WebNotificationManager::cancel):
307         (WebKit::WebNotificationManager::didDestroyNotification):
308         (WebKit::WebNotificationManager::didShowNotification):
309         (WebKit::WebNotificationManager::didClickNotification):
310         (WebKit::WebNotificationManager::didCloseNotifications):
311
312         * UIProcess/WebNotificationManagerProxy.messages.in: Add DidDestroyNotification message.
313         * WebProcess/WebCoreSupport/WebNotificationClient.cpp:
314         (WebKit::WebNotificationClient::notificationObjectDestroyed): Implemented.
315
316 2011-12-01  Goutham J  <gouthamj@motorola.com>
317
318         [WEBKIT2] Fix for compilation warnings in WebContext.cpp
319         https://bugs.webkit.org/show_bug.cgi?id=69080
320
321         Fix compilation warning in WebKit2 builds.
322
323         Reviewed by Hajime Morita.
324
325         * UIProcess/WebContext.cpp:
326         (WebKit::WebContext::processDidFinishLaunching):
327         (WebKit::WebContext::startMemorySampler):
328
329 2011-12-01  Beth Dakin  <bdakin@apple.com>
330
331         https://bugs.webkit.org/show_bug.cgi?id=73592
332         REGRESSION (r100483): Can't drag out of background window
333         -and corresponding-
334         <rdar://problem/10508870>
335
336         Reviewed by Darin Adler.
337
338         If the mouse is pressed we need to do a full, normal hit test even if the window 
339         is not active. 
340         * WebProcess/WebPage/WebPage.cpp:
341         (WebKit::WebPage::mouseEvent):
342         (WebKit::WebPage::mouseEventSyncForTesting):
343
344 2011-12-01  Martin Robinson  <mrobinson@igalia.com>
345
346         [GTK] Add a helper function to find the current executable's path
347         https://bugs.webkit.org/show_bug.cgi?id=73473
348
349         Reviewed by Gustavo Noronha Silva.
350
351         Do a series of tests when looking for processes. First search the directory
352         specified by the environment variable, then the directory of the binary and
353         then the LIBEXECDIR.
354
355         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
356         (WebKit::findWebKitProcess): Added.
357         (WebKit::ProcessLauncher::launchProcess): Call the new helper to get the
358         binary location.
359
360 2011-12-01  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
361
362         [Qt] [WK2] QQuickWebView covers QML elements that should be rendered on top.
363         https://bugs.webkit.org/show_bug.cgi?id=73338
364
365         Reviewed by Noam Rosenthal.
366
367         Move painting of QQuickWebPage content from canvas afterrendering() to
368         QSGGeometryNode/QSGMaterial based paint node. Implementation uses QSGMaterialShader
369         updateState() method to draw TextureMapper graphics layers.
370         This is considered to be temporary until QSGNode::UserNodeType will be available.
371
372         * UIProcess/API/qt/qquickwebpage.cpp:
373         (QQuickWebPage::QQuickWebPage):
374         (QQuickWebPagePrivate::QQuickWebPagePrivate):
375         (PageProxyMaterialShader::attributeNames):
376         (PageProxyMaterialShader::vertexShader):
377         (PageProxyMaterialShader::fragmentShader):
378         (PageProxyMaterial::PageProxyMaterial):
379         (PageProxyMaterial::type):
380         (PageProxyMaterial::createShader):
381         (PageProxyNode::PageProxyNode):
382         (PageProxyNode::~PageProxyNode):
383         (PageProxyMaterialShader::updateState):
384         (QQuickWebPage::updatePaintNode):
385         (QQuickWebPagePrivate::resetPaintNode):
386         (QQuickWebPagePrivate::~QQuickWebPagePrivate):
387         * UIProcess/API/qt/qquickwebpage_p.h:
388         * UIProcess/API/qt/qquickwebpage_p_p.h:
389         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
390         (tst_QQuickWebView::showWebView):
391         * UIProcess/qt/LayerTreeHostProxyQt.cpp:
392         (WebKit::LayerTreeHostProxy::didRenderFrame):
393
394 2011-12-01  Nayan Kumar K  <nayankk@motorola.com>
395
396         [WK2][GTK] Change default-font-size and default-monospace-font-size
397         https://bugs.webkit.org/show_bug.cgi?id=73468
398
399         Reviewed by Martin Robinson.
400
401         Set 'default-font-size' property value to 16px and 'default-monospace-font-size'
402         value to 13px.
403
404         * UIProcess/API/gtk/WebKitSettings.cpp:
405         (webkit_settings_class_init): Change the default font size settings.
406         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
407         (testWebKitSettings): Correct the test.
408
409 2011-12-01  Wajahat Siddiqui  <mdwajahatali.siddiqui@motorola.com>
410
411         Popup menu can get stuck in closed state when GtkMenu can't grab mouse.
412         https://bugs.webkit.org/show_bug.cgi?id=56466
413
414         Add a check if popup menu is not visible due to no mouse grab,
415         Ensure WebCore is in sync with proper state.
416
417         Reviewed by Martin Robinson.
418
419         * UIProcess/WebPageProxy.cpp:
420         (WebKit::WebPageProxy::failedToShowPopupMenu): Added Method to send message
421         to WebProcess.
422         * UIProcess/WebPageProxy.h:
423         * UIProcess/WebPopupMenuProxy.h:
424         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
425         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
426         * WebProcess/WebCoreSupport/WebPopupMenu.h:
427         (WebKit::WebPopupMenu::client): Added Method to get WebCore::PopupMenuClient.
428         * WebProcess/WebPage/WebPage.cpp:
429         (WebKit::WebPage::failedToShowPopupMenu):
430         * WebProcess/WebPage/WebPage.h:
431         * WebProcess/WebPage/WebPage.messages.in: Added Message to inform WebProcess ShowPopupMenu failed.
432
433 2011-12-01  Pavel Feldman  <pfeldman@chromium.org>
434
435         Web Inspector: restore WebKit2 Safari menu items after capabilities refactoring regression.
436         https://bugs.webkit.org/show_bug.cgi?id=73554
437
438         Reviewed by Yury Semikhatsky.
439
440         * UIProcess/WebInspectorProxy.cpp:
441         (WebKit::WebInspectorProxy::didClose):
442
443 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
444
445         Remove an unneeded argument from FrameLoaderClient::download
446         https://bugs.webkit.org/show_bug.cgi?id=73486
447
448         Reviewed by Andreas Kling.
449
450         * WebProcess/Downloads/Download.h:
451         * WebProcess/Downloads/DownloadManager.cpp:
452         (WebKit::DownloadManager::convertHandleToDownload):
453         * WebProcess/Downloads/DownloadManager.h:
454         * WebProcess/Downloads/cfnet/DownloadCFNet.cpp:
455         (WebKit::Download::startWithHandle):
456         * WebProcess/Downloads/curl/DownloadCurl.cpp:
457         (WebKit::Download::startWithHandle):
458         * WebProcess/Downloads/mac/DownloadMac.mm:
459         (WebKit::Download::startWithHandle):
460         * WebProcess/Downloads/qt/DownloadQt.cpp:
461         (WebKit::Download::startWithHandle):
462         * WebProcess/Downloads/soup/DownloadSoup.cpp:
463         (WebKit::Download::startWithHandle):
464         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
465         (WebKit::WebFrameLoaderClient::download):
466         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
467         * WebProcess/WebPage/WebFrame.cpp:
468         (WebKit::WebFrame::convertHandleToDownload):
469         * WebProcess/WebPage/WebFrame.h:
470         Updated for the change. CF version is the only one worth seeing, as it was using the argument.
471
472 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
473
474         Original page URL is not set in quarantine information when downloading using context menu Save Linked File
475         https://bugs.webkit.org/show_bug.cgi?id=73475
476         <rdar://problem/10500337>
477
478         Reviewed by Dan Bernstein.
479
480         * WebProcess/WebProcess.cpp: (WebKit::WebProcess::downloadRequest): Set main document URL
481         for the request, so that CFNetwork would know where te file was downloaded. Note that this
482         is an easier case than downloading due to clicks, since we don't really need to build a host
483         only URL, and could use full page URL. However, the same function is used for consistency.
484
485 2011-11-30  Igor Oliveira  <igor.oliveira@openbossa.org>
486
487         [WK2][Qt] AC animation startTime is wrong
488
489         [WK2][Qt] AC animation startTime is wrong
490         https://bugs.webkit.org/show_bug.cgi?id=73467
491
492         When WebProcess sends animation information to UIProcess, It uses the 
493         current time(WTF::currentTime) minus the timeOffset to set the start time 
494         animation. 
495
496         But there is a latency between the WebProcess and UIProcess communication 
497         and sometimes the animation transition starts late.
498
499         This patch fixes the bug moving the startTime calculation to UIProcess.
500
501         Reviewed by Noam Rosenthal.
502
503         * UIProcess/qt/LayerTreeHostProxyQt.cpp:
504         (WebKit::LayerTreeHostProxy::syncLayerParameters):
505         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
506         (WebCore::WebGraphicsLayer::addAnimation):
507
508 2011-11-30  Csaba Osztrogonác  <ossy@webkit.org>
509
510         [Qt] Buildfix for generating forwarding headers
511         https://bugs.webkit.org/show_bug.cgi?id=73446
512
513         Reviewed by Noam Rosenthal.
514
515         * DerivedSources.pri: Always create the parent directory before generating a forwarding header.
516
517 2011-11-30  Dan Bernstein  <mitz@apple.com>
518
519         WebKit2 part of: Allow the length of a page along the pagination axis to differ from the length of the view
520         https://bugs.webkit.org/show_bug.cgi?id=73476
521
522         Reviewed by Anders Carlsson.
523
524         * Shared/WebPageCreationParameters.cpp:
525         (WebKit::WebPageCreationParameters::encode): Encode pageLength.
526         (WebKit::WebPageCreationParameters::decode): Decode pageLength.
527         * Shared/WebPageCreationParameters.h: Added pageLength.
528         * UIProcess/API/C/WKPage.cpp:
529         (WKPageSetPageLength): Added this accessor.
530         (WKPageGetPageLength): Ditto.
531         * UIProcess/API/C/WKPagePrivate.h:
532         * UIProcess/API/mac/WKBrowsingContextController.mm:
533         (-[WKBrowsingContextController setPageLength:]): Ditto.
534         (-[WKBrowsingContextController pageLength]): Ditto.
535         * UIProcess/API/mac/WKBrowsingContextControllerPrivate.h:
536         * UIProcess/WebPageProxy.cpp:
537         (WebKit::WebPageProxy::WebPageProxy): Added initializer for m_pageLength.
538         (WebKit::WebPageProxy::setPageLength): Added.
539         (WebKit::WebPageProxy::creationParameters): Initialize pageLength.
540         * UIProcess/WebPageProxy.h:
541         (WebKit::WebPageProxy::pageLength): Added.
542         * WebProcess/WebPage/WebPage.cpp:
543         (WebKit::WebPage::WebPage): Set the page length based on the creation parameters.
544         (WebKit::WebPage::setPageLength): Added.
545         * WebProcess/WebPage/WebPage.h:
546         * WebProcess/WebPage/WebPage.messages.in: Added SetPageLength.
547
548 2011-11-30  Alejandro G. Castro  <alex@igalia.com>
549
550         [GTK] Add accelerated compositing compilation option
551         https://bugs.webkit.org/show_bug.cgi?id=73298
552
553         Compile whatever we have inside the USE(ACCELERATED_COMPOSITING)
554         define. Fix accelerated compositing compilation in WK2, update the
555         enter/exit functions.
556
557         Reviewed by Martin Robinson.
558
559         * UIProcess/API/gtk/PageClientImpl.cpp:
560         (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
561         (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
562         * UIProcess/API/gtk/PageClientImpl.h:
563
564 2011-11-29  Beth Dakin  <bdakin@apple.com>
565
566         https://bugs.webkit.org/show_bug.cgi?id=72751
567         WebKit2.MouseMoveAfterCrash API test is failing 
568
569         Reviewed by Sam Weinig.
570
571         windowIsFocused() is too restrictive. All we need to know is that the page is 
572         active.
573         * WebProcess/WebPage/WebPage.cpp:
574         (WebKit::WebPage::mouseEvent):
575         (WebKit::WebPage::mouseEventSyncForTesting):
576
577 2011-11-29  Sam Weinig  <sam@webkit.org>
578
579         Add move semantics to WKRetainPtr
580         https://bugs.webkit.org/show_bug.cgi?id=73400
581
582         Reviewed by Anders Carlsson.
583
584         * UIProcess/API/cpp/WKRetainPtr.h:
585         (WebKit::WKRetainPtr::WKRetainPtr):
586         Add a move constructor and move enabled assignment operators
587         to WKRetainPtr if the compiler being used supports rvalue
588         references. If the compiler does not support it, we fallback
589         to the copy semantics we have always had.
590
591 2011-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
592
593         [Gtk] Links should be Tab-focusable by default
594         https://bugs.webkit.org/show_bug.cgi?id=73427
595
596         Reviewed by Martin Robinson.
597
598         * UIProcess/API/gtk/WebKitSettings.cpp:
599         (webkit_settings_class_init): Switch the default value for
600         'enable-tabs-to-links' property from FALSE to TRUE.
601         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
602         (testWebKitSettings): Updated unit test.
603
604 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
605
606         Download page URL should be set by WebCore
607         https://bugs.webkit.org/show_bug.cgi?id=73358
608
609         Reviewed by Darin Adler.
610
611         * WebProcess/Downloads/mac/DownloadMac.mm:
612         (WebKit::Download::start): There is no need to set original URL post factum any more.
613         (WebKit::Download::startWithHandle): Ditto.
614
615 2011-11-30  Kenneth Rohde Christiansen  <kenneth@webkit.org>
616
617         Rename WebKit::ViewportUpdateGuard to *Deferrer and add some better
618         comments to explain its purpose.
619
620         Reviewed by Simon Hausmann.
621
622         * UIProcess/qt/QtViewportInteractionEngine.cpp:
623         (WebKit::ViewportUpdateDeferrer::ViewportUpdateDeferrer):
624         (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
625         (WebKit::QtViewportInteractionEngine::setItemRectVisible):
626         (WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
627         (WebKit::QtViewportInteractionEngine::scrollStateChanged):
628         (WebKit::QtViewportInteractionEngine::applyConstraints):
629         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
630         * UIProcess/qt/QtViewportInteractionEngine.h:
631
632 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
633
634         Build fix. The removal of the Qt threading back-end also removed
635         an implicit QString inclusion/forward-declaration.
636
637         * UIProcess/qt/QtWebContext.h:
638
639 2011-11-30  Kenneth Rohde Christiansen  <kenneth@webkit.org>
640
641         [Qt] Clean up the Qt viewport interaction engine
642
643         Reviewed by Simon Hausmann.
644
645         * UIProcess/qt/QtViewportInteractionEngine.cpp:
646         (WebKit::QtViewportInteractionEngine::reset):
647
648             Make sure reset is not called while suspended.
649
650         (WebKit::QtViewportInteractionEngine::applyConstraints):
651
652             We always need to apply the constrains due to initial-scale.
653
654             Now that we only apply the constrains when we are ready to
655             paint, it is impossible for the user to have interacted with
656             the content in the case the viewport meta tag was declared
657             in the <head> tag, and it is thus always applied.
658
659         (WebKit::QtViewportInteractionEngine::panGestureStarted):
660         (WebKit::QtViewportInteractionEngine::pinchGestureActive):
661
662             Fix this method to actually do what it advertises, before
663             it would be true even if just animation a bounce back effect.
664
665         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
666         (WebKit::QtViewportInteractionEngine::pinchGestureEnded):
667         * UIProcess/qt/QtViewportInteractionEngine.h:
668
669             General, get rid of the interaction flags as we only need to
670             know whether the user interacted (panned, pinched, double-tapped).
671             Before we would still apply initial-scale if the user had panned
672             the content which can be pretty confusing.
673
674 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
675
676         Unreviewed prospective mac build fix after r101450.
677
678         * Platform/mac/ModuleMac.mm:
679         (WebKit::Module::unload): leakRef is declared with attribute warn_unused_result.
680
681 2011-11-30  Adenilson Cavalcanti  <adenilson.silva@openbossa.org>
682
683         [Qt][WK2] Implement permission API for Qt port
684         https://bugs.webkit.org/show_bug.cgi?id=59200
685
686         Permission API hookup for Geolocation, it allows to receive in WebView
687         a signal when a permission request is done (e.g. to grant permission
688         for accessing geolocation information) and set it accordingly.
689
690         Reviewed by Simon Hausmann.
691
692         * Target.pri:
693         * UIProcess/API/qt/qquickwebview_p.h:
694         * UIProcess/API/qt/qwebpermissionrequest.cpp: Added.
695         (QWebPermissionRequestPrivate::QWebPermissionRequestPrivate):
696         (QWebPermissionRequestPrivate::~QWebPermissionRequestPrivate):
697         (QWebPermissionRequest::create):
698         (QWebPermissionRequest::QWebPermissionRequest):
699         (QWebPermissionRequest::~QWebPermissionRequest):
700         (QWebPermissionRequest::type):
701         (QWebPermissionRequest::setAllow):
702         (QWebPermissionRequest::allow):
703         (QWebPermissionRequest::scheme):
704         (QWebPermissionRequest::host):
705         (QWebPermissionRequest::port):
706         * UIProcess/API/qt/qwebpermissionrequest_p.h: Added.
707         * UIProcess/API/qt/tests/qmltests/WebView/tst_geopermission.qml: Added.
708         * UIProcess/API/qt/tests/qmltests/common/geolocation.html: Added.
709         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
710         * UIProcess/qt/QtWebPageUIClient.cpp:
711         (QtWebPageUIClient::QtWebPageUIClient):
712         (QtWebPageUIClient::permissionRequest):
713         (QtWebPageUIClient::policyForGeolocationPermissionRequest):
714         * UIProcess/qt/QtWebPageUIClient.h:
715
716 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
717
718         -[WKView attributedSubstringForProposedRange:actualRange:] doesn't update actualRange when it's out of bounds
719         https://bugs.webkit.org/show_bug.cgi?id=67813
720
721         Reviewed by Simon Fraser.
722
723         * UIProcess/API/mac/WKView.mm:
724         (-[WKView attributedSubstringForProposedRange:actualRange:]): Update actualRange to match
725         result length.
726         (-[WKView firstRectForCharacterRange:actualRange:]): Added a FIXME. This is harder to
727         implement, and it's unclear if clients care at this time.
728
729 2011-11-29  Sam Weinig  <sam@webkit.org>
730
731         Remove RetainPtr::releaseRef
732         https://bugs.webkit.org/show_bug.cgi?id=73396
733
734         Reviewed by Dan Bernstein.
735
736         * Platform/mac/ModuleMac.mm:
737         (WebKit::Module::unload):
738         Replace the final use of RetainPtr::releaseRef() with RetainPtr::leakRef(),
739         its sexy replacement.
740
741 2011-11-29  Jessie Berlin  <jberlin@apple.com>
742
743         WKKeyValueStorageManagerGetKeyValueStorageOrigins may not report the correct list of origins
744         the first time it is called.
745         https://bugs.webkit.org/show_bug.cgi?id=73374 (<rdar://problem/10196057>)
746
747         Reviewed by Brady Eidson.
748
749         Queue any requests for the origins that have Local Storage until the StorageTracker is done
750         loading the list of those origins from disk.
751
752         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp:
753         (WebKit::keyValueStorageOriginIdentifiers):
754         Refactored here from getKeyValueStorageOrigins so it can be used by didFinishLoadingOrigins.
755         (WebKit::dispatchDidGetKeyValueStorageOrigins):
756         Ditto.
757         (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
758         If the StorageTracker is not done loading the list of origins from disk, queue up the
759         request to be handled later.
760         (WebKit::WebKeyValueStorageManager::didFinishLoadingOrigins):
761         Dispatch the results for any requests that were make before the StorageTracker was done
762         loading the list of origins from disk.
763         (WebKit::WebKeyValueStorageManager::dispatchDidModifyOrigin):
764         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.h:
765
766         * WebProcess/WebProcess.cpp:
767         (WebKit::WebProcess::initializeWebProcess):
768         Set the WebKeyValueStorageManager as the StorageTrackerClient.
769
770 2011-11-29  Anders Carlsson  <andersca@apple.com>
771
772         Decorate adoptWK with WARN_UNUSED_RETURN
773         https://bugs.webkit.org/show_bug.cgi?id=73331
774
775         Reviewed by Sam Weinig.
776
777         * UIProcess/API/cpp/WKRetainPtr.h:
778         (WebKit::adoptWK):
779
780 2011-11-29  Carlos Garcia Campos  <cgarcia@igalia.com>
781
782         Unreviewed. Fix GTK+ WebKit2 build after r101312.
783
784         * Scripts/generate-forwarding-headers.pl: Add blackberry to the
785         list of platforms.
786
787 2011-11-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
788
789         [Qt] Don't hard-code the list of WebKit2 generated sources
790
791         The generated sources are... wait for it... generated. So
792         use the generator itself to figure out which sources we need
793         to compile.
794
795         Reviewed by Simon Hausmann.
796
797         * DerivedSources.pri:
798         * Target.pri:
799
800 2011-11-29  Carlos Garcia Campos  <cgarcia@igalia.com>
801
802         Unreviewed. Fix the GTK+ port build after r101307.
803
804         * GNUmakefile.am: Add missing files to compilation.
805
806 2011-11-29  Kenneth Rohde Christiansen  <kenneth@webkit.org>
807
808         [Qt] Add the infrastructure for enabling suspend/resume.
809
810         Reviewed by Simon Hausmann.
811
812         Also, remove the painting optimization as it is broken in some
813         situations, as there is an assumption in that comparison that
814         the guards cannot be nested, which goes against the design and
815         its use.
816
817         * UIProcess/API/qt/qquickwebview.cpp:
818         (QQuickWebViewPrivate::initializeDesktop):
819         (QQuickWebViewPrivate::initializeTouch):
820         (QQuickWebViewPrivate::_q_suspend):
821         (QQuickWebViewPrivate::_q_resume):
822         * UIProcess/API/qt/qquickwebview_p.h:
823         * UIProcess/API/qt/qquickwebview_p_p.h:
824         * UIProcess/qt/QtViewportInteractionEngine.cpp:
825         (WebKit::ViewportUpdateGuard::ViewportUpdateGuard):
826         (WebKit::ViewportUpdateGuard::~ViewportUpdateGuard):
827         (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
828         (WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
829         (WebKit::QtViewportInteractionEngine::scrollStateChanged):
830         (WebKit::QtViewportInteractionEngine::event):
831         (WebKit::QtViewportInteractionEngine::pagePositionRequest):
832         (WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
833         (WebKit::QtViewportInteractionEngine::reset):
834         (WebKit::QtViewportInteractionEngine::applyConstraints):
835         (WebKit::QtViewportInteractionEngine::panGestureRequestUpdate):
836         (WebKit::QtViewportInteractionEngine::panGestureEnded):
837         (WebKit::QtViewportInteractionEngine::pinchGestureActive):
838         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
839         (WebKit::QtViewportInteractionEngine::pinchGestureRequestUpdate):
840         (WebKit::QtViewportInteractionEngine::pinchGestureEnded):
841         (WebKit::QtViewportInteractionEngine::itemSizeChanged):
842         * UIProcess/qt/QtViewportInteractionEngine.h:
843
844 2011-11-29  Carlos Garcia Campos  <cgarcia@igalia.com>
845
846         [GTK] Add WebKitURIResponse to WebKit2 GTK+ API
847         https://bugs.webkit.org/show_bug.cgi?id=72946
848
849         Reviewed by Martin Robinson.
850
851         * GNUmakefile.am: Add new files to compilation.
852         * UIProcess/API/gtk/WebKitURIResponse.cpp: Added.
853         (webkitURIResponseFinalize):
854         (webkitURIResponseGetProperty):
855         (webkitURIResponseSetProperty):
856         (webkit_uri_response_class_init):
857         (webkit_uri_response_init):
858         (webkit_uri_response_get_uri): Return the URI of the response.
859         (webkit_uri_response_get_status_code): Return the status code of
860         the response, or SOUP_STATUS_NONE.
861         (webkit_uri_response_get_content_length): Return the expected
862         content length of the response.
863         (webkitURIResponseCreateForSoupMessage): Private function to
864         create a response object from a SoupMessage.
865         (webkitURIResponseGetSoupMessage): Return the soup message
866         associated to the response.
867         (webkitURIResponseSetContentLength): Set the expected content
868         length of the response. This is useful for non http responses.
869         * UIProcess/API/gtk/WebKitURIResponse.h: Added.
870         * UIProcess/API/gtk/WebKitURIResponsePrivate.h: Added.
871         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section.
872         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
873         * UIProcess/API/gtk/docs/webkit2gtk.types: Add
874         webkit_uri_response_get_type().
875         * UIProcess/API/gtk/webkit2.h: Add WebKitURIResponse.h.
876
877 2011-11-29  Kenneth Rohde Christiansen  <kenneth@webkit.org>
878
879         [Qt] QQuickWebView gets wrong position after reload
880         https://bugs.webkit.org/show_bug.cgi?id=73292
881
882         Reviewed by Simon Hausmann.
883
884         The ensureContentWithinViewportBoundary animates the current viewport
885         item into boundaries. That of course breaks when we try to animate it,
886         given the initial-scale which hasn't been applied; so apply it.
887
888         Also put the QScroller settings code in the ctor as it never changes.
889
890         * UIProcess/qt/QtViewportInteractionEngine.cpp:
891         (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
892         (WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
893         (WebKit::QtViewportInteractionEngine::reset):
894         (WebKit::QtViewportInteractionEngine::applyConstraints):
895         * UIProcess/qt/QtViewportInteractionEngine.h:
896
897 2011-11-29  Roland Steiner  <rolandsteiner@chromium.org>
898
899         <style scoped>: add ENABLE(STYLE_SCOPED) flag to WebKit
900         https://bugs.webkit.org/show_bug.cgi?id=72848
901
902         Reviewed by Dimitri Glazkov.
903
904         * Configurations/FeatureDefines.xcconfig:
905
906 2011-11-28  Jon Lee  <jonlee@apple.com>
907
908         Create skeleton framework for notifications support in WK2
909         https://bugs.webkit.org/show_bug.cgi?id=73253
910         <rdar://problem/10356943>
911
912         Reviewed by Sam Weinig.
913
914         * WebKit2.xcodeproj/project.pbxproj: Added classes for notification support.
915         * win/WebKit2.vcproj: Ditto.
916         * Target.pri: Ditto.
917         * Configurations/FeatureDefines.xcconfig: Split out ENABLE_NOTIFICATIONS based on platform.
918         * DerivedSources.make: Add Notifications to VPATH.
919         * Platform/CoreIPC/MessageID.h: List WebNotificationManagerProxy as a class with messages.
920         * Scripts/webkit2/messages.py: Mark WebCore::NotificationContents as a struct.
921
922         * Shared/API/c/WKBase.h: Map opaque types to NotificationProvider, NotificationManager, and Notification.
923         * UIProcess/API/C/WKAPICast.h: Map WK types toNotificationProvider, NotificationManager, and Notification.
924         * Shared/APIObject.h: Add Notification and NotificationManager as APIObjects.
925         * Shared/WebCoreArgumentCoders.cpp: Added coders for KURL.
926         (CoreIPC::::encode):
927         (CoreIPC::::decode):
928         * Shared/WebCoreArgumentCoders.h:
929
930         * UIProcess/WebNotification.cpp: Added.
931         (WebKit::WebNotification::WebNotification):
932         (WebKit::WebNotification::~WebNotification):
933         (WebKit::WebNotification::encode):
934         (WebKit::WebNotification::decode):
935         * UIProcess/WebNotification.h: Added.
936         (WebKit::WebNotification::create):
937         (WebKit::WebNotification::title):
938         (WebKit::WebNotification::body):
939         (WebKit::WebNotification::type):
940         * UIProcess/API/C/WKNotification.cpp: Added as API.
941         (WKNotificationGetTypeID):
942         (WKNotificationCopyTitle):
943         (WKNotificationCopyBody):
944         * UIProcess/API/C/WKNotification.h: Added as API.
945
946         * WebProcess/Notifications/WebNotificationManager.h: Added. Contains for now show() and cancel().
947         The rest of the notification client methods will be added later. These two functions send messages
948         to the manager proxy.
949         * WebProcess/Notifications/WebNotificationManager.cpp: Added.
950         (WebKit::WebNotificationManager::WebNotificationManager):
951         (WebKit::WebNotificationManager::~WebNotificationManager):
952         (WebKit::WebNotificationManager::show):
953         (WebKit::WebNotificationManager::cancel):
954
955         * UIProcess/WebNotificationManagerProxy.cpp: Added.
956         (WebKit::WebNotificationManagerProxy::create):
957         (WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy):
958         (WebKit::WebNotificationManagerProxy::~WebNotificationManagerProxy):
959         (WebKit::WebNotificationManagerProxy::invalidate):
960         (WebKit::WebNotificationManagerProxy::initializeProvider):
961         (WebKit::WebNotificationManagerProxy::didReceiveMessage):
962         (WebKit::WebNotificationManagerProxy::show):
963         (WebKit::WebNotificationManagerProxy::cancel):
964         * UIProcess/WebNotificationManagerProxy.h: Added.
965         (WebKit::WebNotificationManagerProxy::clearContext):
966         (WebKit::WebNotificationManagerProxy::type):
967         * UIProcess/WebNotificationManagerProxy.messages.in: Added.
968         * UIProcess/API/C/WKNotificationManager.cpp: Added.
969         (WKNotificationManagerGetTypeID):
970         (WKNotificationManagerSetProvider):
971         * UIProcess/API/C/WKNotificationManager.h: Added.
972
973         * UIProcess/WebContext.h: Add the notification manager to the web context.
974         (WebKit::WebContext::notificationManagerProxy): Access the manager.
975         * UIProcess/WebContext.cpp:
976         (WebKit::WebContext::WebContext): Boilerplate for managers.
977         (WebKit::WebContext::~WebContext): Boilerplate for managers.
978         (WebKit::WebContext::disconnectProcess): Boilerplate for managers.
979         (WebKit::WebContext::didReceiveMessage): Forward messages to the notification manager.
980         * UIProcess/API/C/WKContext.cpp: Expose as API.
981         (WKContextGetNotificationManager):
982         * UIProcess/API/C/WKContext.h: Expose as API.
983
984         * UIProcess/API/C/WKNotificationProvider.h: Added.
985         * UIProcess/WebNotificationProvider.h: Added as APIClient.
986         * UIProcess/WebNotificationProvider.cpp: Added.
987         (WebKit::WebNotificationProvider::show): Forward call to the client.
988         (WebKit::WebNotificationProvider::cancel): Forward call to the client.
989         * UIProcess/WebProcessProxy.cpp:
990         (WebKit::WebProcessProxy::didReceiveMessage): Forward messages for notification manager to the context.
991
992         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Remove notificationPresenter().
993         * WebProcess/WebCoreSupport/WebChromeClient.h: Remove notificationPresenter().
994
995         * WebProcess/WebCoreSupport/WebNotificationClient.h: Added. Forwards client methods to manager.
996         * WebProcess/WebCoreSupport/WebNotificationClient.cpp: Added. Mostly stub implementation for now.
997         (WebKit::WebNotificationClient::WebNotificationClient):
998         (WebKit::WebNotificationClient::~WebNotificationClient):
999         (WebKit::WebNotificationClient::show):
1000         (WebKit::WebNotificationClient::cancel):
1001         (WebKit::WebNotificationClient::notificationObjectDestroyed):
1002         (WebKit::WebNotificationClient::requestPermission):
1003         (WebKit::WebNotificationClient::cancelRequestsForPermission):
1004         (WebKit::WebNotificationClient::checkPermission):
1005
1006         * WebProcess/WebPage/WebPage.h: Added WebNotificationClient as one of its page clients.
1007         * WebProcess/WebPage/WebPage.cpp:
1008         (WebKit::WebPage::WebPage): Set the notification client to WebNotificationClient.
1009         * WebProcess/WebProcess.h: Added WebNotificationManager.
1010         (WebKit::WebProcess::notificationManager):
1011         * WebProcess/WebProcess.cpp:
1012         (WebKit::WebProcess::WebProcess): Initialize notificaton manager.
1013
1014 2011-11-28  Brent Fulgham  <bfulgham@webkit.org>
1015
1016         [WinCairo] Unreviewed build corrections.
1017
1018         * UIProcess/BackingStore.h: WinCairo doesn't need the Cairo backing
1019           for widgets.
1020         * win/WebKit2CFLite.def: Update to match WebKit2.def.
1021
1022 2011-11-28  Beth Dakin  <bdakin@apple.com>
1023
1024         https://bugs.webkit.org/show_bug.cgi?id=72551
1025         When the recommended scrollbar style changes, WKView's tracking options should 
1026         adjust accordingly
1027         -and corresponding-
1028         <rdar://problem/10409328>
1029
1030         Reviewed by Darin Adler.
1031
1032         These new functions take care of passing along the 
1033         recommendedScrollbarStyleDidChange() message that originates in the ChromeClient. 
1034         * UIProcess/API/mac/PageClientImpl.h:
1035         * UIProcess/PageClient.h:
1036         * UIProcess/WebPageProxy.cpp:
1037         (WebKit::WebPageProxy::recommendedScrollbarStyleDidChange):
1038         * UIProcess/WebPageProxy.h:
1039         * UIProcess/WebPageProxy.messages.in:
1040         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1041         (WebKit::WebChromeClient::recommendedScrollbarStyleDidChange):
1042         * WebProcess/WebCoreSupport/WebChromeClient.h:
1043
1044         This is where we actually respond to the recommendedScrollbarStyleDidChange 
1045         message. We remove the existing tracking area and create a new tracking area with 
1046         the appropriate tracking options.
1047         * UIProcess/API/mac/PageClientImpl.mm:
1048         (WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
1049
1050         BuiltInPDFView inherits from WebCore::ScrollableArea, so scrollbarStyleChanged() 
1051         must now take two parameters like the one in ScrollableArea.
1052         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
1053         (WebKit::BuiltInPDFView::scrollbarStyleChanged):
1054         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
1055
1056 2011-11-28  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1057
1058         [Qt][WK2] Fix panning after r101179
1059         https://bugs.webkit.org/show_bug.cgi?id=73224
1060
1061         Reviewed by Noam Rosenthal.
1062
1063         We were wrongly checking for interactionEngine() instead of
1064         !interactionEngine() after the QtWebPageEventHandler refactor.
1065
1066         * UIProcess/qt/QtPanGestureRecognizer.cpp:
1067         (WebKit::QtPanGestureRecognizer::recognize):
1068
1069 2011-11-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1070
1071         Make sure the useFixedLayout feature is consistently handled
1072         https://bugs.webkit.org/show_bug.cgi?id=73212
1073
1074         Reviewed by Simon Hausmann.
1075
1076         Set the fixed layout on the UI side so that it is part of the page
1077         creation parameters and ensure that the page parameters are set
1078         before creating the page.
1079
1080         The parameters are set to our defaults and are now altered in the
1081         WebKitTestRunner.
1082
1083         * UIProcess/API/qt/qquickwebview.cpp:
1084         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1085         (QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
1086         (QQuickWebViewExperimental::setUseTraditionalDesktopBehaviour):
1087         (QQuickWebView::QQuickWebView):
1088         * UIProcess/WebPageProxy.cpp:
1089         (WebKit::WebPageProxy::setUseFixedLayout):
1090         * WebProcess/WebPage/WebPage.cpp:
1091         (WebKit::WebPage::WebPage):
1092
1093             On the web process side the default value for useFixedLayout
1094             wasn't actually read from the creation parameters. As it now may
1095             be different than that of the FrameView, we now call
1096             setFixedLayout in the constructor so make sure the value is
1097             propagated to the FrameView.
1098
1099         (WebKit::WebPage::setFixedVisibleContentRect):
1100         (WebKit::WebPage::setResizesToContentsUsingLayoutSize):
1101         (WebKit::WebPage::resizeToContentsIfNeeded):
1102         (WebKit::WebPage::setViewportSize):
1103         (WebKit::WebPage::setUseFixedLayout):
1104         (WebKit::WebPage::setFixedLayoutSize):
1105
1106             The methods that depends on fixed layout now have asserts to make
1107             sure that they are used properly.
1108
1109 2011-11-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1110
1111         [GTK] Rename WebKitNetworkRequest to WebKitURIRequest
1112         https://bugs.webkit.org/show_bug.cgi?id=73202
1113
1114         Reviewed by Martin Robinson.
1115
1116         Network is confusing because the request can be for a local file uri.
1117
1118         * GNUmakefile.am:
1119         * UIProcess/API/gtk/WebKitNetworkRequest.h: Removed.
1120         * UIProcess/API/gtk/WebKitURIRequest.cpp: Renamed from Source/WebKit2/UIProcess/API/gtk/WebKitNetworkRequest.cpp.
1121         (webkitURIRequestFinalize):
1122         (webkitURIRequestGetProperty):
1123         (webkitURIRequestSetProperty):
1124         (webkit_uri_request_class_init):
1125         (webkit_uri_request_init):
1126         (webkit_uri_request_new):
1127         (webkit_uri_request_get_uri):
1128         * UIProcess/API/gtk/WebKitURIRequest.h: Added.
1129         * UIProcess/API/gtk/WebKitWebView.cpp:
1130         (webkit_web_view_load_request):
1131         * UIProcess/API/gtk/WebKitWebView.h:
1132         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
1133         * UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp:
1134         (testLoadRequest):
1135         * UIProcess/API/gtk/tests/WebViewTest.cpp:
1136         (WebViewTest::loadRequest):
1137         * UIProcess/API/gtk/tests/WebViewTest.h:
1138         * UIProcess/API/gtk/webkit2.h:
1139
1140 2011-11-28  Simon Hausmann  <simon.hausmann@nokia.com>
1141
1142         [Qt] WTF should be built as separate static library
1143         https://bugs.webkit.org/show_bug.cgi?id=73201
1144
1145         Reviewed by Tor Arne Vestbø.
1146
1147         * Target.pri: Require wtf.
1148         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp: Remove unnecessary config.h
1149         inclusion and thus wtf dependency.
1150
1151 2011-11-28  Pavel Feldman  <pfeldman@chromium.org>
1152
1153         REGRESSION (r101201): Crash inside WebKit::WebInspector::didClose() when closing any tab
1154         https://bugs.webkit.org/show_bug.cgi?id=73183
1155
1156         Reviewed by Yury Semikhatsky.
1157
1158         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1159         (WebKit::WebInspectorClient::closeInspectorFrontend):
1160
1161 2011-11-28  Balazs Kelemen  <kbalazs@webkit.org>
1162
1163         Reviewed by Simon Hausmann.
1164
1165         [WK2] fast/frames/iframe-plugin-load-remove-document-crash.html crashes
1166         https://bugs.webkit.org/show_bug.cgi?id=63321
1167
1168         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1169         (WebKit::NetscapePlugin::manualStreamDidFail): Don't assert that m_manualStream
1170         is not null since it is not guaranteed but instead handle the case when it is null
1171         with early return.
1172
1173 2011-11-27  Zeno Albisser  <zeno@webkit.org>
1174
1175         [Qt][WK2] MiniBrowser stops displaying content after surfing a few pages.
1176         https://bugs.webkit.org/show_bug.cgi?id=73172
1177
1178         Properly initialize WebLayerTreeInfo structures.
1179
1180         Reviewed by Andreas Kling.
1181
1182         * Shared/WebLayerTreeInfo.h:
1183         (WebKit::WebLayerUpdateInfo::WebLayerUpdateInfo):
1184         (WebKit::WebLayerAnimation::WebLayerAnimation):
1185         (WebKit::WebLayerInfo::WebLayerInfo):
1186         (WebKit::WebLayerTreeInfo::WebLayerTreeInfo):
1187
1188 2011-11-27  Mark Rowe  <mrowe@apple.com>
1189
1190         <http://webkit.org/b/72665> Switch to a more modern approach to retrieving the OS marketing version
1191
1192         Reviewed by Dan Bernstein.
1193
1194         * UIProcess/mac/WebPageProxyMac.mm:
1195         (WebKit::macOSXVersionString): Use WKGetMacOSXVersionString.
1196         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1197         (InitWebCoreSystemInterface): Set up wkGetMacOSXVersionString.
1198
1199 2011-11-26  Pavel Feldman  <pfeldman@google.com>
1200
1201         Web Inspector: remove disconnectFromBackend from the protocol.
1202         https://bugs.webkit.org/show_bug.cgi?id=73127
1203
1204         Reviewed by Yury Semikhatsky.
1205
1206         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1207         (WebKit::WebInspectorClient::inspectorDestroyed):
1208         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
1209         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
1210
1211 2011-11-26  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1212
1213         [Qt] [WK2] QtDownloadManager doesn't need to be RefCounted
1214         https://bugs.webkit.org/show_bug.cgi?id=73151
1215
1216         Reviewed by Kenneth Rohde Christiansen.
1217
1218         QtDownloadManager is owned by QtWebContext, and doesn't need to be a RefCounted
1219         class. This commit also makes the callback handlers private -- following the similar
1220         approach we take in other clients of the C API.
1221
1222         * UIProcess/qt/QtDownloadManager.cpp:
1223         (WebKit::QtDownloadManager::QtDownloadManager):
1224         (WebKit::QtDownloadManager::addDownload):
1225         (WebKit::toQtDownloadManager):
1226         (WebKit::QtDownloadManager::didReceiveResponse):
1227         (WebKit::QtDownloadManager::didCreateDestination):
1228         (WebKit::QtDownloadManager::didFinishDownload): remove unused failingUrl local variable.
1229         (WebKit::QtDownloadManager::didFailDownload):
1230         (WebKit::QtDownloadManager::didReceiveDataForDownload):
1231         * UIProcess/qt/QtDownloadManager.h:
1232         * UIProcess/qt/QtWebContext.cpp:
1233         (WebKit::QtWebContext::initialize):
1234         * UIProcess/qt/QtWebContext.h:
1235
1236 2011-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>
1237
1238         Unreviewed, rolling out r101193.
1239         http://trac.webkit.org/changeset/101193
1240         https://bugs.webkit.org/show_bug.cgi?id=73158
1241
1242         Breaks Windows and Qt minimal. (Requested by pfeldman on
1243         #webkit).
1244
1245         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1246         (WebKit::WebInspectorClient::inspectorDestroyed):
1247         * WebProcess/WebCoreSupport/WebInspectorClient.h:
1248         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
1249         (WebKit::WebInspectorFrontendClient::disconnectFromBackend):
1250         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
1251
1252 2011-11-26  Pavel Feldman  <pfeldman@google.com>
1253
1254         Web Inspector: remove disconnectFromBackend from the protocol.
1255         https://bugs.webkit.org/show_bug.cgi?id=73127
1256
1257         Reviewed by Yury Semikhatsky.
1258
1259         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1260         (WebKit::WebInspectorClient::inspectorDestroyed):
1261         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
1262         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
1263
1264 2011-11-25  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1265
1266         [Qt] [WK2] Remove WebContext related code from QtWebPageProxy
1267         https://bugs.webkit.org/show_bug.cgi?id=73150
1268
1269         Reviewed by Kenneth Rohde Christiansen.
1270
1271         Creates a QtWebContext class that abstracts away from QtWebPageProxy the
1272         handling of creating / maintaining the default WebContext, as well as the
1273         code for the WKContextRef clients.
1274
1275         Another motivation for having this entity is to have a proper place to add
1276         objects are bound to the context, like the QtDownloadManager.
1277
1278         * Target.pri:
1279         * UIProcess/qt/ClientImpl.cpp: Removed.
1280         * UIProcess/qt/ClientImpl.h: Removed.
1281         * UIProcess/qt/QtDownloadManager.cpp:
1282         * UIProcess/qt/QtWebContext.cpp: Added.
1283         (WebKit::QtWebContext::QtWebContext):
1284         (WebKit::QtWebContext::~QtWebContext):
1285         (WebKit::QtWebContext::create):
1286         (WebKit::QtWebContext::defaultContext):
1287         (WebKit::QtWebContext::createWebPage):
1288         (WebKit::QtWebContext::setNavigatorQtObjectEnabled):
1289         (WebKit::QtWebContext::postMessageToNavigatorQtObject):
1290         (WebKit::QtWebContext::initialize):
1291         (WebKit::QtWebContext::initializeContextInjectedBundleClient):
1292         (WebKit::toQtWebContext):
1293         (WebKit::QtWebContext::didReceiveMessageFromInjectedBundle):
1294         * UIProcess/qt/QtWebContext.h: Added.
1295         (WebKit::QtWebContext::downloadManager):
1296         * UIProcess/qt/QtWebPageProxy.cpp:
1297         (QtWebPageProxy::QtWebPageProxy):
1298         (QtWebPageProxy::~QtWebPageProxy):
1299         (QtWebPageProxy::setNavigatorQtObjectEnabled):
1300         (QtWebPageProxy::postMessageToNavigatorQtObject):
1301         (QtWebPageProxy::handleDownloadRequest):
1302         * UIProcess/qt/QtWebPageProxy.h:
1303
1304 2011-11-25  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1305
1306         [Qt][WK2] Refactor GestureRecognizers to use QtWebPageEventHandler
1307         https://bugs.webkit.org/show_bug.cgi?id=73096
1308
1309         Reviewed by Kenneth Rohde Christiansen.
1310
1311         Move all the interaction engine usage to QtWebPageEventHandler,
1312         making all GestureRecognizers (Tap, Pinch and Pan) use it directly.
1313
1314         * UIProcess/qt/QtGestureRecognizer.cpp:
1315         (WebKit::QtGestureRecognizer::QtGestureRecognizer):
1316         * UIProcess/qt/QtGestureRecognizer.h:
1317         * UIProcess/qt/QtPanGestureRecognizer.cpp:
1318         (WebKit::QtPanGestureRecognizer::QtPanGestureRecognizer):
1319         (WebKit::QtPanGestureRecognizer::recognize):
1320         * UIProcess/qt/QtPanGestureRecognizer.h:
1321         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
1322         (WebKit::QtPinchGestureRecognizer::QtPinchGestureRecognizer):
1323         (WebKit::QtPinchGestureRecognizer::recognize):
1324         * UIProcess/qt/QtPinchGestureRecognizer.h:
1325         * UIProcess/qt/QtTapGestureRecognizer.cpp:
1326         (WebKit::QtTapGestureRecognizer::QtTapGestureRecognizer):
1327         (WebKit::QtTapGestureRecognizer::recognize):
1328         (WebKit::QtTapGestureRecognizer::tapTimeout):
1329         * UIProcess/qt/QtTapGestureRecognizer.h:
1330         * UIProcess/qt/QtWebPageEventHandler.cpp:
1331         (QtWebPageEventHandler::QtWebPageEventHandler):
1332         (QtWebPageEventHandler::setViewportInteractionEngine):
1333         * UIProcess/qt/QtWebPageEventHandler.h:
1334         (QtWebPageEventHandler::interactionEngine):
1335
1336 2011-11-25  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1337
1338         [Qt] Remove unneeded declaration from QQuickWebPagePrivate
1339         https://bugs.webkit.org/show_bug.cgi?id=73141
1340
1341         Reviewed by Antonio Gomes.
1342
1343         Left-over from r101165.
1344
1345         * UIProcess/API/qt/qquickwebpage_p_p.h:
1346
1347 2011-11-17  Martin Robinson  <mrobinson@igalia.com>
1348
1349         [GTK] Integrate build-gtkdoc into build-webkit and make
1350         https://bugs.webkit.org/show_bug.cgi?id=72626
1351
1352         Reviewed by Philippe Normand.
1353
1354         * GNUmakefile.am: Removed references to build-gtkdoc and gtkdoc.py.
1355         * UIProcess/API/gtk/docs/build-gtkdoc: Removed.
1356
1357 2011-11-25  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1358
1359         Clean up code in WK2/ChromeClientClient related to viewport handling
1360         https://bugs.webkit.org/show_bug.cgi?id=73128
1361
1362         Reviewed by Simon Hausmann.
1363
1364         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1365         (WebKit::WebChromeClient::contentsSizeChanged):
1366
1367             Make sure that we only call resizeToContentsIfNeeded when we are
1368             using the tiled backing store and fixed layout as well.
1369
1370             Guard the scrollbar code so that it is only called when scroll
1371             delegation is not used. Do similarily for the frameset code,
1372             which makes no sense with frame flattening.
1373
1374         (WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):
1375
1376             This method is only called for the main frame, so the main frame
1377             check has been removed.
1378
1379 2011-11-25  Simon Hausmann  <simon.hausmann@nokia.com>
1380
1381         [Qt] Eliminate warnings about the deprecated QQuickCanvas::sceneGraphEngine() function.
1382
1383         Reviewed by Andreas Kling.
1384
1385         We use the function in question to find out if we can connect to the scene graph's
1386         afterRendering signal. The signal has been moved into QQuickCanvas right away, so
1387         we can connect to it as soon as we have a canvas.
1388
1389         * UIProcess/API/qt/qquickwebpage.cpp:
1390         (QQuickWebPagePrivate::initializeSceneGraphConnections):
1391         * UIProcess/API/qt/qquickwebpage_p.h:
1392
1393 2011-11-24  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1394
1395         [Qt][WK2] Move event handling out of QtWebPageProxy
1396         https://bugs.webkit.org/show_bug.cgi?id=73089
1397
1398         Reviewed by Kenneth Rohde Christiansen.
1399
1400         Move all logic related to event handling, gestures and the
1401         interaction engine out of QtWebPageProxy, creating a separate
1402         class called QtWebPageEventHandler. This handler will be created
1403         by the QQuickWebViewPrivate and will be registered into QtWebPageProxy.
1404         QQuickWebPage will now call handleEvent through this entity.
1405
1406         * Target.pri:
1407         * UIProcess/API/qt/qquickwebpage.cpp:
1408         (QQuickWebPage::event):
1409         * UIProcess/API/qt/qquickwebview.cpp:
1410         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1411         (QQuickWebViewPrivate::initializeDesktop):
1412         (QQuickWebViewPrivate::initializeTouch):
1413         * UIProcess/API/qt/qquickwebview_p_p.h:
1414         * UIProcess/qt/QtTapGestureRecognizer.cpp:
1415         (WebKit::QtTapGestureRecognizer::QtTapGestureRecognizer):
1416         (WebKit::QtTapGestureRecognizer::recognize):
1417         (WebKit::QtTapGestureRecognizer::tapTimeout):
1418         * UIProcess/qt/QtTapGestureRecognizer.h:
1419         * UIProcess/qt/QtWebPageEventHandler.cpp: Added.
1420         (QtWebPageEventHandler::dragOperationToDropAction):
1421         (QtWebPageEventHandler::dragOperationToDropActions):
1422         (QtWebPageEventHandler::dropActionToDragOperation):
1423         (QtWebPageEventHandler::QtWebPageEventHandler):
1424         (QtWebPageEventHandler::~QtWebPageEventHandler):
1425         (QtWebPageEventHandler::handleEvent):
1426         (QtWebPageEventHandler::handleMouseMoveEvent):
1427         (QtWebPageEventHandler::handleMousePressEvent):
1428         (QtWebPageEventHandler::handleMouseReleaseEvent):
1429         (QtWebPageEventHandler::handleMouseDoubleClickEvent):
1430         (QtWebPageEventHandler::handleWheelEvent):
1431         (QtWebPageEventHandler::handleHoverLeaveEvent):
1432         (QtWebPageEventHandler::handleHoverMoveEvent):
1433         (QtWebPageEventHandler::handleDragEnterEvent):
1434         (QtWebPageEventHandler::handleDragLeaveEvent):
1435         (QtWebPageEventHandler::handleDragMoveEvent):
1436         (QtWebPageEventHandler::handleDropEvent):
1437         (QtWebPageEventHandler::handleSingleTapEvent):
1438         (QtWebPageEventHandler::handleDoubleTapEvent):
1439         (QtWebPageEventHandler::timerEvent):
1440         (QtWebPageEventHandler::handleKeyPressEvent):
1441         (QtWebPageEventHandler::handleKeyReleaseEvent):
1442         (QtWebPageEventHandler::handleFocusInEvent):
1443         (QtWebPageEventHandler::handleFocusOutEvent):
1444         (QtWebPageEventHandler::setViewportInteractionEngine):
1445         (QtWebPageEventHandler::touchEvent):
1446         (QtWebPageEventHandler::resetGestureRecognizers):
1447         (QtWebPageEventHandler::doneWithTouchEvent):
1448         (QtWebPageEventHandler::didFindZoomableArea):
1449         * UIProcess/qt/QtWebPageEventHandler.h: Added.
1450         * UIProcess/qt/QtWebPageProxy.cpp:
1451         (QtWebPageProxy::QtWebPageProxy):
1452         (QtWebPageProxy::init):
1453         (QtWebPageProxy::didFindZoomableArea):
1454         (QtWebPageProxy::processDidCrash):
1455         (QtWebPageProxy::startDrag):
1456         (QtWebPageProxy::doneWithTouchEvent):
1457         * UIProcess/qt/QtWebPageProxy.h:
1458         (QtWebPageProxy::eventHandler):
1459
1460 2011-11-25  Simon Hausmann  <simon.hausmann@nokia.com>
1461
1462         [Qt] Cleanup in QML tests.
1463
1464         Reviewed by Tor Arne Vestbø.
1465
1466         Use a simple QML component for the "DesktopWebView" instead of a new QML type.
1467         This will allow the use of the experimental extension in the future.
1468
1469         * UIProcess/API/qt/qquickwebview.cpp:
1470         (QQuickWebViewExperimental::useTraditionalDesktopBehaviour):
1471         * UIProcess/API/qt/qquickwebview_p.h:
1472         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/DesktopWebView.qml: Added.
1473         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_linkHovered.qml:
1474         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_loadHtml.qml:
1475         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_messaging.qml:
1476         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_navigationRequested.qml:
1477         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
1478         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
1479         (main):
1480
1481 2011-11-24  Zeno Albisser  <zeno@webkit.org>
1482
1483         [Qt]WK2][Mac] Use Mac port's IPC implementation instead of Unix sockets
1484         https://bugs.webkit.org/show_bug.cgi?id=72495
1485
1486         Make Qt using mach ports and Grand Central Dispatch for IPC
1487         when building on Mac.
1488
1489         Reviewed by Simon Hausmann.
1490
1491         * Platform/CoreIPC/Attachment.cpp:
1492         * Platform/CoreIPC/Attachment.h:
1493         * Platform/CoreIPC/Connection.h:
1494         * Platform/CoreIPC/CoreIPCMessageKinds.h:
1495         * Platform/SharedMemory.h:
1496         * Platform/WorkQueue.h:
1497         * Platform/mac/MachUtilities.cpp:
1498         * Platform/mac/WorkQueueMac.cpp:
1499         * Target.pri:
1500         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
1501         (WebKit::ProcessLauncher::launchProcess):
1502         * UIProcess/WebProcessProxy.cpp:
1503         (WebKit::WebProcessProxy::didFinishLaunching):
1504         * WebProcess/qt/WebProcessMainQt.cpp:
1505         (WebKit::WebProcessMainQt):
1506
1507 2011-11-17  Oleg Romashin  <romaxa@gmail.com>
1508
1509         [Qt][WK2] Stop leaking memory in string QWK2 API's
1510         https://bugs.webkit.org/show_bug.cgi?id=72558
1511
1512         Reviewed by Simon Hausmann.
1513
1514         WKRef API pointers don't adopt the implementation pointers by default and the implementation pointers
1515         stay alive after destroying the API pointers.
1516         This patch adopts the implementation pointers correctly by using adoptWK that returns a WKRetainPtr
1517         that will be around temporarily and correctly release the object.
1518
1519         * UIProcess/qt/QtWebPageUIClient.cpp:
1520         (QtWebPageUIClient::mouseDidMoveOverElement):
1521         * UIProcess/qt/QtDownloadManager.cpp:
1522         (WebKit::qt_wk_didFailDownload):
1523         * UIProcess/qt/QtWebPageProxy.cpp:
1524         (QtWebPageProxy::load):
1525         (QtWebPageProxy::url):
1526         (QtWebPageProxy::title):
1527
1528 2011-11-24  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1529
1530         [Qt] Get rid of the buildDirForSource() function in the build system
1531
1532         At some point the plan was to allow for running qmake on sub-trees
1533         of the sources, into the top level build directory, but this is no
1534         longer possible, so no reason to keep the convenience function around.
1535
1536         Reviewed by Simon Hausmann.
1537
1538         * DerivedSources.pri:
1539
1540 2011-11-24  Patrick Gansterer  <paroga@webkit.org>
1541
1542         [CMake] Add missing source files
1543         https://bugs.webkit.org/show_bug.cgi?id=73052
1544
1545         Reviewed by Andreas Kling.
1546
1547         Add more generic files to the sources list and remove the EFL specific stuff.
1548
1549         * CMakeLists.txt:
1550
1551 2011-11-21  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1552
1553         [Qt][WK2] Move QQuickWebView::downloadRequested signal into experimental
1554         https://bugs.webkit.org/show_bug.cgi?id=72914
1555
1556         Reviewed by Andreas Kling.
1557
1558         Make the signal downloadRequested an experimental API from QQuickWebView
1559         and modify the qml test to use a WebView instead of a DesktopWebView.
1560
1561         * UIProcess/API/qt/qquickwebview_p.h:
1562         * UIProcess/API/qt/tests/qmltests/WebView/tst_download.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_download.qml.
1563         * UIProcess/API/qt/tests/qmltests/common/download.html: Removed.
1564         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
1565         * UIProcess/qt/QtWebPageProxy.cpp:
1566         (QtWebPageProxy::didReceiveDownloadResponse):
1567
1568 2011-11-22  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1569
1570         [Qt] [WK2] Expose onNavigationRequested signal instead of expecting a slot be defined from QML
1571         https://bugs.webkit.org/show_bug.cgi?id=72976
1572
1573         Reviewed by Tor Arne Vestbø.
1574
1575         Expecting slots/methods to be implemented in QML isn't very idiomatic in
1576         comparison with the alternative of having a signal. So we now use a signal
1577         for handling navigation requests, and expose a 'request' object with relevant
1578         metadata. There's also a settable property 'action' used to indicate whether
1579         the navigation should be ignored or trigger a download.
1580
1581         The pattern signal with an object parameter that can keep the reply is common in QML,
1582         and used for example for mouse signals.
1583
1584         * UIProcess/API/qt/qquickwebview.cpp:
1585         * UIProcess/API/qt/qquickwebview_p.h:
1586         * UIProcess/API/qt/qquickwebview_p_p.h:
1587         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_navigationRequested.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_navigationPolicyForUrl.qml.
1588         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
1589         * UIProcess/qt/QtWebPagePolicyClient.cpp:
1590         (NavigationRequest::NavigationRequest):
1591         (NavigationRequest::url):
1592         (NavigationRequest::button):
1593         (NavigationRequest::modifiers):
1594         (NavigationRequest::action):
1595         (NavigationRequest::setAction):
1596         (QtWebPagePolicyClient::decidePolicyForNavigationAction):
1597         * UIProcess/qt/QtWebPagePolicyClient.h:
1598
1599 2011-11-22  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1600
1601         [Qt] [WK2] Move PagePolicyClient related code to QtWebPagePolicyClient
1602         https://bugs.webkit.org/show_bug.cgi?id=72959
1603
1604         Reviewed by Andreas Kling.
1605
1606         Split PagePolicyClient related code from QtWebPageProxy/ClientImpl. The new
1607         QtWebPagePolicyClient registers itself with WKPageRef and it's owned by the
1608         QQuickWebViewPrivate. This is a move to clean up QtWebPageProxy object.
1609
1610         QtPolicyInterface abstraction was not helping us as much as the separation of
1611         the client code will. It was more useful when we had multiple WebViews.
1612
1613         * Target.pri:
1614         * UIProcess/API/qt/qquickwebview.cpp:
1615         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1616         (toPolicyAction):
1617         (QQuickWebViewPrivate::navigationPolicyForURL):
1618         * UIProcess/API/qt/qquickwebview_p.h:
1619         * UIProcess/API/qt/qquickwebview_p_p.h:
1620         * UIProcess/qt/ClientImpl.cpp:
1621         * UIProcess/qt/ClientImpl.h:
1622         * UIProcess/qt/QtWebPagePolicyClient.cpp: Added.
1623         (QtWebPagePolicyClient::QtWebPagePolicyClient):
1624         (QtWebPagePolicyClient::decidePolicyForNavigationAction):
1625         (toQtWebPagePolicyClient):
1626         (toQtMouseButton):
1627         (toQtKeyboardModifiers):
1628         (QtWebPagePolicyClient::decidePolicyForResponse):
1629         * UIProcess/qt/QtWebPagePolicyClient.h: Renamed from Source/WebKit2/UIProcess/qt/QtPolicyInterface.h.
1630         * UIProcess/qt/QtWebPageProxy.cpp:
1631         (QtWebPageProxy::QtWebPageProxy):
1632         (QtWebPageProxy::init):
1633         * UIProcess/qt/QtWebPageProxy.h:
1634
1635 2011-11-23  Raphael Kubo da Costa  <kubo@profusion.mobi>
1636
1637         [CMake] Move the top-level logic to the top-level directory.
1638         https://bugs.webkit.org/show_bug.cgi?id=72685
1639
1640         Reviewed by Brent Fulgham.
1641
1642         * CMakeLists.txt: Adjust Source/ directory.
1643
1644 2011-11-22  Gopal Raghavan  <gopal.1.raghavan@nokia.com>
1645
1646         Unreviewed : remove empty folders related to TouchWebView and DesktopWebView
1647         https://bugs.webkit.org/show_bug.cgi?id=72985
1648
1649         * UIProcess/API/qt/tests/qmltests/DesktopWebView: Removed.
1650         * UIProcess/API/qt/tests/qmltests/TouchWebView: Removed.
1651
1652 2011-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1653
1654         Ensure web process before starting a download
1655         https://bugs.webkit.org/show_bug.cgi?id=72499
1656
1657         Reviewed by Anders Carlsson.
1658
1659         * UIProcess/WebContext.cpp:
1660         (WebKit::WebContext::download): Call ensureWebProcess().
1661
1662 2011-11-22  Csaba Osztrogonác  <ossy@webkit.org>
1663
1664         Unreviewed buildfix after r101001.
1665
1666         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1667         (WebKit::WebInspectorClient::openInspectorFrontend): Use ASSERT_UNUSED instead of ASSERT.
1668
1669 2011-11-22  Pavel Feldman  <pfeldman@google.com>
1670
1671         Not reviewed: moving inspector frontend creation out of assert in WebKit2.
1672
1673         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1674         (WebKit::WebInspectorClient::openInspectorFrontend):
1675
1676 2011-11-22  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1677
1678         [Qt][WK2] Fix and unskip loadHtml api test
1679         https://bugs.webkit.org/show_bug.cgi?id=72916
1680
1681         Reviewed by Andreas Kling.
1682
1683         Now that linkHovered events are working again we can fix and unskip this
1684         loadHtml test.
1685
1686         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_loadHtml.qml:
1687
1688 2011-11-22  Pavel Feldman  <pfeldman@google.com>
1689
1690         Web Inspector: remove Inspector::bringToFront from the protocol.
1691         https://bugs.webkit.org/show_bug.cgi?id=72937
1692
1693         Reviewed by Yury Semikhatsky.
1694
1695         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1696         (WebKit::WebInspectorClient::openInspectorFrontend):
1697         (WebKit::WebInspectorClient::bringFrontendToFront):
1698         * WebProcess/WebCoreSupport/WebInspectorClient.h:
1699
1700 2011-11-22  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1701
1702         [Qt] [WK2] Move PageLoadClient related code to QtWebPageLoadClient
1703         https://bugs.webkit.org/show_bug.cgi?id=72928
1704
1705         Reviewed by Andreas Kling.
1706
1707         Split PageLoadClient related code from QtWebPageProxy/ClientImpl. The new
1708         QtWebPageLoadClient registers itself with WKPageRef and it's owned by the
1709         QQuickWebViewPrivate. This is a move to clean up QtWebPageProxy object.
1710
1711         * Target.pri:
1712         * UIProcess/API/qt/qquickwebview.cpp:
1713         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1714         (QQuickWebView::loadProgress):
1715         * UIProcess/API/qt/qquickwebview_p.h:
1716         * UIProcess/API/qt/qquickwebview_p_p.h:
1717         * UIProcess/qt/ClientImpl.cpp:
1718         * UIProcess/qt/ClientImpl.h:
1719         * UIProcess/qt/QtWebPageLoadClient.cpp: Added.
1720         (QtWebPageLoadClient::QtWebPageLoadClient):
1721         (QtWebPageLoadClient::didStartProvisionalLoadForFrame):
1722         (QtWebPageLoadClient::didCommitLoadForFrame):
1723         (QtWebPageLoadClient::didSameDocumentNavigationForFrame):
1724         (QtWebPageLoadClient::didReceiveTitleForFrame):
1725         (QtWebPageLoadClient::didFirstVisuallyNonEmptyLayoutForFrame):
1726         (QtWebPageLoadClient::dispatchLoadSucceeded):
1727         (QtWebPageLoadClient::dispatchLoadFailed):
1728         (QtWebPageLoadClient::setLoadProgress):
1729         (toQtWebPageLoadClient):
1730         (QtWebPageLoadClient::didFailProvisionalLoadWithErrorForFrame):
1731         (QtWebPageLoadClient::didFinishLoadForFrame):
1732         (QtWebPageLoadClient::didFailLoadWithErrorForFrame):
1733         (QtWebPageLoadClient::didStartProgress):
1734         (QtWebPageLoadClient::didChangeProgress):
1735         (QtWebPageLoadClient::didFinishProgress):
1736         * UIProcess/qt/QtWebPageLoadClient.h: Added.
1737         (QtWebPageLoadClient::loadProgress):
1738         * UIProcess/qt/QtWebPageProxy.cpp:
1739         (QtWebPageProxy::QtWebPageProxy):
1740         (QtWebPageProxy::init):
1741         (QtWebPageProxy::updateNavigationState):
1742         * UIProcess/qt/QtWebPageProxy.h:
1743
1744 2011-11-22  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1745
1746         [Qt] [WK2] Move PageUIClient related code to QtWebPageUIClient
1747         https://bugs.webkit.org/show_bug.cgi?id=72910
1748
1749         Reviewed by Andreas Kling.
1750
1751         Split PageUIClient related code from QtWebPageProxy/ClientImpl. The new
1752         QtWebPageUIClient registers itself with WKPageRef and it's owned by the
1753         QQuickWebViewPrivate. This is a move to clean up QtWebPageProxy object.
1754
1755         * Target.pri:
1756         * UIProcess/API/qt/qquickwebview.cpp:
1757         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1758         (QQuickWebViewPrivate::chooseFiles):
1759         * UIProcess/API/qt/qquickwebview_p.h:
1760         * UIProcess/API/qt/qquickwebview_p_p.h:
1761         * UIProcess/qt/ClientImpl.cpp:
1762         * UIProcess/qt/ClientImpl.h:
1763         * UIProcess/qt/QtWebPageProxy.cpp:
1764         (QtWebPageProxy::init):
1765         * UIProcess/qt/QtWebPageProxy.h:
1766         * UIProcess/qt/QtWebPageUIClient.cpp: Added.
1767         (QtWebPageUIClient::QtWebPageUIClient):
1768         (QtWebPageUIClient::runJavaScriptAlert):
1769         (QtWebPageUIClient::runJavaScriptConfirm):
1770         (QtWebPageUIClient::runJavaScriptPrompt):
1771         (QtWebPageUIClient::runOpenPanel):
1772         (QtWebPageUIClient::setStatusText):
1773         (QtWebPageUIClient::mouseDidMoveOverElement):
1774         (toQtWebPageUIClient):
1775         (createNullWKString):
1776         * UIProcess/qt/QtWebPageUIClient.h: Added.
1777
1778 2011-11-22  Eunmi Lee  <eunmi15.lee@samsung.com>
1779
1780         [WK2] Modify EFL port's WebEventFactory to use EflKeyboardUtilities's
1781         keyIdentifierForEvasKeyName() and windowsKeyCodeForEvasKeyName().
1782         https://bugs.webkit.org/show_bug.cgi?id=72850
1783
1784         Reviewed by Anders Carlsson.
1785
1786         The EflKeyboardUtilities has been added, so we can use keyIdentifierForEvasKeyName() and
1787         windowsKeyCodeForEvasKeyName() for EFL port's WebEventFactory.
1788
1789         * Shared/efl/WebEventFactory.cpp:
1790         (WebKit::WebEventFactory::createWebKeyboardEvent):
1791
1792 2011-11-21  Alexis Menard  <alexis.menard@openbossa.org>
1793
1794         [Qt][WK2] REGRESSION(100483): It made 2 API tests fail
1795         https://bugs.webkit.org/show_bug.cgi?id=72612
1796
1797         Reviewed by Kenneth Rohde Christiansen.
1798
1799         Make sure that when the view is focused, the page knows about it.
1800         Also set a the view to be the focused item in the failing tests.
1801
1802         * UIProcess/API/qt/qquickwebpage_p.h:
1803         * UIProcess/API/qt/qquickwebview.cpp:
1804         (QQuickWebView::focusInEvent):
1805         (QQuickWebView::focusOutEvent):
1806         * UIProcess/API/qt/qquickwebview_p.h:
1807         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_linkHovered.qml:
1808         * UIProcess/qt/QtWebPageProxy.cpp:
1809         (QtWebPageProxy::isViewFocused):
1810
1811 2011-11-21  Simon Hausmann  <simon.hausmann@nokia.com>
1812
1813         [Qt] Speed up debug builds.
1814         https://bugs.webkit.org/show_bug.cgi?id=72882
1815
1816         Reviewed by Tor Arne Vestbø.
1817
1818         * Target.pri: Make BUILDING_WebKit2 available, so it can be
1819         used by the build system.
1820
1821 2011-11-21  Alexis Menard  <alexis.menard@openbossa.org>
1822
1823         [Qt] Remove unnecessary initialize method from QQuickWebView.
1824         https://bugs.webkit.org/show_bug.cgi?id=72905
1825
1826         Reviewed by Kenneth Rohde Christiansen.
1827
1828         We don't need this level of indirection.
1829
1830         * UIProcess/API/qt/qquickwebview.cpp:
1831         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1832         (QQuickWebView::QQuickWebView):
1833         * UIProcess/API/qt/qquickwebview_p_p.h:
1834
1835 2011-11-21  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1836
1837         [Qt][WK2] Implement loadHtml API for QQuickWebView
1838         https://bugs.webkit.org/show_bug.cgi?id=72161
1839
1840         Reviewed by Simon Hausmann.
1841
1842         Implement QQuickWebView::loadHtml that calls QtWebPageProxy::loadHTMLString.
1843         This function will use WKPageLoadHTMLString in order to load HTML from a given string.
1844
1845         * UIProcess/API/qt/qquickwebview.cpp:
1846         (QQuickWebView::loadHtml):
1847         * UIProcess/API/qt/qquickwebview.h:
1848         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadHtml.qml: Added.
1849         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_loadHtml.qml: Added.
1850         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
1851         * UIProcess/qt/QtWebPageProxy.cpp:
1852         (QtWebPageProxy::loadHTMLString):
1853         * UIProcess/qt/QtWebPageProxy.h:
1854
1855 2011-11-21  Igor Oliveira  <igor.oliveira@openbossa.org>
1856
1857         [WK2][Qt] Move Accelerated Composite animations to UIProcess
1858         https://bugs.webkit.org/show_bug.cgi?id=72753
1859
1860         Currently, all the accelerated compositing animations are applied in WebProcess and
1861         for each frame generated, WebProcess needs to sync with UIProcess.
1862
1863         This patch moves the accelerated compositing animations to UIProcess reducing the
1864         amount of synchronization messages between WebProcess and UIProcess, this is done
1865         sending animations information to UIProcess.
1866
1867         Reviewed by Noam Rosenthal.
1868
1869         * Shared/WebCoreArgumentCoders.cpp:
1870         (CoreIPC::::encode):
1871         (CoreIPC::::decode):
1872
1873         Encode/Decode RefPtr<Animation> instead of Animation class. This facilitates
1874         the data serialization.
1875
1876         * Shared/WebCoreArgumentCoders.h:
1877         * Shared/WebLayerTreeInfo.cpp:
1878         (WebKit::WebLayerInfo::encode):
1879         (WebKit::WebLayerInfo::decode):
1880         (WebKit::WebLayerAnimation::encode):
1881         (WebKit::WebLayerAnimation::decode):
1882
1883         Create WebLayerAnimation struct, it is used to send animation information
1884         to UIProcess.
1885
1886         * Shared/WebLayerTreeInfo.h:
1887         (WebKit::WebLayerAnimation::WebLayerAnimation):
1888         * UIProcess/LayerTreeHostProxy.h:
1889         * UIProcess/qt/LayerTreeHostProxyQt.cpp:
1890         (WebKit::LayerTreeHostProxy::LayerTreeHostProxy):
1891         (WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
1892         (WebKit::LayerTreeHostProxy::didFireViewportUpdateTimer):
1893         (WebKit::LayerTreeHostProxy::syncLayerParameters):
1894         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
1895         (WebCore::WebGraphicsLayer::addAnimation):
1896         (WebCore::WebGraphicsLayer::pauseAnimation):
1897         (WebCore::WebGraphicsLayer::removeAnimation):
1898         (WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
1899
1900 2011-11-21  Pavel Feldman  <pfeldman@chromium.org>
1901
1902         Web Inspector: [WebKit2] Do not access InspectorController from the "Develop" menu code.
1903         https://bugs.webkit.org/show_bug.cgi?id=63009
1904
1905         Reviewed by Yury Semikhatsky.
1906
1907         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1908         (WebKit::WebInspectorClient::openInspectorFrontend):
1909         * WebProcess/WebPage/WebInspector.cpp:
1910         (WebKit::WebInspector::WebInspector):
1911         (WebKit::WebInspector::createInspectorPage):
1912         (WebKit::WebInspector::showConsole):
1913         (WebKit::WebInspector::startJavaScriptDebugging):
1914         (WebKit::WebInspector::stopJavaScriptDebugging):
1915         (WebKit::WebInspector::setJavaScriptProfilingEnabled):
1916         (WebKit::WebInspector::startJavaScriptProfiling):
1917         (WebKit::WebInspector::stopJavaScriptProfiling):
1918         (WebKit::WebInspector::startPageProfiling):
1919         (WebKit::WebInspector::stopPageProfiling):
1920         * WebProcess/WebPage/WebInspector.h:
1921
1922 2011-11-21  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1923
1924         [Qt] Add WebView.view attached property support for dialogs in QML
1925         https://bugs.webkit.org/show_bug.cgi?id=72825
1926
1927         Reviewed by Simon Hausmann.
1928
1929         When creating new dialogs, fill their WebView.view attached property
1930         with the WebView that's creating them. This follows the same pattern
1931         as QtQuick's ListView, enabling the usage of the same dialog component
1932         for different WebViews.
1933
1934         * UIProcess/API/qt/qquickwebview.cpp:
1935         (QQuickWebViewPrivate::runJavaScriptAlert):
1936         (QQuickWebViewPrivate::runJavaScriptConfirm):
1937         (QQuickWebViewPrivate::runJavaScriptPrompt):
1938         (QQuickWebViewPrivate::setViewInAttachedProperties):
1939         (QQuickWebViewAttached::QQuickWebViewAttached):
1940         (QQuickWebViewAttached::setView):
1941         (QQuickWebView::qmlAttachedProperties):
1942         * UIProcess/API/qt/qquickwebview_p.h:
1943         * UIProcess/API/qt/qquickwebview_p_p.h:
1944         * UIProcess/API/qt/tests/qmltests/WebView/tst_javaScriptDialogs.qml:
1945         * UIProcess/qt/QtDialogRunner.h:
1946         (QtDialogRunner::dialog):
1947
1948 2011-11-21  Jochen Eisinger  <jochen@chromium.org>
1949
1950         Implement Meta referrer
1951         https://bugs.webkit.org/show_bug.cgi?id=72674
1952
1953         Reviewed by Adam Barth.
1954
1955         * WebProcess/Plugins/PluginView.cpp:
1956         (WebKit::PluginView::loadURL):
1957
1958 2011-11-21  Carlos Garcia Campos  <cgarcia@igalia.com>
1959
1960         Unreviewed. Fix make distcheck build.
1961
1962         * GNUmakefile.am:
1963
1964 2011-10-17  Antonio Gomes  <agomes@rim.com>
1965
1966         Pass a Frame* parameter in EditorClient::respondToChangedSelection
1967         https://bugs.webkit.org/show_bug.cgi?id=70248
1968
1969         Reviewed by Ryosuke Niwa.
1970
1971         * WebProcess/WebCoreSupport/WebEditorClient.cpp: Make use of the newly added Frame* parameter.
1972         (WebKit::WebEditorClient::respondToChangedSelection):
1973         * WebProcess/WebCoreSupport/WebEditorClient.h:
1974
1975 2011-11-17  Mark Rowe  <mrowe@apple.com>
1976
1977         <http://webkit.org/b/72646> Disable deprecation warnings around code where we cannot easily
1978         switch away from the deprecated APIs.
1979
1980         Reviewed by Sam Weinig.
1981
1982         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
1983
1984 2011-11-19  Sheriff Bot  <webkit.review.bot@gmail.com>
1985
1986         Unreviewed, rolling out r100834.
1987         http://trac.webkit.org/changeset/100834
1988         https://bugs.webkit.org/show_bug.cgi?id=72806
1989
1990         this patch makes Qt run-webkit-test exit before finishing
1991         (Requested by igoroliveira on #webkit).
1992
1993         * Shared/WebCoreArgumentCoders.cpp:
1994         (CoreIPC::::encode):
1995         (CoreIPC::::decode):
1996         * Shared/WebCoreArgumentCoders.h:
1997         * Shared/WebLayerTreeInfo.cpp:
1998         (WebKit::WebLayerInfo::encode):
1999         (WebKit::WebLayerInfo::decode):
2000         * Shared/WebLayerTreeInfo.h:
2001         * UIProcess/LayerTreeHostProxy.h:
2002         * UIProcess/qt/LayerTreeHostProxyQt.cpp:
2003         (WebKit::LayerTreeHostProxy::LayerTreeHostProxy):
2004         (WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
2005         (WebKit::LayerTreeHostProxy::syncLayerParameters):
2006         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
2007         (WebCore::WebGraphicsLayer::addAnimation):
2008         (WebCore::WebGraphicsLayer::pauseAnimation):
2009         (WebCore::WebGraphicsLayer::removeAnimation):
2010         (WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
2011
2012 2011-11-18  Sheriff Bot  <webkit.review.bot@gmail.com>
2013
2014         Unreviewed, rolling out r100826.
2015         http://trac.webkit.org/changeset/100826
2016         https://bugs.webkit.org/show_bug.cgi?id=72786
2017
2018         Broke Chromium Mac build (Requested by aklein on #webkit).
2019
2020         * UIProcess/API/mac/PageClientImpl.h:
2021         * UIProcess/API/mac/PageClientImpl.mm:
2022         * UIProcess/PageClient.h:
2023         * UIProcess/WebPageProxy.cpp:
2024         * UIProcess/WebPageProxy.h:
2025         * UIProcess/WebPageProxy.messages.in:
2026         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
2027         (WebKit::BuiltInPDFView::scrollbarStyleChanged):
2028         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
2029         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2030         * WebProcess/WebCoreSupport/WebChromeClient.h:
2031
2032 2011-11-18  Igor Oliveira  <igor.oliveira@openbossa.org>
2033
2034         [WK2][Qt] Move Accelerated Composite animations to UIProcess
2035         https://bugs.webkit.org/show_bug.cgi?id=72753
2036
2037         Currently, all the accelerated compositing animations are applied in WebProcess and
2038         for each frame generated, WebProcess needs to sync with UIProcess.
2039
2040         This patch moves the accelerated compositing animations to UIProcess reducing the
2041         amount of synchronization messages between WebProcess and UIProcess, this is done
2042         sending animations information to UIProcess.
2043
2044         Reviewed by Noam Rosenthal.
2045
2046         * Shared/WebCoreArgumentCoders.cpp:
2047         (CoreIPC::::encode):
2048         (CoreIPC::::decode):
2049
2050         Encode/Decode RefPtr<Animation> instead of Animation class. This facilitates
2051         the data serialization.
2052
2053         * Shared/WebCoreArgumentCoders.h:
2054         * Shared/WebLayerTreeInfo.cpp:
2055         (WebKit::WebLayerInfo::encode):
2056         (WebKit::WebLayerInfo::decode):
2057         (WebKit::WebLayerAnimation::encode):
2058         (WebKit::WebLayerAnimation::decode):
2059
2060         Create WebLayerAnimation struct, it is used to send animation information
2061         to UIProcess.
2062
2063         * Shared/WebLayerTreeInfo.h:
2064         (WebKit::WebLayerAnimation::WebLayerAnimation):
2065         * UIProcess/LayerTreeHostProxy.h:
2066         * UIProcess/qt/LayerTreeHostProxyQt.cpp:
2067         (WebKit::LayerTreeHostProxy::LayerTreeHostProxy):
2068         (WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
2069         (WebKit::LayerTreeHostProxy::updateSceneGraphUpdateTimerFired):
2070         (WebKit::LayerTreeHostProxy::syncLayerParameters):
2071         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
2072         (WebCore::WebGraphicsLayer::addAnimation):
2073         (WebCore::WebGraphicsLayer::pauseAnimation):
2074         (WebCore::WebGraphicsLayer::removeAnimation):
2075         (WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
2076
2077 2011-11-18  Beth Dakin  <bdakin@apple.com>
2078
2079         https://bugs.webkit.org/show_bug.cgi?id=72551
2080         When the recommended scrollbar style changes, WKView's tracking options should 
2081         adjust accordingly
2082         -and corresponding-
2083         <rdar://problem/10409328>
2084
2085         Reviewed by Darin Adler.
2086
2087         These new functions take care of passing along the 
2088         recommendedScrollbarStyleDidChange() message that originates in the ChromeClient. 
2089         * UIProcess/API/mac/PageClientImpl.h:
2090         * UIProcess/PageClient.h:
2091         * UIProcess/WebPageProxy.cpp:
2092         (WebKit::WebPageProxy::recommendedScrollbarStyleDidChange):
2093         * UIProcess/WebPageProxy.h:
2094         * UIProcess/WebPageProxy.messages.in:
2095         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2096         (WebKit::WebChromeClient::recommendedScrollbarStyleDidChange):
2097         * WebProcess/WebCoreSupport/WebChromeClient.h:
2098
2099         This is where we actually respond to the recommendedScrollbarStyleDidChange 
2100         message. We remove the existing tracking area and create a new tracking area with 
2101         the appropriate tracking options.
2102         * UIProcess/API/mac/PageClientImpl.mm:
2103         (WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
2104
2105         BuiltInPDFView inherits from WebCore::ScrollableArea, so scrollbarStyleChanged() 
2106         must now take two parameters like the one in ScrollableArea.
2107         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
2108         (WebKit::BuiltInPDFView::scrollbarStyleChanged):
2109         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
2110
2111 2011-11-18  Dinu Jacob  <dinu.jacob@nokia.com>
2112
2113         [Qt][Wk2] Add an API test for scroll request from javascript
2114         https://bugs.webkit.org/show_bug.cgi?id=72407
2115
2116         New API test added for QQuickWebView for javascript scroll request 
2117         Reviewed by Simon Hausmann.
2118
2119         * UIProcess/API/qt/tests/html/scroll.html: Added.
2120         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
2121         (tst_QQuickWebView::scrollRequest):
2122
2123 2011-11-18 No'am Rosenthal  <noam.rosenthal@nokia.com>
2124
2125         WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
2126         https://bugs.webkit.org/show_bug.cgi?id=61694
2127
2128         Add an ArgumentCoder for KeyframeValueList, and modify the TimingFunction ArgumentCoder to
2129         allow encoding const TimingFunctions and not just RefPtr<TimingFunction>.
2130
2131         Reviewed by Simon Hausmann.
2132
2133         * Scripts/webkit2/messages.py:
2134         * Shared/WebCoreArgumentCoders.cpp:
2135         (CoreIPC::::encode):
2136         (CoreIPC::::decode):
2137         * Shared/WebCoreArgumentCoders.h:
2138
2139 2011-11-18  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2140
2141         [Qt] Guard for the viewportInteractionEngine as it doesn't always exist.
2142
2143         Reviewed by Antonio Gomes.
2144
2145         The engine is non-existent when the view is configured to use desktop
2146         behavior.
2147
2148         * UIProcess/qt/QtWebPageProxy.cpp:
2149         (QtWebPageProxy::handleWheelEvent):
2150         (QtWebPageProxy::didFindZoomableArea):
2151
2152 2011-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>
2153
2154         [GTK] Send DidCreateDestination to DownloadProxy when destination has been created
2155         https://bugs.webkit.org/show_bug.cgi?id=72724
2156
2157         Reviewed by Martin Robinson.
2158
2159         * WebProcess/Downloads/soup/DownloadSoup.cpp:
2160         (WebKit::DownloadClient::didReceiveResponse): Call
2161         didCreateDestination() when destination URI has been successfully
2162         created.
2163
2164 2011-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>
2165
2166         [GTK] Cancel current download operation before download object is deleted
2167         https://bugs.webkit.org/show_bug.cgi?id=72721
2168
2169         Reviewed by Martin Robinson.
2170
2171         It fixes a crash in the web process when a download finishes early
2172         due to a failure.
2173
2174         * WebProcess/Downloads/soup/DownloadSoup.cpp:
2175         (WebKit::Download::cancel): Delete current ResourceHandle.
2176         (WebKit::Download::platformInvalidate): If there's a
2177         ResourceHandle active, cancel the download operation and delete
2178         the handle.
2179         (WebKit::Download::platformDidFinish): Delete current ResourceHandle.
2180
2181 2011-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>
2182
2183         [GTK] Downloads not started by WebView only fail for transport errors
2184         https://bugs.webkit.org/show_bug.cgi?id=72718
2185
2186         Reviewed by Martin Robinson.
2187
2188         * WebProcess/Downloads/soup/DownloadSoup.cpp:
2189         (WebKit::DownloadClient::didReceiveResponse): Check if the http
2190         status of the response is an error code and finish the download
2191         with an error in such case.
2192
2193 2011-11-17  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2194
2195         [Qt] Support customizing JS alert/confirm/prompt dialogs using QML
2196         https://bugs.webkit.org/show_bug.cgi?id=72319
2197
2198         Reviewed by Simon Hausmann.
2199
2200         Adds alertDialog, confirmDialog and promptDialog properties to QQuickWebView's
2201         privateObject. These are QML components that are created by the webview when the
2202         corresponding function is called in JS.
2203
2204         The dialogs are created in a context that contains a model object, similar to
2205         ListView delegates. The "message" and "defaultValue" parameters are available
2206         in the model object, as well as slots expected to be called by the dialog.
2207
2208         This commit removes the old code for supporting QWidget builtin dialogs. The code
2209         wasn't working properly (closing any dialog was closing the app after QWindow
2210         refactoring in Qt5).
2211
2212         * Target.pri:
2213         * UIProcess/API/qt/qquickwebview.cpp:
2214         (QQuickWebViewPrivate::runJavaScriptAlert):
2215         (QQuickWebViewPrivate::runJavaScriptConfirm):
2216         (QQuickWebViewPrivate::runJavaScriptPrompt):
2217         (QQuickWebViewExperimental::alertDialog):
2218         (QQuickWebViewExperimental::setAlertDialog):
2219         (QQuickWebViewExperimental::confirmDialog):
2220         (QQuickWebViewExperimental::setConfirmDialog):
2221         (QQuickWebViewExperimental::promptDialog):
2222         (QQuickWebViewExperimental::setPromptDialog):
2223         * UIProcess/API/qt/qquickwebview_p.h:
2224         * UIProcess/API/qt/qquickwebview_p_p.h:
2225         * UIProcess/API/qt/tests/qmltests/WebView/tst_javaScriptDialogs.qml: Added.
2226         * UIProcess/API/qt/tests/qmltests/common/alert.html: Added.
2227         * UIProcess/API/qt/tests/qmltests/common/confirm.html: Added.
2228         * UIProcess/API/qt/tests/qmltests/common/prompt.html: Added.
2229         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2230         * UIProcess/qt/QtDialogRunner.cpp: Added.
2231         (QtDialogRunner::QtDialogRunner):
2232         (QtDialogRunner::~QtDialogRunner):
2233         (DialogContextObject::DialogContextObject):
2234         (DialogContextObject::message):
2235         (DialogContextObject::defaultValue):
2236         (DialogContextObject::dismiss):
2237         (DialogContextObject::accept):
2238         (DialogContextObject::reject):
2239         (QtDialogRunner::initForAlert):
2240         (QtDialogRunner::initForConfirm):
2241         (QtDialogRunner::initForPrompt):
2242         (QtDialogRunner::createDialog):
2243         * UIProcess/qt/QtDialogRunner.h: Added.
2244         (QtDialogRunner::wasAccepted):
2245         (QtDialogRunner::result):
2246         (QtDialogRunner::onAccepted):
2247
2248 2011-11-18  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2249
2250         [Qt] Support wheel event together with resizesToContents
2251
2252         Reviewed by Simon Hausmann.
2253
2254         * UIProcess/API/qt/qquickwebpage.cpp:
2255         * UIProcess/qt/QtViewportInteractionEngine.cpp:
2256         (WebKit::QtViewportInteractionEngine::wheelEvent):
2257         * UIProcess/qt/QtViewportInteractionEngine.h:
2258         * UIProcess/qt/QtWebPageProxy.cpp:
2259         (QtWebPageProxy::handleWheelEvent):
2260
2261 2011-11-18  Simon Hausmann  <simon.hausmann@nokia.com>
2262
2263         [Qt][WK2] Layer violation: WebPopupMenuProxyQtDesktop.cpp uses files from WebKit/qt
2264         https://bugs.webkit.org/show_bug.cgi?id=72696
2265
2266         Reviewed by Kenneth Rohde Christiansen.
2267
2268         Implement the WK2 desktop popup by simply subclassing QComboBox and doing the
2269         same thing as QtWebComboBox from WK1 (a few lines of code).
2270
2271         * UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:
2272         (WebKit::WebPopupMenuProxyQtDesktop::WebPopupMenuProxyQtDesktop):
2273         (WebKit::WebPopupMenuProxyQtDesktop::~WebPopupMenuProxyQtDesktop):
2274         (WebKit::WebPopupMenuProxyQtDesktop::showPopupMenu):
2275         (WebKit::WebPopupMenuProxyQtDesktop::hidePopupMenu):
2276         (WebKit::WebPopupMenuProxyQtDesktop::eventFilter):
2277         (WebKit::WebPopupMenuProxyQtDesktop::setSelectedIndex):
2278         (WebKit::WebPopupMenuProxyQtDesktop::populate):
2279         * UIProcess/qt/WebPopupMenuProxyQtDesktop.h:
2280
2281 2011-11-18  Zeno Albisser  <zeno@webkit.org>
2282
2283         [Qt][WK2] setViewportInteractionEngine must also set the InteractionEngine for the tap recognizer.
2284         https://bugs.webkit.org/show_bug.cgi?id=72717
2285
2286         Reviewed by Kenneth Rohde Christiansen.
2287
2288         * UIProcess/qt/QtTapGestureRecognizer.cpp:
2289         (WebKit::QtTapGestureRecognizer::setViewportInteractionEngine):
2290         * UIProcess/qt/QtTapGestureRecognizer.h:
2291         * UIProcess/qt/QtWebPageProxy.cpp:
2292         (QtWebPageProxy::setViewportInteractionEngine):
2293         * UIProcess/qt/QtWebPageProxy.h:
2294
2295 2011-11-18  Simon Hausmann  <simon.hausmann@nokia.com>
2296
2297         [Qt][WK2] Fix popups for select elements.
2298
2299         Reviewed by Tor Arne Vestbø.
2300
2301         * UIProcess/qt/QtWebPageProxy.cpp:
2302         (QtWebPageProxy::createPopupMenuProxy): Fall back to the "desktop" implementation
2303         for the moment. Better than nothing :)
2304
2305 2011-11-18  Simon Hausmann  <simon.hausmann@nokia.com>
2306
2307         [Qt] Unreviewed debug build fix
2308
2309         * UIProcess/qt/QtWebPageProxy.cpp:
2310         (QtWebPageProxy::QtWebPageProxy): Don't assert on a non-existant
2311         variable.
2312
2313 2011-11-18  Simon Hausmann  <simon.hausmann@nokia.com>
2314
2315         [Qt] Removal of QtViewInterface part 3
2316
2317         Reviewed by Kenneth Rohde Christiansen.
2318
2319         Move the remaining forwarded calls from ClientImpl that went through
2320         ViewInterface and then PageProxy or WebView to go straight to
2321         QtWebPageProxy. QtViewInterface is empty now and therefore removed.
2322
2323         * Target.pri:
2324         * UIProcess/API/qt/qquickwebpage_p.h:
2325         * UIProcess/API/qt/qquickwebpage_p_p.h:
2326         * UIProcess/API/qt/qquickwebview.cpp:
2327         (QQuickWebViewPrivate::initialize):
2328         (QQuickWebViewPrivate::chooseFiles):
2329         * UIProcess/API/qt/qquickwebview_p.h:
2330         * UIProcess/API/qt/qquickwebview_p_p.h:
2331         * UIProcess/qt/ClientImpl.cpp:
2332         (qt_wk_runJavaScriptAlert):
2333         (qt_wk_runJavaScriptConfirm):
2334         (qt_wk_runJavaScriptPrompt):
2335         (qt_wk_setStatusText):
2336         (qt_wk_runOpenPanel):
2337         (qt_wk_mouseDidMoveOverElement):
2338         (setupPageUiClient):
2339         * UIProcess/qt/QtViewInterface.cpp: Removed.
2340         * UIProcess/qt/QtViewInterface.h: Removed.
2341         * UIProcess/qt/QtWebPageProxy.cpp:
2342         (QtWebPageProxy::QtWebPageProxy):
2343         (QtWebPageProxy::didChangeStatusText):
2344         (QtWebPageProxy::didMouseMoveOverElement):
2345         (QtWebPageProxy::showContextMenu):
2346         (QtWebPageProxy::hideContextMenu):
2347         (QtWebPageProxy::runJavaScriptAlert):
2348         (QtWebPageProxy::runJavaScriptConfirm):
2349         (QtWebPageProxy::runJavaScriptPrompt):
2350         (QtWebPageProxy::chooseFiles):
2351         (QtWebPageProxy::createContextMenuProxy):
2352         (QtWebPageProxy::didChangeLoadProgress):
2353         * UIProcess/qt/QtWebPageProxy.h:
2354         (QtWebPageProxy::contextMenuItemSelected):
2355         * UIProcess/qt/WebContextMenuProxyQt.cpp:
2356         (WebKit::WebContextMenuProxyQt::WebContextMenuProxyQt):
2357         (WebKit::WebContextMenuProxyQt::create):
2358         (WebKit::WebContextMenuProxyQt::hideContextMenu):
2359         * UIProcess/qt/WebContextMenuProxyQt.h:
2360
2361 2011-11-18  Zalan Bujtas  <zbujtas@gmail.com>
2362
2363         [Qt][WK2] UI process segfaults, when visiblity properties are set while the WebProcess is dead.
2364         https://bugs.webkit.org/show_bug.cgi?id=72699
2365
2366         The drawing area may be null, if the web process has crashed, but not yet recovered.
2367         Always null check against drawing area.
2368
2369         Reviewed by Simon Hausmann.
2370
2371         * UIProcess/qt/QtWebPageProxy.cpp:
2372         (QtWebPageProxy::setDrawingAreaSize):
2373         (QtWebPageProxy::setVisibleContentRectAndScale):
2374         (QtWebPageProxy::setVisibleContentRectTrajectoryVector):
2375
2376 2011-11-18  Simon Hausmann  <simon.hausmann@nokia.com>
2377
2378         [Qt] Removal of QtViewInterface part 2
2379
2380         Reviewed by Kenneth Rohde Christiansen.
2381
2382         Move all functions that forwarded from QtWebPageProxy to QtViewInterface and then
2383         to QQuickWebView straight into QtWebPageProxy.
2384
2385         * UIProcess/API/qt/qquickwebpage_p.h:
2386         * UIProcess/API/qt/qquickwebview.cpp:
2387         (QQuickWebViewPrivate::initialize):
2388         * UIProcess/API/qt/qquickwebview_p_p.h:
2389         * UIProcess/qt/QtViewInterface.cpp:
2390         * UIProcess/qt/QtViewInterface.h:
2391         * UIProcess/qt/QtWebPageProxy.cpp:
2392         (QtWebPageProxy::QtWebPageProxy):
2393         (QtWebPageProxy::setCursor):
2394         (QtWebPageProxy::isViewWindowActive):
2395         (QtWebPageProxy::isViewVisible):
2396         (QtWebPageProxy::pageDidRequestScroll):
2397         (QtWebPageProxy::didFinishFirstNonEmptyLayout):
2398         (QtWebPageProxy::didChangeContentsSize):
2399         (QtWebPageProxy::didChangeViewportProperties):
2400         (QtWebPageProxy::toolTipChanged):
2401         (QtWebPageProxy::didChangeUrl):
2402         (QtWebPageProxy::didChangeTitle):
2403         (QtWebPageProxy::loadDidBegin):
2404         (QtWebPageProxy::loadDidCommit):
2405         (QtWebPageProxy::loadDidSucceed):
2406         (QtWebPageProxy::loadDidFail):
2407         (QtWebPageProxy::didRelaunchProcess):
2408         (QtWebPageProxy::processDidCrash):
2409         (QtWebPageProxy::startDrag):
2410         (QtWebPageProxy::didReceiveDownloadResponse):
2411         * UIProcess/qt/QtWebPageProxy.h:
2412
2413 2011-11-18  Simon Hausmann  <simon.hausmann@nokia.com>
2414
2415         [Qt] Removal of QtViewInterface part 1
2416
2417         Reviewed by Kenneth Rohde Christiansen.
2418
2419         Replace functions of QtViewInterface that forward to QQuickWebPage with direct
2420         usage of QQuickWebPage. Also removed some dead code.
2421
2422         * UIProcess/API/qt/qquickwebpage.cpp:
2423         (QQuickWebPage::sceneGraphUpdateQueue):
2424         * UIProcess/API/qt/qquickwebpage_p.h:
2425         * UIProcess/API/qt/qquickwebview.cpp:
2426         (QQuickWebViewPrivate::initialize):
2427         * UIProcess/TiledDrawingAreaProxy.h:
2428         * UIProcess/qt/QtViewInterface.cpp:
2429         (WebKit::QtViewInterface::QtViewInterface):
2430         (WebKit::QtViewInterface::isVisible):
2431         * UIProcess/qt/QtViewInterface.h:
2432         * UIProcess/qt/QtWebPageProxy.cpp:
2433         (QtWebPageProxy::QtWebPageProxy):
2434         (QtWebPageProxy::setViewNeedsDisplay):
2435         (QtWebPageProxy::viewSize):
2436         (QtWebPageProxy::isViewFocused):
2437         (QtWebPageProxy::isViewVisible):
2438         (QtWebPageProxy::didRelaunchProcess):
2439         * UIProcess/qt/QtWebPageProxy.h:
2440         (QtWebPageProxy::qmlWebPage):
2441         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp:
2442
2443 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
2444
2445         [Qt] Layer violation: ThirdPartyCookiesQt.cpp uses QWebSettings in two places
2446         https://bugs.webkit.org/show_bug.cgi?id=72597
2447
2448         Reviewed by Kenneth Rohde Christiansen.
2449
2450         Stub implementation of new NetworkingContext::thirdPartyCookiePolicyPermission
2451         API.
2452
2453         * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.cpp:
2454         (WebCore::WebFrameNetworkingContext::thirdPartyCookiePolicyPermission):
2455         * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.h:
2456
2457 2011-11-17  Martin Robinson  <mrobinson@igalia.com>
2458
2459         [GTK] The process freezes when you right click on windowless Flash
2460         https://bugs.webkit.org/show_bug.cgi?id=69123
2461
2462         Reviewed by Xan Lopez.
2463
2464         Add a new plugin quirk for dealing with right-clicking on
2465         windowless Flash on x86_64 machines. This already exists for
2466         WebKit1.
2467
2468         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
2469         (WebKit::NetscapePluginModule::determineQuirks): If the plugin is
2470         Flash and we are on x86_64, then disable sending right-clicking
2471         events while in windowless mode.
2472         * Shared/Plugins/PluginQuirks.h: Add the new quirk.
2473         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
2474         (WebKit::NetscapePlugin::platformHandleMouseEvent): If the quirk
2475         is active  don't send right click events.
2476
2477 2011-11-17  Igor Oliveira  <igor.oliveira@openbossa.org>
2478
2479         [WK2] Fix TransformOperation serialization
2480         https://bugs.webkit.org/show_bug.cgi?id=72625
2481
2482         SimpleArgumentCoder can encode and decode just POD types. And according the 
2483         ISO/IEC 14882, POD types does not have virtual methods, however TransformOperation
2484         has pure virtual methods.
2485
2486         This patch fixes TransformOperation subclass serialization.
2487
2488         Reviewed by Noam Rosenthal.
2489
2490         * Shared/WebCoreArgumentCoders.cpp:
2491         (CoreIPC::::encode):
2492         (CoreIPC::::decode):
2493         (CoreIPC::encodeOperation):
2494         (CoreIPC::decodeOperation):
2495         * Shared/WebCoreArgumentCoders.h:
2496
2497 2011-11-17  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2498
2499         [Qt][WK2] Fix zero sized views in all QML tests
2500         https://bugs.webkit.org/show_bug.cgi?id=72633
2501
2502         Reviewed by Noam Rosenthal.
2503
2504         After r100590, zero sized WebViews are no longer supported and,
2505         therefore, the QML API tests need to be fixed.
2506
2507         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadFail.qml:
2508         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadProgress.qml:
2509         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadProgressSignal.qml:
2510         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadZeroSizeView.qml: Removed.
2511         * UIProcess/API/qt/tests/qmltests/WebView/tst_preferences.qml:
2512         * UIProcess/API/qt/tests/qmltests/WebView/tst_properties.qml:
2513         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2514
2515 2011-11-17  Alexis Menard  <alexis.menard@openbossa.org>
2516
2517         [Qt][WK2] Don't export the private QQuickView.
2518
2519         Reviewed by Kenneth Rohde Christiansen.
2520
2521         We don't need to export that class anymore as the experimental QML plugin
2522         does not expose this object anymore.
2523
2524         * UIProcess/API/qt/qquickwebview_p_p.h:
2525
2526 2011-11-17  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2527
2528         [Qt] Expose setUseTraditionalDesktopBehaviour() in QML experimental API
2529         https://bugs.webkit.org/show_bug.cgi?id=72610
2530
2531         Reviewed by Kenneth Rohde Christiansen.
2532
2533         * UIProcess/API/qt/qquickwebview_p.h:
2534
2535 2011-11-17  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2536
2537         Print warning for the Qt port when a process crashes and is relaunched
2538         https://bugs.webkit.org/show_bug.cgi?id=72607
2539
2540         Reviewed by Antonio Gomes.
2541
2542         Make the QtViewInterface::processDidCrash take a URL string argument,
2543         for being able to say which url was the origin of the crash.
2544
2545         We now additionally store the load state and url at process exit. This
2546         is needed for printing the warning and for further crash handling.
2547
2548         * UIProcess/PageClient.h:
2549         * UIProcess/WebPageProxy.cpp:
2550         (WebKit::WebPageProxy::processDidCrash):
2551         * UIProcess/qt/QtViewInterface.cpp:
2552         (WebKit::QtViewInterface::processDidCrash):
2553         (WebKit::QtViewInterface::didRelaunchProcess):
2554         * UIProcess/qt/QtViewInterface.h:
2555         * UIProcess/qt/QtWebPageProxy.cpp:
2556         (QtWebPageProxy::processDidCrash):
2557         * UIProcess/qt/QtWebPageProxy.h:
2558
2559 2011-11-17  Alexis Menard  <alexis.menard@openbossa.org>
2560
2561         [Qt][WK2] Cleanup dead code in QtWebPageProxy.
2562         https://bugs.webkit.org/show_bug.cgi?id=72608
2563
2564         Reviewed by Simon Hausmann.
2565
2566         Remove some dead code after we merged our views.
2567         QQuickWebView is now using AC which means that this
2568         path is never called now.
2569
2570         * UIProcess/qt/QtWebPageProxy.cpp:
2571         (QtWebPageProxy::didReceiveDownloadResponse):
2572         * UIProcess/qt/QtWebPageProxy.h:
2573
2574 2011-11-17  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2575
2576         [Qt] Remove forwarding header for WebKit2 C API
2577
2578         The Qt port of WebKit does not provide a C-API for the View classes.
2579
2580         Reviewed by Simon Hausmann.
2581
2582         * UIProcess/API/C/WebKit2.h:
2583         * UIProcess/API/qt/WKView.h: Removed.
2584
2585 2011-11-17  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2586
2587         [Qt] Resolve import and web-process paths automatically for QML tests
2588
2589         Reviewed by Kenneth Rohde Christiansen.
2590
2591         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2592         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
2593         (main):
2594
2595 2011-11-17  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2596
2597         [Qt] Move WebKit2 C++ APIs to private API and build QML extension plugin on top of that
2598
2599         A new extension object has been added to QQuickWebView (the same approach should be used
2600         for other API classes that need experimental APIs). The QML extension mechanism is then
2601         built on top of the experimental object.
2602
2603         https://bugs.webkit.org/show_bug.cgi?id=72522
2604
2605         Reviewed by Simon Hausmann.
2606
2607         * Target.pri:
2608         * UIProcess/API/qt/qquickwebpage.cpp:
2609         * UIProcess/API/qt/qquickwebpage.h: Removed.
2610         * UIProcess/API/qt/qquickwebpage_p.h:
2611         * UIProcess/API/qt/qquickwebpage_p_p.h: Renamed from Source/WebKit2/UIProcess/API/qt/qquickwebviewprivateextension_p.h.
2612         * UIProcess/API/qt/qquickwebview.cpp:
2613         (QQuickWebViewExperimental::QQuickWebViewExperimental):
2614         (QQuickWebViewExperimental::~QQuickWebViewExperimental):
2615         (QQuickWebViewExperimental::setUseTraditionalDesktopBehaviour):
2616         (QQuickWebView::QQuickWebView):
2617         (QQuickWebView::experimental):
2618         * UIProcess/API/qt/qquickwebview.h: Removed.
2619         * UIProcess/API/qt/qquickwebview_p.h:
2620         * UIProcess/API/qt/qquickwebview_p_p.h: Copied from Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h.
2621         * UIProcess/API/qt/qquickwebviewprivateextension.cpp: Removed.
2622         * UIProcess/API/qt/qwebdownloaditem.cpp:
2623         * UIProcess/API/qt/qwebdownloaditem.h: Removed.
2624         * UIProcess/API/qt/qwebdownloaditem_p.h:
2625         * UIProcess/API/qt/qwebdownloaditem_p_p.h: Copied from Source/WebKit2/UIProcess/API/qt/qwebdownloaditem_p.h.
2626         (QWebDownloadItemPrivate::didReceiveResponse):
2627         * UIProcess/API/qt/qwebpreferences.cpp:
2628         * UIProcess/API/qt/qwebpreferences.h: Removed.
2629         * UIProcess/API/qt/qwebpreferences_p.h:
2630         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2631         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
2632         (DesktopWebView::DesktopWebView):
2633         * UIProcess/API/qt/tests/qquickwebview/qquickwebview.pro:
2634         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
2635         * UIProcess/qt/QtDownloadManager.cpp:
2636         * UIProcess/qt/QtViewInterface.cpp:
2637         * UIProcess/qt/QtWebError.h:
2638         * UIProcess/qt/QtWebPageProxy.cpp:
2639
2640 2011-11-17  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2641
2642         Unreviewed build fix.
2643
2644         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2645         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
2646
2647 2011-11-16  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2648
2649         Make use-fixed-layout work reliable
2650         https://bugs.webkit.org/show_bug.cgi?id=72511
2651
2652         Reviewed by Simon Hausmann.
2653
2654         The code handling use-fixed-layout wasn't 100% reliable. The code
2655         was changed to make sure the value is always correct.
2656
2657         It also doesn't set the value by looking at the previous FrameView,
2658         as that wouldn't work in cases, such as when the web process has
2659         crashed.
2660
2661         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2662         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
2663         * WebProcess/WebPage/WebPage.cpp:
2664         (WebKit::WebPage::WebPage):
2665         (WebKit::WebPage::setResizesToContentsUsingLayoutSize):
2666         (WebKit::WebPage::setUseFixedLayout):
2667         * WebProcess/WebPage/WebPage.h:
2668         (WebKit::WebPage::useFixedLayout):
2669
2670             Store the state as m_useFixedLayout so that it can be used
2671             from the WebFrameLoaderClient.
2672
2673 2011-11-17  Zalan Bujtas  <zbujtas@gmail.com>
2674
2675         [Qt][WK2] Do not apply new viewport properties until after the first visually non-empty layout.
2676         https://bugs.webkit.org/show_bug.cgi?id=72508
2677
2678         Delay applying viewport properties on the viewport item until after the first visually non-empty
2679         layout finished. It enables the viewport to be intact until the new page is ready to be rendered.
2680
2681         Reviewed by Kenneth Rohde Christiansen.
2682
2683         * UIProcess/API/qt/qquickwebview.cpp:
2684         (QQuickWebViewPrivate::QQuickWebViewPrivate):
2685         (QQuickWebViewPrivate::loadDidCommit):
2686         (QQuickWebViewPrivate::didFinishFirstNonEmptyLayout):
2687         (QQuickWebViewPrivate::didChangeContentsSize):
2688         (QQuickWebViewPrivate::didChangeViewportProperties):
2689         (QQuickWebViewPrivate::updateViewportSize):
2690         (QQuickWebViewPrivate::computeViewportConstraints):
2691         * UIProcess/API/qt/qquickwebview_p.h:
2692         (PostTransitionState::isTransitioningToNewPage):
2693         * UIProcess/qt/ClientImpl.cpp:
2694         (qt_wk_didFirstVisuallyNonEmptyLayoutForFrame):
2695         (setupPageLoaderClient):
2696         * UIProcess/qt/QtViewInterface.cpp:
2697         (WebKit::QtViewInterface::didFinishFirstNonEmptyLayout):
2698         (WebKit::QtViewInterface::didChangeContentsSize):
2699         (WebKit::QtViewInterface::didChangeViewportProperties):
2700         (WebKit::QtViewInterface::startDrag):
2701         * UIProcess/qt/QtViewInterface.h:
2702         * UIProcess/qt/QtViewportInteractionEngine.cpp:
2703         (WebKit::QtViewportInteractionEngine::reset):
2704         (WebKit::QtViewportInteractionEngine::applyConstraints):
2705         * UIProcess/qt/QtViewportInteractionEngine.h:
2706         * UIProcess/qt/QtWebPageProxy.cpp:
2707         (QtWebPageProxy::didFinishFirstNonEmptyLayout):
2708         (QtWebPageProxy::didChangeContentsSize):
2709         (QtWebPageProxy::didChangeViewportProperties):
2710         (QtWebPageProxy::startDrag):
2711         * UIProcess/qt/QtWebPageProxy.h:
2712
2713 2011-11-17  Eunmi Lee  <eunmi15.lee@samsung.com>
2714
2715         Reviewed by Martin Robinson.
2716
2717         [WK2] Move gtk/BackingStoreGtk.cpp to cairo/BackingStoreCairo.cpp to share with EFL port.
2718         https://bugs.webkit.org/show_bug.cgi?id=62444
2719
2720         Rename gtk/BackingStoreGtk.cpp to cairo/BackingStoreCairo.cpp to share with EFL port.
2721         The gtk/BackingStoreGtk.cpp only has cairo dependency, so it can be shared with other port
2722         that uses cairo.
2723
2724         * GNUmakefile.am:
2725         * UIProcess/BackingStore.h:
2726         * UIProcess/cairo/BackingStoreCairo.cpp: Renamed from Source/WebKit2/UIProcess/gtk/BackingStoreGtk.cpp.
2727         (WebKit::BackingStore::paint):
2728         (WebKit::BackingStore::incorporateUpdate):
2729         (WebKit::BackingStore::scroll):
2730
2731 2011-11-17  Nayan Kumar K  <nayankk@motorola.com>
2732
2733         [WebKit2][gtk] Add few more properties to WebKitSettings
2734         https://bugs.webkit.org/show_bug.cgi?id=72468
2735
2736         Reviewed by Martin Robinson.
2737
2738         Add 'enable-private-browsing', 'enable-developer-extras, 'enable-resizable-text-areas'
2739         and 'enable-tabs-to-links' properties to WebKitSettings.
2740
2741         * UIProcess/API/gtk/WebKitSettings.cpp:
2742         (webKitSettingsSetProperty): Add new set functions.
2743         (webKitSettingsGetProperty): Add new get functions.
2744         (webkit_settings_class_init): Add new properties.
2745         (webkit_settings_get_enable_private_browsing): Get 'enable-private-browsing' property.
2746         (webkit_settings_set_enable_private_browsing): Set 'enable-private-browsing' property.
2747         (webkit_settings_get_enable_developer_extras): Get 'enable-developer-extras' property.
2748         (webkit_settings_set_enable_developer_extras): Set 'enable-developer-extras' property.
2749         (webkit_settings_get_enable_resizable_text_areas): Get 'enable-resizable-text-areas' property.
2750         (webkit_settings_set_enable_resizable_text_areas): Set 'enable-resizable-text-areas' property.
2751         (webkit_settings_get_enable_tabs_to_links): Get 'enable-tabs-to-links' property.
2752         (webkit_settings_set_enable_tabs_to_links): Set 'enable-tabs-to-links' property.
2753         * UIProcess/API/gtk/WebKitSettings.h: New public APIs added.
2754         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: New APIs added.
2755         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
2756         (testWebKitSettings): Add new tests.
2757
2758 2011-11-17  Carlos Garcia Campos  <cgarcia@igalia.com>
2759
2760         Unreviewed. Fix WebKit2 GTK+ build after r100569.
2761
2762         * WebProcess/Downloads/soup/DownloadSoup.cpp:
2763         (WebKit::DownloadClient::didReceiveResponse):
2764
2765 2011-11-17  Nayan Kumar K  <nayankk@motorola.com>
2766
2767         [WebKit2][gtk] Fix assert while running TestWebKitSettings
2768         https://bugs.webkit.org/show_bug.cgi?id=72469
2769
2770         Reviewed by Martin Robinson.
2771
2772         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
2773         (testWebKitSettings): Correct the test.
2774
2775 2011-11-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2776
2777         [GTK] Use a URI instead of local path to create download destination in WebKit2
2778         https://bugs.webkit.org/show_bug.cgi?id=72500
2779
2780         Reviewed by Philippe Normand.
2781
2782         * WebProcess/Downloads/soup/DownloadSoup.cpp:
2783         (WebKit::DownloadClient::didReceiveResponse): Use
2784         g_file_new_for_uri() instad of g_file_new_for_path(). Also use
2785         adoptGRef to fix a memory leak.
2786
2787 2011-11-16  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2788
2789         [Qt] Fix build after WTR AX support
2790         https://bugs.webkit.org/show_bug.cgi?id=72560
2791
2792         Reviewed by Geoffrey Garen.
2793
2794         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2795         (WKAccessibilityRootObject):
2796         (WKAccessibilityFocusedObject):
2797
2798 2011-11-11  Adrienne Walker  <enne@google.com>
2799
2800         [chromium] Expose mock scrollbars to window.internals
2801         https://bugs.webkit.org/show_bug.cgi?id=72195
2802
2803         Reviewed by James Robinson.
2804
2805         * win/WebKit2.def:
2806         * win/WebKit2CFLite.def:
2807
2808 2011-11-16  Dan Bernstein  <mitz@apple.com>
2809
2810         WebKit2 part of <rdar://problem/10262242> Add API for paginated display
2811         https://bugs.webkit.org/show_bug.cgi?id=72537
2812
2813         Reviewed by Anders Carlsson.
2814
2815         * Shared/WebPageCreationParameters.cpp:
2816         (WebKit::WebPageCreationParameters::encode): Encode the pagination mode and gap between pages.
2817         (WebKit::WebPageCreationParameters::decode): Decode the pagination mode and gap between pages.
2818         * Shared/WebPageCreationParameters.h: Added paginationMode and gapBetweenPages members.
2819         * UIProcess/API/C/WKPage.cpp:
2820         (WKPageSetPaginationMode): Added this API wrapper.
2821         (WKPageGetPaginationMode): Ditto.
2822         (WKPageSetGapBetweenPages): Ditto.
2823         (WKPageGetGapBetweenPages): Ditto.
2824         (WKPageGetPageCount): Ditto.
2825         * UIProcess/API/C/WKPagePrivate.h: Added an enum and a definition of WKPaginationMode and
2826         accessors.
2827         * UIProcess/API/mac/WKBrowsingContextController.mm:
2828         (-[WKBrowsingContextController setPaginationMode:]): Added this API wrapper.
2829         (-[WKBrowsingContextController paginationMode]): Ditto.
2830         (-[WKBrowsingContextController setGapBetweenPages:]): Ditto.
2831         (-[WKBrowsingContextController gapBetweenPages]): Ditto.
2832         (-[WKBrowsingContextController pageCount]): Ditto.
2833         * UIProcess/API/mac/WKBrowsingContextControllerPrivate.h: Added. Includes an enum and a definition
2834         of WKBrowsingContextPaginationMode and property declarations.
2835         * UIProcess/WebPageProxy.cpp:
2836         (WebKit::WebPageProxy::WebPageProxy): Added intialization of m_paginationMode, m_gapBetweenPages,
2837         and m_pageCount.
2838         (WebKit::WebPageProxy::setPaginationMode): Added this accessor, which caches the value and sends
2839         a message to the WebPage.
2840         (WebKit::WebPageProxy::setGapBetweenPages): Ditto.
2841         (WebKit::WebPageProxy::creationParameters): Set the pagination mode and gap between pages in the
2842         creation parameters.
2843         (WebKit::WebPageProxy::didChangePageCount): Added. Updates the cached page count.
2844         * UIProcess/WebPageProxy.h:
2845         (WebKit::WebPageProxy::paginationMode): Added this getter that returns a cached value.
2846         (WebKit::WebPageProxy::gapBetweenPages): Ditto.
2847         (WebKit::WebPageProxy::pageCount): Ditto.
2848         * UIProcess/WebPageProxy.messages.in: Added DidChangedPageCount, sent when the page count changes
2849         after layout.
2850         * WebKit2.xcodeproj/project.pbxproj: Added WKBrowsingContextControllerPrivate.h.
2851         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: 
2852         (WebKit::WebFrameLoaderClient::dispatchDidLayout): Added a call to WebPage::mainFrameDidLayout(),
2853         allowing the page to respond to changes in the column count.
2854         * WebProcess/WebPage/WebPage.cpp:
2855         (WebKit::WebPage::WebPage): Added initializer for m_cachedPageCount.
2856         (WebKit::WebPage::setPaginationMode): Added.
2857         (WebKit::WebPage::setGapBetweenPages): Added.
2858         (WebKit::WebPage::mainFrameDidLayout): Added. Sends a DidChangePageCount message to the UI process
2859         if the page count has changed.
2860         * WebProcess/WebPage/WebPage.h:
2861         * WebProcess/WebPage/WebPage.messages.in: Added SetPaginationMode and SetGapBetweenPages messages.
2862
2863 2011-11-16  Chris Fleizach  <cfleizach@apple.com>
2864
2865         WebKitTestRunner needs to support accessibility-related DRT APIs
2866         https://bugs.webkit.org/show_bug.cgi?id=42131
2867
2868         Allow the injected bundle to retrieve the focused and root accessibility
2869         objects.
2870
2871         Reviewed by Beth Dakin.
2872
2873         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2874         (WKAccessibilityRootObject):
2875         (WKAccessibilityFocusedObject):
2876         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
2877
2878 2011-11-16  Beth Dakin  <bdakin@apple.com>
2879
2880         https://bugs.webkit.org/show_bug.cgi?id=72400
2881         Scrollbar uiStateTransitionProgress requires tracking the mouse all the time
2882         -and corresponding-
2883         <rdar://problem/10409328>
2884
2885         Reviewed by Darin Adler.
2886
2887         Set up our initial tracking area based on the currently recommended scrollbar 
2888         style. Track the mouse all the time if the style is legacy.
2889         * UIProcess/API/mac/WKView.mm:
2890         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
2891
2892         Now that we might be getting mouseMoved events all the time even when the window 
2893         is not key, make sure we opt into the new 'onlyUpdateScrollbars' mode for 
2894         EventHandler::mouseMoved() when the window is not focused.
2895         * WebProcess/WebPage/WebPage.cpp:
2896         (WebKit::handleMouseEvent):
2897         (WebKit::WebPage::mouseEvent):
2898         (WebKit::WebPage::mouseEventSyncForTesting):
2899
2900 2011-11-16  Martin Robinson  <mrobinson@igalia.com>
2901
2902         [GTK][WEBKIT2] Link error running gtkdoc-scangobj
2903         https://bugs.webkit.org/show_bug.cgi?id=72365
2904
2905         Reviewed by Xan Lopez.
2906
2907         * webkit2gtk.pc.in: Add a libjavascriptcore requirement to the WebKit2 pkgconfig
2908         file so that the compiler links to it.
2909
2910 2011-11-16  Balazs Kelemen  <kbalazs@webkit.org>
2911
2912         [WK2][X11] Don't leak the colormap we created for the plugin
2913         https://bugs.webkit.org/show_bug.cgi?id=72144
2914
2915         Reviewed by Xan Lopez.
2916
2917         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
2918         (WebKit::NetscapePlugin::platformDestroy):
2919
2920 2011-11-16  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
2921
2922         [Qt] [WK2] Crash in Connection::readyReadHandler() on socket error
2923         https://bugs.webkit.org/show_bug.cgi?id=72392
2924
2925         Reviewed by Simon Hausmann.
2926
2927         Add QWeakPointer to SocketNotifierResourceGuard::m_socketNotifier to track
2928         deallocation of referenced object.
2929
2930         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
2931         (CoreIPC::SocketNotifierResourceGuard::SocketNotifierResourceGuard):
2932         (CoreIPC::SocketNotifierResourceGuard::~SocketNotifierResourceGuard):
2933
2934 2011-11-16  Zeno Albisser  <zeno@webkit.org>
2935
2936         [Qt][WK2][Mac] MiniBrowser cannot create socketpair.
2937         https://bugs.webkit.org/show_bug.cgi?id=72389
2938
2939         Use SOCK_DGRAM on mac instead of SOCK_SEQPACKET.
2940
2941         Reviewed by Tor Arne Vestbø.
2942
2943         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
2944
2945 2011-11-15  Carlos Garcia Campos  <cgarcia@igalia.com>
2946
2947         [GTK] Add webkit_web_view_load_request() to WebKit2 GTK+ API
2948         https://bugs.webkit.org/show_bug.cgi?id=72380
2949
2950         Reviewed by Martin Robinson.
2951
2952         It adds an initial implementation of WebKitNetworkRequest
2953         class that only contains a URI for now.
2954
2955         * GNUmakefile.am:
2956         * UIProcess/API/gtk/WebKitNetworkRequest.cpp: Added.
2957         (webkitNetworkRequestFinalize):
2958         (webkitNetworkRequestGetProperty):
2959         (webkitNetworkRequestSetProperty):
2960         (webkit_network_request_class_init):
2961         (webkit_network_request_init):
2962         (webkit_network_request_new):
2963         (webkit_network_request_get_uri):
2964         * UIProcess/API/gtk/WebKitNetworkRequest.h: Added.
2965         * UIProcess/API/gtk/WebKitWebView.cpp:
2966         (webkit_web_view_load_request): Use WKPageLoadURLRequest() to load
2967         the given WebKitNetworkRequest.
2968         * UIProcess/API/gtk/WebKitWebView.h:
2969         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
2970         * UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp:
2971         (testLoadRequest):
2972         (beforeAll):
2973         * UIProcess/API/gtk/tests/WebViewTest.cpp:
2974         (WebViewTest::loadRequest):
2975         * UIProcess/API/gtk/tests/WebViewTest.h:
2976         * UIProcess/API/gtk/webkit2.h:
2977
2978 2011-11-15  Andy Estes  <aestes@apple.com>
2979
2980         Consolidate the logic that creates run loop observers for flushing layer tree changes to CoreAnimation
2981         https://bugs.webkit.org/show_bug.cgi?id=72106
2982
2983         Reviewed by Anders Carlsson.
2984
2985         Remove code that schedules layer flushes and use LayerFlushScheduler instead.
2986
2987         * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.h: Replace
2988         m_flushPendingLayerChangesRunLoopObserver with m_layerFlushScheduler
2989         and implement the LayerFlushSchedulerClient interface.
2990         * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm:
2991         (WebKit::LayerTreeHostCAMac::LayerTreeHostCAMac): Instantiate
2992         m_layerFlushScheduler with the LayerTreeHost as the client.
2993         (WebKit::LayerTreeHostCAMac::~LayerTreeHostCAMac):
2994         (WebKit::LayerTreeHostCAMac::scheduleLayerFlush): Call LayerFlushScheduler::schedule().
2995         (WebKit::LayerTreeHostCAMac::setLayerFlushSchedulingEnabled): Call
2996         LayerFlushScheduler::suspend() or LayerFlushScheduler::resume().
2997         (WebKit::LayerTreeHostCAMac::invalidate): Call LayerFlushScheduler::invalidate().
2998         (WebKit::LayerTreeHostCAMac::flushLayers): Do the work that
2999         flushPendingLayerChangesRunLoopObserverCallback() used to do.
3000         (WebKit::LayerTreeHostCAMac::didPerformScheduledLayerFlush): Call LayerFlushScheduler::invalidate().
3001
3002 2011-11-15  Sam Weinig  <sam@webkit.org>
3003
3004         Add a connection client to the WKContext, to notify when new connections to the WebProcess are established
3005         https://bugs.webkit.org/show_bug.cgi?id=72433
3006
3007         Reviewed by Anders Carlsson.
3008
3009         * UIProcess/API/C/WKContext.cpp:
3010         (WKContextSetConnectionClient):
3011         * UIProcess/API/C/WKContext.h:
3012         * UIProcess/WebContext.cpp:
3013         (WebKit::WebContext::initializeConnectionClient):
3014         * UIProcess/WebContext.h:
3015         Add connection client API.
3016
3017         * UIProcess/WebContextConnectionClient.cpp: Added.
3018         (WebKit::WebContextConnectionClient::didCreateConnection):
3019         * UIProcess/WebContextConnectionClient.h: Added.
3020         Add basic implementation of the client. It is currently never triggered.
3021
3022 2011-11-15  Jongseok Yang  <js45.yang@samsung.com>
3023
3024         [SOUP][WK2] Add initial WebCookieManagerSoup.cpp for webkit2
3025         https://bugs.webkit.org/show_bug.cgi?id=72235
3026
3027         Reviewed by Gustavo Noronha Silva.
3028
3029         Add WebCookieManagerSoup.cpp and implement functions for the cookie accept policy.
3030         It's required when using the soup network backend.
3031         Remove WebCookieManagerEfl.cpp and WebCookieManagerGtk.cpp because GTK port and
3032         EFL port use soup network backend without a network backend of their own.
3033
3034         * GNUmakefile.am:
3035         * WebProcess/Cookies/efl/WebCookieManagerEfl.cpp: Removed.
3036         * WebProcess/Cookies/gtk/WebCookieManagerGtk.cpp: Removed.
3037         * WebProcess/Cookies/soup/WebCookieManagerSoup.cpp: Added.
3038         (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
3039         (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
3040
3041 2011-11-15  Jochen Eisinger  <jochen@chromium.org>
3042
3043         Rename ReferrerPolicy to clarify its meaning
3044         https://bugs.webkit.org/show_bug.cgi?id=72420
3045
3046         Reviewed by Nate Chapin.
3047
3048         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
3049         (WebKit::WebContextMenuClient::searchWithGoogle):
3050         * WebProcess/WebPage/WebPage.cpp:
3051         (WebKit::WebPage::linkClicked):
3052
3053 2011-11-15  Sam Weinig  <sam@webkit.org>
3054
3055         Fix windows build.
3056
3057         * win/WebKit2Generated.make:
3058
3059 2011-11-15  Sam Weinig  <sam@webkit.org>
3060
3061         Add WebKit2 API object to represent a connection
3062         https://bugs.webkit.org/show_bug.cgi?id=72421
3063
3064         Reviewed by Anders Carlsson.
3065
3066         * GNUmakefile.am:
3067         * Target.pri:
3068         * WebKit2.xcodeproj/project.pbxproj:
3069         * win/WebKit2.vcproj:
3070         Add new files.
3071
3072         * Shared/API/c/WKBase.h:
3073         Add type.
3074
3075         * Shared/API/c/WKConnectionRef.cpp: Added.
3076         (WKConnectionGetTypeID):
3077         (WKConnectionSetConnectionClient):
3078         (WKConnectionPostMessage):
3079         * Shared/API/c/WKConnectionRef.h: Added.
3080         Expose interface. Currently no support for synchronous messages.
3081
3082         * Shared/API/c/WKSharedAPICast.h:
3083         Define relationship between WebConnection <-> WKConnectionRef.
3084
3085         * Shared/APIObject.h:
3086         Add API type.
3087
3088         * Shared/WebConnection.cpp: Added.
3089         (WebKit::WebConnection::~WebConnection):
3090         (WebKit::WebConnection::initializeConnectionClient):
3091         * Shared/WebConnection.h: Added.
3092         (WebKit::WebConnection::type):
3093         Sketch out the connection object. It is currently abstract
3094         to allow different implementations for the UI and WebProcess sides
3095         while retaining the same interface.
3096
3097         * Shared/WebConnectionClient.cpp: Added.
3098         (WebKit::WebConnectionClient::didReceiveMessage):
3099         (WebKit::WebConnectionClient::didClose):
3100         * Shared/WebConnectionClient.h: Added.
3101         Add simple client.
3102
3103         * UIProcess/API/C/WebKit2.h:
3104         Add new file.
3105
3106 2011-11-15  Chris Fleizach2  <cfleizach@apple.com>
3107
3108         AX: WKAccessibilityWebObjectPage should not call super in accessibilityAttributeValue:
3109         https://bugs.webkit.org/show_bug.cgi?id=72344
3110
3111         Reviewed by Beth Dakin.
3112
3113         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
3114         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:]):
3115
3116 2011-11-15  Anders Carlsson  <andersca@apple.com>
3117
3118         HostWindow screenToWindow/windowToScreen should be screenToRootView/rootViewToScreen
3119         https://bugs.webkit.org/show_bug.cgi?id=72397
3120
3121         Reviewed by Dan Bernstein.
3122
3123         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3124         (WebKit::WebChromeClient::screenToRootView):
3125         (WebKit::WebChromeClient::rootViewToScreen):
3126         * WebProcess/WebCoreSupport/WebChromeClient.h:
3127
3128 2011-11-14  Anders Carlsson  <andersca@apple.com>
3129
3130         HostWindow invalidation functions should use root view coordinates
3131         https://bugs.webkit.org/show_bug.cgi?id=72338
3132
3133         Reviewed by Dan Bernstein.
3134
3135         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3136         (WebKit::WebChromeClient::invalidateRootView):
3137         (WebKit::WebChromeClient::invalidateContentsAndRootView):
3138         * WebProcess/WebCoreSupport/WebChromeClient.h:
3139
3140 2011-11-15  Carlos Garcia Campos  <cgarcia@igalia.com>
3141
3142         [GTK] Implement download support in WebKit2
3143         https://bugs.webkit.org/show_bug.cgi?id=72258
3144
3145         Reviewed by Martin Robinson.
3146
3147         * WebProcess/Downloads/Download.h:
3148         * WebProcess/Downloads/soup/DownloadSoup.cpp:
3149         (WebKit::DownloadClient::DownloadClient):
3150         (WebKit::DownloadClient::downloadFailed):
3151         (WebKit::DownloadClient::didReceiveResponse):
3152         (WebKit::DownloadClient::didReceiveData):
3153         (WebKit::DownloadClient::didFinishLoading):
3154         (WebKit::DownloadClient::didFail):
3155         (WebKit::DownloadClient::wasBlocked):
3156         (WebKit::DownloadClient::cannotShowURL):
3157         (WebKit::Download::start):
3158         (WebKit::Download::startWithHandle):
3159         (WebKit::Download::cancel):
3160         (WebKit::Download::platformInvalidate):
3161
3162 2011-11-15  Mario Sanchez Prada  <msanchez@igalia.com>
3163
3164         [GTK][WEBKIT2] Add enable-caret-browsing property to WebKitSettings
3165         https://bugs.webkit.org/show_bug.cgi?id=72267
3166
3167         Reviewed by Martin Robinson.
3168
3169         Allow getting and setting the 'enable-caret-browsing' property
3170         through WebKitSettings.
3171
3172         * UIProcess/API/gtk/WebKitSettings.cpp:
3173         (webKitSettingsSetProperty): Added property setter.
3174         (webKitSettingsGetProperty): Added propery getter.
3175         (webkit_settings_class_init): Install property.
3176         (webkit_settings_get_enable_caret_browsing): Added.
3177         (webkit_settings_set_enable_caret_browsing): Added.
3178         * UIProcess/API/gtk/WebKitSettings.h: Expose new public APIs.
3179         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new sections for gtk-doc generation.
3180         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
3181         (testWebKitSettings): Added new API test.
3182
3183 2011-11-14  Julien Chaffraix  <jchaffraix@webkit.org>
3184
3185         Add --css-grid-layout to build-webkit and the build systems
3186         https://bugs.webkit.org/show_bug.cgi?id=72320
3187
3188         Reviewed by Ojan Vafai.
3189
3190         * Configurations/FeatureDefines.xcconfig:
3191
3192 2011-11-14  Tony Chang  <tony@chromium.org>
3193
3194         Remove the CSS3_FLEXBOX compile time flag and enable on all ports
3195         https://bugs.webkit.org/show_bug.cgi?id=72196
3196
3197         Reviewed by Ojan Vafai.
3198
3199         * Configurations/FeatureDefines.xcconfig:
3200
3201 2011-11-14  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
3202
3203         Intermittent asserts in TextureMapperGL::bindSurface on MiniBrowser startup
3204         https://bugs.webkit.org/show_bug.cgi?id=72299
3205
3206         Reviewed by Noam Rosenthal.
3207
3208         Added check that clipping rect is valid.
3209         Clear GL error that might remain from QT GL operations.
3210         Added GL error assert for scissor test operations.
3211
3212         * UIProcess/API/qt/qquickwebpage.cpp:
3213         (QQuickWebPagePrivate::paintToCurrentGLContext):
3214
3215 2011-11-14  Anders Carlsson  <andersca@apple.com>
3216
3217         Only send progress notifications for the main frame
3218         https://bugs.webkit.org/show_bug.cgi?id=72302
3219
3220         Reviewed by Sam Weinig.
3221
3222         Since it's impossible in the API to tell which frame the progress notifications are for, just send them to the main frame for now.
3223
3224         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3225         (WebKit::WebFrameLoaderClient::postProgressStartedNotification):
3226         (WebKit::WebFrameLoaderClient::postProgressEstimateChangedNotification):
3227         (WebKit::WebFrameLoaderClient::postProgressFinishedNotification):
3228
3229 2011-11-14  Alexis Menard  <alexis.menard@openbossa.org>
3230
3231         [Qt][WK2] Cleanup QML tests.
3232         https://bugs.webkit.org/show_bug.cgi?id=72259
3233
3234         Reviewed by Simon Hausmann.
3235
3236         Cleanup QML tests. This patch removes the duplicates after the merge of both views.
3237         I also isolated the desktop specific bits into its own directory.
3238
3239         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_download.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_download.qml.
3240         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_linkHovered.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_linkHovered.qml.
3241         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_messaging.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_messaging.qml.
3242         * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_navigationPolicyForUrl.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_navigationPolicyForUrl.qml.
3243         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgressSignal.qml: Removed.
3244         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadZeroSizeView.qml: Removed.
3245         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_properties.qml: Removed.
3246         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_load.qml: Removed.
3247         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadFail.qml: Removed.
3248         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadNegativeSizeView.qml: Removed.
3249         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgress.qml: Removed.
3250         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadFail.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadFail.qml.
3251         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadProgress.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgress.qml.
3252         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadProgressSignal.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgressSignal.qml.
3253         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadZeroSizeView.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadZeroSizeView.qml.
3254         * UIProcess/API/qt/tests/qmltests/WebView/tst_preferences.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_preferences.qml.
3255         * UIProcess/API/qt/tests/qmltests/WebView/tst_properties.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/TouchWebView/tst_properties.qml.
3256         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
3257
3258 2011-11-14  Mario Sanchez Prada  <msanchez@igalia.com>
3259
3260         Add support for the caretBrowsingEnabled preference in WebKit2
3261         https://bugs.webkit.org/show_bug.cgi?id=72266
3262
3263         Reviewed by Chris Fleizach.
3264
3265         * Shared/WebPreferencesStore.h: Add caretBrowsingEnabled getter
3266         and setter macro.
3267         * UIProcess/API/C/WKPreferences.h:
3268         * UIProcess/API/C/WKPreferences.cpp:
3269         (WKPreferencesSetCaretBrowsingEnabled): Added.
3270         (WKPreferencesGetCaretBrowsingEnabled): Added.
3271         * WebProcess/WebPage/WebPage.cpp:
3272         (WebKit::WebPage::updatePreferences): Update the
3273         caretBrowsingEnabledKey preference.
3274
3275 2011-11-14  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
3276
3277         [Qt] Remove reference to QWebNavigationController
3278         https://bugs.webkit.org/show_bug.cgi?id=72257
3279
3280         Reviewed by Simon Hausmann.
3281
3282         QWebNavigationController was removed in r99946, this is just a leftover.
3283
3284         * UIProcess/API/qt/qquickwebview.cpp:
3285         (QQuickWebViewPrivate::QQuickWebViewPrivate):
3286         * UIProcess/API/qt/qquickwebview_p.h:
3287
3288 2011-11-10  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3289
3290         [Qt] the QQuickWebView should support double-tap to zoom
3291         https://bugs.webkit.org/show_bug.cgi?id=72030
3292
3293         Reviewed by Andreas Kling.
3294
3295         * UIProcess/qt/QtViewInterface.cpp:
3296         * UIProcess/qt/QtViewInterface.h:
3297         * UIProcess/qt/QtViewportInteractionEngine.cpp:
3298         (WebKit::QtViewportInteractionEngine::animateItemRectVisible):
3299         (WebKit::QtViewportInteractionEngine::zoomToAreaGestureEnded):
3300         (WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
3301         * UIProcess/qt/QtViewportInteractionEngine.h:
3302         * UIProcess/qt/QtWebPageProxy.cpp:
3303         (QtWebPageProxy::didFindZoomableArea):
3304
3305 2011-11-14  Zalan Bujtas  <zbujtas@gmail.com>
3306
3307         Build breaks with --no-javascript-debugger --no-inspector
3308         https://bugs.webkit.org/show_bug.cgi?id=72228
3309
3310         Reviewed by Simon Hausmann.
3311
3312         * UIProcess/WebPageProxy.cpp:
3313         (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
3314
3315 2011-11-13  Mark Rowe  <mrowe@apple.com>
3316
3317         Fix the 32-bit build.
3318
3319         * WebProcess/mac/WebProcessMac.mm:
3320         (WebKit::initializeSandbox): Use a format specifier and cast that works on more architectures.
3321
3322 2011-11-12  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3323
3324         [Qt][Symbian] Remove support for WINSCW compiler
3325         https://bugs.webkit.org/show_bug.cgi?id=70178
3326
3327         Reviewed by Chang Shu.
3328
3329         * Shared/API/c/WKString.h:
3330
3331 2011-11-12  Dan Bernstein  <mitz@apple.com>
3332
3333         <rdar://problem/10294191> REGRESSION (WebKit2): Lookup bubble sized and positioned incorrectly (vertically off)
3334         https://bugs.webkit.org/show_bug.cgi?id=72217
3335
3336         Reviewed by Dave Hyatt.
3337
3338         * UIProcess/API/mac/PageClientImpl.mm:
3339         (WebKit::PageClientImpl::didPerformDictionaryLookup): Rather than adding the NSFont’s ascender
3340         to the top of the text rect to establish the baseline here...
3341         * WebProcess/WebPage/mac/WebPageMac.mm:
3342         (WebKit::WebPage::performDictionaryLookupForRange): ...do it here, using the WebCore::Font’s
3343         ascender, which is what’s actually used when drawing the text.
3344
3345 2011-11-11  Nayan Kumar K  <nayankk@motorola.com>
3346
3347         [GTK][WEBKIT2] Add font and charset properties to WebKitWebSettings
3348         https://bugs.webkit.org/show_bug.cgi?id=68996
3349
3350         Reviewed by Martin Robinson.
3351
3352         Provision to query and set the font related properties (such as
3353         font-family, font-size) and charset properties (such as default-
3354         charset) is added.
3355
3356         * UIProcess/API/gtk/WebKitSettings.cpp: Added font and encoding properties.
3357         (webKitSettingsSetProperty): GObject set property function.
3358         (webKitSettingsGetProperty): GObject get property function.
3359         (webkit_settings_class_init): Few more signals installed.
3360         (webkit_settings_init): Initialization of instance variables.
3361         (webkit_web_settings_get_default_font_family): Get 'default-font-family'.
3362         (webkit_web_settings_set_default_font_family): Set 'default-font-family'.
3363         (webkit_web_settings_get_monospace_font_family): Get 'monospace-font-family'.
3364         (webkit_web_settings_set_monospace_font_family): Set 'monospace-font-family'.
3365         (webkit_web_settings_get_serif_font_family): Get 'serif-font-family'.
3366         (webkit_web_settings_set_serif_font_family): Set 'serif-font-family'.
3367         (webkit_web_settings_get_sans_serif_font_family): Get 'sans-serif-font-family'.
3368         (webkit_web_settings_set_sans_serif_font_family): Get 'sans-serif-font-family'.
3369         (webkit_web_settings_get_cursive_font_family): Get 'cursive-font-family'.
3370         (webkit_web_settings_set_cursive_font_family): Set 'cursive-font-family'.
3371         (webkit_web_settings_get_fantasy_font_family): Get 'fantasy-font-family'.
3372         (webkit_web_settings_set_fantasy_font_family): Set 'fantasy-font-family'.
3373         (webkit_web_settings_get_pictograph_font_family): Get 'pictograph-font-family'.
3374         (webkit_web_settings_set_pictograph_font_family): Set 'pictograph-font-family'.
3375         (webkit_web_settings_get_default_font_size): Get 'default-font-size'.
3376         (webkit_web_settings_set_default_font_size): Set 'default-font-size'.
3377         (webkit_web_settings_get_default_monospace_font_size): Get 'default-monospace-font-size'.
3378         (webkit_web_settings_set_default_monospace_font_size): Set 'default-monospace-font-size'.
3379         (webkit_web_settings_get_minimum_font_size): Get 'minimum-font-size'.
3380         (webkit_web_settings_set_minimum_font_size): Set 'minimum-font-size'.
3381         (webkit_web_settings_get_default_charset): Get 'default-charset'.
3382         (webkit_web_settings_set_default_charset): Set 'default-charset'.
3383         * UIProcess/API/gtk/WebKitSettings.h: Add new sections for gtk-doc generation.
3384         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Expose new public APIs.
3385         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
3386         (testWebKitSettings): Add new tests.
3387
3388 2011-11-11  Shinya Kawanaka  <shinyak@google.com>
3389
3390         Implement legacy text check emulation in unified text check interface.
3391         https://bugs.webkit.org/show_bug.cgi?id=70299
3392
3393         Reviewed by Hajime Morita.
3394
3395         * win/WebKit2.def:
3396         * win/WebKit2CFLite.def:
3397
3398 2011-11-11  Alexey Proskuryakov  <ap@apple.com>
3399
3400         WebProcess should use AppSandbox style quarantine
3401         https://bugs.webkit.org/show_bug.cgi?id=72168
3402         <rdar://problem/10434292>
3403
3404         Reviewed by Darin Adler.
3405
3406         * WebProcess/mac/WebProcessMac.mm: (WebKit::initializeSandbox): Just enable it.
3407
3408 2011-11-11  Darin Adler  <darin@apple.com>
3409
3410         * WebKit2.xcodeproj/project.pbxproj: Let a newer Xcode update this file.
3411         If an older Xcode downgrades this file and we have a risk of some kind of
3412         oscillating commit situation, please contact me so I know not to do this again.
3413
3414 2011-11-11  Mark Hahnenberg  <mhahnenberg@apple.com>
3415
3416         Add jsCast to replace static_cast
3417         https://bugs.webkit.org/show_bug.cgi?id=72071
3418
3419         Reviewed by Geoffrey Garen.
3420
3421         Added new jsCast and changed all of the static_cast sites in functions that 
3422         are in the MethodTable to use jsCast instead.
3423
3424         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
3425         (WebKit::JSNPObject::getCallData):
3426         (WebKit::JSNPObject::getConstructData):
3427         (WebKit::JSNPObject::getOwnPropertySlot):
3428         (WebKit::JSNPObject::getOwnPropertyDescriptor):
3429         (WebKit::JSNPObject::put):
3430         (WebKit::JSNPObject::deleteProperty):
3431         (WebKit::JSNPObject::deletePropertyByIndex):
3432         (WebKit::JSNPObject::getOwnPropertyNames):
3433
3434 2011-11-11  Timothy Hatcher  <timothy@apple.com>
3435
3436         Only use the textured window style mask when there is no override inspector page.
3437
3438         https://webkit.org/b/72142
3439
3440         Reviewed by Dan Bernstein.
3441
3442         * UIProcess/mac/WebInspectorProxyMac.mm:
3443         (WebKit::WebInspectorProxy::platformOpen): Don't set NSTexturedBackgroundWindowMask if
3444         there is an override inspector page. Make setAutorecalculatesContentBorderThickness:,
3445         setContentBorderThickness: and WKNSWindowMakeBottomCornersSquare conditional.
3446
3447 2011-11-11  Simon Hausmann  <simon.hausmann@nokia.com>
3448
3449         [Qt] Remove dead MeeGoTouch code.
3450
3451         Reviewed by Tor Arne Vestbø.
3452
3453         * WebProcess/qt/WebProcessMainQt.cpp:
3454         (WebKit::WebProcessMainQt):
3455
3456 2011-11-11  Alexis Menard  <alexis.menard@openbossa.org>
3457
3458         [Qt] Add a way to have experimental features in WebKit2
3459         https://bugs.webkit.org/show_bug.cgi?id=67707
3460
3461         Reviewed by Kenneth Rohde Christiansen.
3462
3463         Add new QML extensions for our public view. This extension
3464         returns the private object of the view so that the user could
3465         use unstable/unreleased APIs. This requires our private class
3466         to be exported and QObject subclass.
3467
3468         * Target.pri:
3469         * UIProcess/API/qt/qquickwebview.cpp:
3470         * UIProcess/API/qt/qquickwebview_p.h:
3471         * UIProcess/API/qt/qquickwebviewprivateextension.cpp: Added.
3472         (QQuickWebViewPrivateExtension::QQuickWebViewPrivateExtension):
3473         (QQuickWebViewPrivateExtension::viewPrivate):
3474         * UIProcess/API/qt/qquickwebviewprivateextension_p.h: Added.
3475
3476 2011-11-11  Simon Hausmann  <simon.hausmann@nokia.com>
3477
3478         [Qt][WK2] Remove QWebNavigationController
3479         https://bugs.webkit.org/show_bug.cgi?id=72113
3480
3481         Reviewed by Andreas Kling.
3482
3483         Fold the functions and properties of QWebNavigationController into
3484         QQuickWebView.
3485
3486         * Target.pri:
3487         * UIProcess/API/qt/WKView.h:
3488         * UIProcess/API/qt/qquickwebpage.cpp:
3489         (QQuickWebPagePrivate::QQuickWebPagePrivate):
3490         * UIProcess/API/qt/qquickwebpage.h:
3491         * UIProcess/API/qt/qquickwebpage_p.h:
3492         * UIProcess/API/qt/qquickwebview.cpp:
3493         (QQuickWebViewPrivate::initialize):
3494         (QQuickWebView::goBack):
3495         (QQuickWebView::goForward):
3496         (QQuickWebView::stop):
3497         (QQuickWebView::reload):
3498         (QQuickWebView::canGoBack):
3499         (QQuickWebView::canGoForward):
3500         (QQuickWebView::canStop):
3501         (QQuickWebView::canReload):
3502         (QQuickWebView::title):
3503         * UIProcess/API/qt/qquickwebview.h:
3504         * UIProcess/API/qt/qwebnavigationcontroller.cpp: Removed.
3505         * UIProcess/API/qt/qwebnavigationcontroller.h: Removed.
3506         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
3507         (tst_QQuickWebView::navigationStatusAtStartup):