f7a9bcf468e5ab04f6a003bc9bc758bc9dc9fa96
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2011-11-11  Nayan Kumar K  <nayankk@motorola.com>
2
3         [GTK][WEBKIT2] Add font and charset properties to WebKitWebSettings
4         https://bugs.webkit.org/show_bug.cgi?id=68996
5
6         Reviewed by Martin Robinson.
7
8         Provision to query and set the font related properties (such as
9         font-family, font-size) and charset properties (such as default-
10         charset) is added.
11
12         * UIProcess/API/gtk/WebKitSettings.cpp: Added font and encoding properties.
13         (webKitSettingsSetProperty): GObject set property function.
14         (webKitSettingsGetProperty): GObject get property function.
15         (webkit_settings_class_init): Few more signals installed.
16         (webkit_settings_init): Initialization of instance variables.
17         (webkit_web_settings_get_default_font_family): Get 'default-font-family'.
18         (webkit_web_settings_set_default_font_family): Set 'default-font-family'.
19         (webkit_web_settings_get_monospace_font_family): Get 'monospace-font-family'.
20         (webkit_web_settings_set_monospace_font_family): Set 'monospace-font-family'.
21         (webkit_web_settings_get_serif_font_family): Get 'serif-font-family'.
22         (webkit_web_settings_set_serif_font_family): Set 'serif-font-family'.
23         (webkit_web_settings_get_sans_serif_font_family): Get 'sans-serif-font-family'.
24         (webkit_web_settings_set_sans_serif_font_family): Get 'sans-serif-font-family'.
25         (webkit_web_settings_get_cursive_font_family): Get 'cursive-font-family'.
26         (webkit_web_settings_set_cursive_font_family): Set 'cursive-font-family'.
27         (webkit_web_settings_get_fantasy_font_family): Get 'fantasy-font-family'.
28         (webkit_web_settings_set_fantasy_font_family): Set 'fantasy-font-family'.
29         (webkit_web_settings_get_pictograph_font_family): Get 'pictograph-font-family'.
30         (webkit_web_settings_set_pictograph_font_family): Set 'pictograph-font-family'.
31         (webkit_web_settings_get_default_font_size): Get 'default-font-size'.
32         (webkit_web_settings_set_default_font_size): Set 'default-font-size'.
33         (webkit_web_settings_get_default_monospace_font_size): Get 'default-monospace-font-size'.
34         (webkit_web_settings_set_default_monospace_font_size): Set 'default-monospace-font-size'.
35         (webkit_web_settings_get_minimum_font_size): Get 'minimum-font-size'.
36         (webkit_web_settings_set_minimum_font_size): Set 'minimum-font-size'.
37         (webkit_web_settings_get_default_charset): Get 'default-charset'.
38         (webkit_web_settings_set_default_charset): Set 'default-charset'.
39         * UIProcess/API/gtk/WebKitSettings.h: Add new sections for gtk-doc generation.
40         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Expose new public APIs.
41         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
42         (testWebKitSettings): Add new tests.
43
44 2011-11-11  Shinya Kawanaka  <shinyak@google.com>
45
46         Implement legacy text check emulation in unified text check interface.
47         https://bugs.webkit.org/show_bug.cgi?id=70299
48
49         Reviewed by Hajime Morita.
50
51         * win/WebKit2.def:
52         * win/WebKit2CFLite.def:
53
54 2011-11-11  Alexey Proskuryakov  <ap@apple.com>
55
56         WebProcess should use AppSandbox style quarantine
57         https://bugs.webkit.org/show_bug.cgi?id=72168
58         <rdar://problem/10434292>
59
60         Reviewed by Darin Adler.
61
62         * WebProcess/mac/WebProcessMac.mm: (WebKit::initializeSandbox): Just enable it.
63
64 2011-11-11  Darin Adler  <darin@apple.com>
65
66         * WebKit2.xcodeproj/project.pbxproj: Let a newer Xcode update this file.
67         If an older Xcode downgrades this file and we have a risk of some kind of
68         oscillating commit situation, please contact me so I know not to do this again.
69
70 2011-11-11  Mark Hahnenberg  <mhahnenberg@apple.com>
71
72         Add jsCast to replace static_cast
73         https://bugs.webkit.org/show_bug.cgi?id=72071
74
75         Reviewed by Geoffrey Garen.
76
77         Added new jsCast and changed all of the static_cast sites in functions that 
78         are in the MethodTable to use jsCast instead.
79
80         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
81         (WebKit::JSNPObject::getCallData):
82         (WebKit::JSNPObject::getConstructData):
83         (WebKit::JSNPObject::getOwnPropertySlot):
84         (WebKit::JSNPObject::getOwnPropertyDescriptor):
85         (WebKit::JSNPObject::put):
86         (WebKit::JSNPObject::deleteProperty):
87         (WebKit::JSNPObject::deletePropertyByIndex):
88         (WebKit::JSNPObject::getOwnPropertyNames):
89
90 2011-11-11  Timothy Hatcher  <timothy@apple.com>
91
92         Only use the textured window style mask when there is no override inspector page.
93
94         https://webkit.org/b/72142
95
96         Reviewed by Dan Bernstein.
97
98         * UIProcess/mac/WebInspectorProxyMac.mm:
99         (WebKit::WebInspectorProxy::platformOpen): Don't set NSTexturedBackgroundWindowMask if
100         there is an override inspector page. Make setAutorecalculatesContentBorderThickness:,
101         setContentBorderThickness: and WKNSWindowMakeBottomCornersSquare conditional.
102
103 2011-11-11  Simon Hausmann  <simon.hausmann@nokia.com>
104
105         [Qt] Remove dead MeeGoTouch code.
106
107         Reviewed by Tor Arne Vestbø.
108
109         * WebProcess/qt/WebProcessMainQt.cpp:
110         (WebKit::WebProcessMainQt):
111
112 2011-11-11  Alexis Menard  <alexis.menard@openbossa.org>
113
114         [Qt] Add a way to have experimental features in WebKit2
115         https://bugs.webkit.org/show_bug.cgi?id=67707
116
117         Reviewed by Kenneth Rohde Christiansen.
118
119         Add new QML extensions for our public view. This extension
120         returns the private object of the view so that the user could
121         use unstable/unreleased APIs. This requires our private class
122         to be exported and QObject subclass.
123
124         * Target.pri:
125         * UIProcess/API/qt/qquickwebview.cpp:
126         * UIProcess/API/qt/qquickwebview_p.h:
127         * UIProcess/API/qt/qquickwebviewprivateextension.cpp: Added.
128         (QQuickWebViewPrivateExtension::QQuickWebViewPrivateExtension):
129         (QQuickWebViewPrivateExtension::viewPrivate):
130         * UIProcess/API/qt/qquickwebviewprivateextension_p.h: Added.
131
132 2011-11-11  Simon Hausmann  <simon.hausmann@nokia.com>
133
134         [Qt][WK2] Remove QWebNavigationController
135         https://bugs.webkit.org/show_bug.cgi?id=72113
136
137         Reviewed by Andreas Kling.
138
139         Fold the functions and properties of QWebNavigationController into
140         QQuickWebView.
141
142         * Target.pri:
143         * UIProcess/API/qt/WKView.h:
144         * UIProcess/API/qt/qquickwebpage.cpp:
145         (QQuickWebPagePrivate::QQuickWebPagePrivate):
146         * UIProcess/API/qt/qquickwebpage.h:
147         * UIProcess/API/qt/qquickwebpage_p.h:
148         * UIProcess/API/qt/qquickwebview.cpp:
149         (QQuickWebViewPrivate::initialize):
150         (QQuickWebView::goBack):
151         (QQuickWebView::goForward):
152         (QQuickWebView::stop):
153         (QQuickWebView::reload):
154         (QQuickWebView::canGoBack):
155         (QQuickWebView::canGoForward):
156         (QQuickWebView::canStop):
157         (QQuickWebView::canReload):
158         (QQuickWebView::title):
159         * UIProcess/API/qt/qquickwebview.h:
160         * UIProcess/API/qt/qwebnavigationcontroller.cpp: Removed.
161         * UIProcess/API/qt/qwebnavigationcontroller.h: Removed.
162         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
163         (tst_QQuickWebView::navigationStatusAtStartup):
164         (LoadStartedCatcher::onLoadStarted):
165         (tst_QQuickWebView::stopEnabledAfterLoadStarted):
166         (tst_QQuickWebView::backAndForward):
167         (tst_QQuickWebView::reload):
168         (tst_QQuickWebView::stop):
169
170 2011-11-10  Beth Dakin  <bdakin@apple.com>
171
172         Once more for the QT build.
173
174         * UIProcess/qt/QtWebPageProxy.cpp:
175         (QtWebPageProxy::setFindIndicator):
176         * UIProcess/qt/QtWebPageProxy.h:
177
178 2011-11-10  Beth Dakin  <bdakin@apple.com>
179
180         More attempted build fix.
181
182         * UIProcess/API/efl/PageClientImpl.cpp:
183         (WebKit::PageClientImpl::setFindIndicator):
184         * UIProcess/API/efl/PageClientImpl.h:
185         * UIProcess/API/gtk/PageClientImpl.cpp:
186         (WebKit::PageClientImpl::setFindIndicator):
187         * UIProcess/API/gtk/PageClientImpl.h:
188
189 2011-11-10  Anders Carlsson  <andersca@apple.com>
190
191         Fix 32-bit build.
192
193         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
194         (-[WKContentLayer drawInContext:]):
195
196 2011-11-10  Beth Dakin  <bdakin@apple.com>
197
198         Speculative build fix.
199
200         * UIProcess/win/WebView.cpp:
201         (WebKit::WebView::setFindIndicator):
202         * UIProcess/win/WebView.h:
203
204 2011-11-10  Beth Dakin  <bdakin@apple.com>
205
206         https://bugs.webkit.org/show_bug.cgi?id=66584
207         WebKit2's find bouncy looks blurry after dragging window onto >1.0 scale factor 
208         display
209         -and corresponding-
210         <rdar://problem/9987559>
211
212         Reviewed by Anders Carlsson.
213
214         The setFindIndicator message and various functions of the same name must all take 
215         an additional parameter indicating whether or not setting the find indicator 
216         should result in a bounce animation. This is because when the device scale factor 
217         changes, if there is currently a find indicator, it must be re-set to a higher or 
218         lower resolution version, but we don't want the bounce animation to happen again.
219         * UIProcess/API/mac/FindIndicatorWindow.h:
220         * UIProcess/API/mac/FindIndicatorWindow.mm:
221         (WebKit::FindIndicatorWindow::setFindIndicator):
222         * UIProcess/API/mac/PageClientImpl.h:
223         * UIProcess/API/mac/PageClientImpl.mm:
224         (WebKit::PageClientImpl::setFindIndicator):
225         * UIProcess/API/mac/WKView.mm:
226         (-[WKView _setFindIndicator:fadeOut:animate:]):
227         * UIProcess/API/mac/WKViewInternal.h:
228         * UIProcess/PageClient.h:
229         * UIProcess/WebPageProxy.cpp:
230         (WebKit::WebPageProxy::setFindIndicator):
231         * UIProcess/WebPageProxy.h:
232         * UIProcess/WebPageProxy.messages.in:
233
234         New function FindController::isShowingOverlay() is used to determine if 
235         FindController::deviceScaleFactorDidChange() needs to be called.
236         * WebProcess/WebPage/FindController.h:
237         (WebKit::FindController::isShowingOverlay): 
238
239         FindController::deviceScaleFactorDidChange() calls updateFindIndicator to re-
240         generate the bitmap at the appropriate scale factor, but tells it not to animate 
241         this time.
242         (WebKit::FindController::deviceScaleFactorDidChange):
243
244         updateFindIndicator() takes a new parameter indicating whether or not the 
245         FindIndicator should animate. It defaults to true since the deviceScaleFactor 
246         changing is the only case currently where we do not want it to animate.
247         * WebProcess/WebPage/FindController.cpp:
248         (WebKit::FindController::updateFindIndicator):
249         (WebKit::FindController::hideFindIndicator):
250
251         Calls into FindController::deviceScaleFactorDidChange() when the scale factor has 
252         changed and the find overlay is showing.
253         * WebProcess/WebPage/WebPage.cpp:
254         (WebKit::WebPage::setDeviceScaleFactor):
255
256 2011-11-10  Timothy Hatcher  <timothy@apple.com>
257
258         Make WKViews in NSPopovers render as they would in active windows.
259
260         The NSWindowDid{Become,Resign}KeyNotifications are not fired when NSPopovers
261         are shown or hidden since they share key with the parent window. So WKView
262         needs to update the active state during order on/off screen notifications.
263
264         https://webkit.org/b/68435
265
266         Reviewed by John Sullivan.
267
268         * UIProcess/API/mac/WKView.mm:
269         (-[WKView _windowDidOrderOffScreen:]): Call viewStateDidChange with WebPageProxy::ViewWindowIsActive.
270         (-[WKView _windowDidOrderOnScreen:]): Ditto.
271
272 2011-11-10  Anders Carlsson  <andersca@apple.com>
273
274         Add a simple content layer to TiledCoreAnimationDrawingArea
275         https://bugs.webkit.org/show_bug.cgi?id=72044
276
277         Reviewed by Darin Adler.
278
279         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
280         Add a content layer member variable.
281
282         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
283         (-[WKContentLayer _initWithWebPage:WebKit::]):
284         Add initializer.
285
286         (-[WKContentLayer drawInContext:]):
287         Lay out and draw the web page.
288
289         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
290         Add the content layer as a sublayer of the root layer.
291
292         (WebKit::TiledCoreAnimationDrawingArea::setNeedsDisplay):
293         (WebKit::TiledCoreAnimationDrawingArea::scroll):
294         Tell the content layer to paint.
295
296         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
297         Resize the content layer as well.
298
299 2011-11-10  Anders Carlsson  <andersca@apple.com>
300
301         The WKView layer hosting subview needs to be flipped
302         https://bugs.webkit.org/show_bug.cgi?id=72042
303
304         Reviewed by Darin Adler.
305
306         In order to match the Core Animation layer hierarchy, the layer hosting WKView
307         subview needs to be flipped.
308
309         * UIProcess/API/mac/WKView.mm:
310         (-[WKFlippedView isFlipped]):
311         Add a NSView subview whose sole purpose is to be flipped.
312
313         (-[WKView _enterAcceleratedCompositingMode:]):
314         Create a WKFlippedView instead of a regular NSView.
315
316 2011-11-10  Balazs Kelemen  <kbalazs@webkit.org>
317
318         [Qt] X11 plugins need to be reworked for Qt5
319         https://bugs.webkit.org/show_bug.cgi?id=70023
320
321         Reviewed by Simon Hausmann.
322
323         * Target.pri:
324         * UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp:
325         (WebKit::PluginInfoStore::pluginsDirectories):
326         Kill the last dependency from the WebKit1 plugin system.
327         This is necessary because currently we don't build the WebKit1
328         plugin code. The function is equivalent with the XP_UNIX part of
329         PluginDatabase::defaultPluginDirectories.
330
331         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
332         (WebKit::NPN_GetValue):
333         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
334         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
335         (WebKit::getPluginDisplay):
336         (WebKit::x11Screen):
337         (WebKit::displayDepth):
338         (WebKit::rootWindowID):
339         (WebKit::NetscapePlugin::x11HostDisplay):
340         (WebKit::NetscapePlugin::platformPostInitialize):
341         (WebKit::NetscapePlugin::platformDestroy):
342         (WebKit::NetscapePlugin::platformGeometryDidChange):
343         (WebKit::NetscapePlugin::platformPaint):
344         (WebKit::initializeXEvent):
345         Rework plugin initialization and drawing model.
346
347 2011-11-10  Martin Robinson  <mrobinson@igalia.com>
348
349         [GTK] [WebKit2] Fix remaining gtkdoc errors
350         https://bugs.webkit.org/show_bug.cgi?id=71990
351
352         Reviewed by Philippe Normand.
353
354         * UIProcess/API/gtk/WebKitWebView.cpp: Update add the phrase "property" to
355         references to properties, because the gtkdoc stylesheet does not differeniate
356         between properties and signals. Standardize the way we talk about property
357         notifications.
358         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add an include to silence 
359         warnings about GIR annotations.
360         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add the decorators the private section.
361
362 2011-11-10  Kenneth Rohde Christiansen  <kenneth@webkit.org>
363
364         [Qt] Clean up how singe / double taps are handled
365         https://bugs.webkit.org/show_bug.cgi?id=72024
366
367         Reviewed by Simon Hausmann.
368
369         Move all decision making to the QtWebPageProxy.
370
371         * UIProcess/qt/QtTapGestureRecognizer.cpp:
372         (WebKit::QtTapGestureRecognizer::QtTapGestureRecognizer):
373         (WebKit::QtTapGestureRecognizer::recognize):
374         (WebKit::QtTapGestureRecognizer::tapTimeout):
375         * UIProcess/qt/QtTapGestureRecognizer.h:
376         * UIProcess/qt/QtWebPageProxy.cpp:
377         (QtWebPageProxy::QtWebPageProxy):
378         (QtWebPageProxy::handleSingleTapEvent):
379         (QtWebPageProxy::handleDoubleTapEvent):
380         * UIProcess/qt/QtWebPageProxy.h:
381
382 2011-11-10  Simon Hausmann  <simon.hausmann@nokia.com>
383
384         [Qt] Clean up build system
385
386         Reviewed by Tor Arne Vestbø.
387
388         Now that we use whole-archive linking we can fold the files that contain exported
389         symbols back into the WebKit2 static library.
390
391         * Target.pri: Fold in sources from WebKit2.pri.
392         * WebKit2.pri: Removed.
393
394 2011-11-10  Alexis Menard  <alexis.menard@openbossa.org>
395
396         [Qt] Merge QTouchWebView and QDesktopWebView into one class
397         https://bugs.webkit.org/show_bug.cgi?id=71355
398
399         Reviewed by Kenneth Rohde Christiansen.
400
401         Merge QTouchWebView and QDesktopWebView into one class called
402         QQuickWebView and its attached page QQuickWebPage. You can switch to the
403         traditional desktop use case with the private header. Also now on desktop
404         platforms AC is turn on by default. I also merged our two
405         subclasses of QtViewInterface into one as the split doesn't make
406         that much sense anymore. In the future we want to be able to enable the
407         traditional desktop use case depending the platform the code is running.
408         API tests and QML tests have been updated.
409
410         * Target.pri:
411         * UIProcess/API/qt/WKView.h:
412         * UIProcess/API/qt/qbasewebview.cpp: Removed.
413         * UIProcess/API/qt/qbasewebview_p.h: Removed.
414         * UIProcess/API/qt/qdesktopwebview.cpp: Removed.
415         * UIProcess/API/qt/qdesktopwebview.h: Removed.
416         * UIProcess/API/qt/qdesktopwebview_p.h: Removed.
417         * UIProcess/API/qt/qquickwebpage.cpp: Renamed from Source/WebKit2/UIProcess/API/qt/qtouchwebpage.cpp.
418         (QQuickWebPage::QQuickWebPage):
419         (QQuickWebPage::~QQuickWebPage):
420         (QQuickWebPage::keyPressEvent):
421         (QQuickWebPage::keyReleaseEvent):
422         (QQuickWebPage::inputMethodEvent):
423         (QQuickWebPage::focusInEvent):
424         (QQuickWebPage::focusOutEvent):
425         (QQuickWebPage::mousePressEvent):
426         (QQuickWebPage::mouseMoveEvent):
427         (QQuickWebPage::mouseReleaseEvent):
428         (QQuickWebPage::mouseDoubleClickEvent):
429         (QQuickWebPage::wheelEvent):
430         (QQuickWebPage::hoverEnterEvent):
431         (QQuickWebPage::hoverMoveEvent):
432         (QQuickWebPage::hoverLeaveEvent):
433         (QQuickWebPage::dragMoveEvent):
434         (QQuickWebPage::dragEnterEvent):
435         (QQuickWebPage::dragLeaveEvent):
436         (QQuickWebPage::dropEvent):
437         (QQuickWebPage::geometryChanged):
438         (QQuickWebPage::event):
439         (QQuickWebPage::touchEvent):
440         (QQuickWebPage::itemChange):
441         (QQuickWebPagePrivate::QQuickWebPagePrivate):
442         (QQuickWebPagePrivate::initializeSceneGraphConnections):
443         (QQuickWebPagePrivate::setPageProxy):
444         (computeEffectiveOpacity):
445         (QQuickWebPagePrivate::paintToCurrentGLContext):
446         (QQuickWebPagePrivate::_q_onAfterSceneRender):
447         (QQuickWebPagePrivate::_q_onSceneGraphInitialized):
448         * UIProcess/API/qt/qquickwebpage.h: Renamed from Source/WebKit2/UIProcess/API/qt/qtouchwebpage.h.
449         * UIProcess/API/qt/qquickwebpage_p.h: Renamed from Source/WebKit2/UIProcess/API/qt/qtouchwebpage_p.h.
450         * UIProcess/API/qt/qquickwebview.cpp: Added.
451         (QQuickWebViewPrivate::QQuickWebViewPrivate):
452         (QQuickWebViewPrivate::enableMouseEvents):
453         (QQuickWebViewPrivate::disableMouseEvents):
454         (QQuickWebViewPrivate::initialize):
455         (QQuickWebViewPrivate::initializeDesktop):
456         (QQuickWebViewPrivate::initializeTouch):
457         (QQuickWebViewPrivate::loadDidCommit):
458         (QQuickWebViewPrivate::contentSizeChanged):
459         (QQuickWebViewPrivate::scrollPositionRequested):
460         (QQuickWebViewPrivate::_q_viewportUpdated):
461         (QQuickWebViewPrivate::_q_viewportTrajectoryVectorChanged):
462         (QQuickWebViewPrivate::_q_onVisibleChanged):
463         (QQuickWebViewPrivate::updateViewportSize):
464         (QQuickWebViewPrivate::updateViewportConstraints):
465         (QQuickWebViewPrivate::didChangeViewportProperties):
466         (QQuickWebViewPrivate::runJavaScriptAlert):
467         (QQuickWebViewPrivate::runJavaScriptConfirm):
468         (QQuickWebViewPrivate::runJavaScriptPrompt):
469         (QQuickWebViewPrivate::chooseFiles):
470         (QQuickWebViewPrivate::_q_onOpenPanelFilesSelected):
471         (QQuickWebViewPrivate::_q_onOpenPanelFinished):
472         (QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
473         (toPolicyAction):
474         (hasMetaMethod):
475         (QQuickWebViewPrivate::navigationPolicyForURL):
476         (QQuickWebViewPrivate::setPageProxy):
477         (QQuickWebView::QQuickWebView):
478         (QQuickWebView::~QQuickWebView):
479         (QQuickWebView::page):
480         (QQuickWebView::load):
481         (QQuickWebView::postMessage):
482         (QQuickWebView::url):
483         (QQuickWebView::loadProgress):
484         (QQuickWebView::title):
485         (QQuickWebView::navigationController):
486         (QQuickWebView::preferences):
487         (QQuickWebView::geometryChanged):
488         (QQuickWebView::touchEvent):
489         (QQuickWebView::pageRef):
490         * UIProcess/API/qt/qquickwebview.h: Renamed from Source/WebKit2/UIProcess/API/qt/qbasewebview.h.
491         * UIProcess/API/qt/qquickwebview_p.h: Added.
492         * UIProcess/API/qt/qtouchwebview.cpp: Removed.
493         * UIProcess/API/qt/qtouchwebview.h: Removed.
494         * UIProcess/API/qt/qtouchwebview_p.h: Removed.
495         * UIProcess/API/qt/tests/commonviewtests/commonviewtests.pro: Removed.
496         * UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp: Removed.
497         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp: Removed.
498         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h: Removed.
499         * UIProcess/API/qt/tests/qdesktopwebview/tst_qdesktopwebview.cpp: Removed.
500         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_download.qml:
501         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_linkHovered.qml:
502         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadFail.qml:
503         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgress.qml:
504         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgressSignal.qml:
505         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadZeroSizeView.qml:
506         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_messaging.qml:
507         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_navigationPolicyForUrl.qml:
508         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_preferences.qml:
509         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_properties.qml:
510         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_load.qml:
511         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadFail.qml:
512         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadNegativeSizeView.qml:
513         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgress.qml:
514         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgressSignal.qml:
515         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadZeroSizeView.qml:
516         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_properties.qml:
517         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
518         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
519         (DesktopWebView::DesktopWebView):
520         (main):
521         * UIProcess/API/qt/tests/qquickwebview/qquickwebview.pro: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qdesktopwebview/qdesktopwebview.pro.
522         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp: Added.
523         (tst_QQuickWebView::tst_QQuickWebView):
524         (tst_QQuickWebView::init):
525         (tst_QQuickWebView::cleanup):
526         (tst_QQuickWebView::webView):
527         (tst_QQuickWebView::accessPage):
528         (tst_QQuickWebView::navigationStatusAtStartup):
529         (LoadStartedCatcher::LoadStartedCatcher):
530         (LoadStartedCatcher::onLoadStarted):
531         (tst_QQuickWebView::stopEnabledAfterLoadStarted):
532         (tst_QQuickWebView::baseUrl):
533         (tst_QQuickWebView::loadEmptyUrl):
534         (tst_QQuickWebView::loadEmptyPageViewVisible):
535         (tst_QQuickWebView::loadEmptyPageViewHidden):
536         (tst_QQuickWebView::loadNonexistentFileUrl):
537         (tst_QQuickWebView::backAndForward):
538         (tst_QQuickWebView::reload):
539         (tst_QQuickWebView::stop):
540         (tst_QQuickWebView::loadProgress):
541         (tst_QQuickWebView::show):
542         * UIProcess/API/qt/tests/qtouchwebview/qtouchwebview.pro: Removed.
543         * UIProcess/API/qt/tests/qtouchwebview/tst_qtouchwebview.cpp: Removed.
544         * UIProcess/API/qt/tests/testwindow.h:
545         * UIProcess/TiledDrawingAreaProxy.h:
546         * UIProcess/qt/QtGestureRecognizer.cpp:
547         (WebKit::QtGestureRecognizer::QtGestureRecognizer):
548         (WebKit::QtGestureRecognizer::setViewportInteractionEngine):
549         * UIProcess/qt/QtGestureRecognizer.h:
550         * UIProcess/qt/QtPanGestureRecognizer.cpp:
551         (WebKit::QtPanGestureRecognizer::setViewportInteractionEngine):
552         (WebKit::QtPanGestureRecognizer::recognize):
553         * UIProcess/qt/QtPanGestureRecognizer.h:
554         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
555         (WebKit::QtPinchGestureRecognizer::recognize):
556         (WebKit::QtPinchGestureRecognizer::setViewportInteractionEngine):
557         * UIProcess/qt/QtPinchGestureRecognizer.h:
558         * UIProcess/qt/QtTouchViewInterface.cpp: Removed.
559         * UIProcess/qt/QtTouchViewInterface.h: Removed.
560         * UIProcess/qt/QtViewInterface.cpp: Added.
561         (WebKit::QtViewInterface::QtViewInterface):
562         (WebKit::QtViewInterface::didFindZoomableArea):
563         (WebKit::QtViewInterface::sceneGraphUpdateQueue):
564         (WebKit::QtViewInterface::setViewNeedsDisplay):
565         (WebKit::QtViewInterface::drawingAreaSize):
566         (WebKit::QtViewInterface::contentSizeChanged):
567         (WebKit::QtViewInterface::scrollPositionRequested):
568         (WebKit::QtViewInterface::isActive):
569         (WebKit::QtViewInterface::hasFocus):
570         (WebKit::QtViewInterface::isVisible):
571         (WebKit::QtViewInterface::startDrag):
572         (WebKit::QtViewInterface::didChangeViewportProperties):
573         (WebKit::QtViewInterface::didChangeUrl):
574         (WebKit::QtViewInterface::didChangeTitle):
575         (WebKit::QtViewInterface::didChangeToolTip):
576         (WebKit::QtViewInterface::didChangeStatusText):
577         (WebKit::QtViewInterface::didChangeCursor):
578         (WebKit::QtViewInterface::loadDidBegin):
579         (WebKit::QtViewInterface::loadDidCommit):
580         (WebKit::QtViewInterface::loadDidSucceed):
581         (WebKit::QtViewInterface::loadDidFail):
582         (WebKit::QtViewInterface::didChangeLoadProgress):
583         (WebKit::QtViewInterface::didMouseMoveOverElement):
584         (WebKit::QtViewInterface::showContextMenu):
585         (WebKit::QtViewInterface::hideContextMenu):
586         (WebKit::QtViewInterface::runJavaScriptAlert):
587         (WebKit::QtViewInterface::runJavaScriptConfirm):
588         (WebKit::QtViewInterface::runJavaScriptPrompt):
589         (WebKit::QtViewInterface::processDidCrash):
590         (WebKit::QtViewInterface::didRelaunchProcess):
591         (WebKit::QtViewInterface::engine):
592         (WebKit::QtViewInterface::downloadRequested):
593         (WebKit::QtViewInterface::chooseFiles):
594         * UIProcess/qt/QtViewInterface.h:
595         * UIProcess/qt/QtWebPageProxy.h:
596         (QtWebPageProxy::setViewportInteractionEngine):
597         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp:
598         * WebKit2.pri:
599
600 2011-11-10  Carlos Garcia Campos  <cgarcia@igalia.com>
601
602         Unreviewed. Fix make distcheck build.
603
604         * GNUmakefile.am: Fix typos in gtk-doc files and scripts.
605
606 2011-11-10  Simon Hausmann  <simon.hausmann@nokia.com>
607
608         Unreviewed Mac build fix: Remove TapAndHold gesture type.
609
610         It broke the build because it's unhandled. Remove it since it's not
611         supported at the moment anyway. (looks like an accidental addition?)
612
613         * Shared/WebEvent.h:
614         * UIProcess/qt/QtTapGestureRecognizer.cpp:
615         (WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):
616
617 2011-11-09  Simon Hausmann  <simon.hausmann@nokia.com>
618
619         [Qt] Enable exports and constructor functions in static libs
620
621         Reviewed by Tor Arne Vestbø.
622
623         * WebProcess/WebPage/qt/WebPageQt.cpp:
624         (WebKit::WebPage::platformInitialize): Remove unnecessary manual Qt resource
625         initialization.
626
627 2011-11-10  Zeno Albisser  <zeno.albisser@nokia.com>
628
629         [Qt][WK2] Add Tap Gesture recognition to UIProcess
630         https://bugs.webkit.org/show_bug.cgi?id=71841
631
632         Add a Tap gesture recognizer that delivers GestureSingleTap
633         and GestureTapAndHold events through the WebPageProxy.
634         Add a GestureTapAndHold to WebEvent.
635         Add a DoubleTap gesture for zooming in and out.
636
637         This patch is based on work of Benjamin Poulain.
638
639         Reviewed by Kenneth Rohde Christiansen.
640
641         * Shared/WebEvent.h:
642         * Target.pri:
643         * UIProcess/qt/QtTapGestureRecognizer.cpp: Added.
644         (WebKit::QtTapGestureRecognizer::QtTapGestureRecognizer):
645         (WebKit::QtTapGestureRecognizer::setWebPageProxy):
646         (WebKit::QtTapGestureRecognizer::recognize):
647         (WebKit::QtTapGestureRecognizer::tapTimeout):
648         (WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):
649         (WebKit::QtTapGestureRecognizer::reset):
650         (WebKit::QtTapGestureRecognizer::timerEvent):
651         * UIProcess/qt/QtTapGestureRecognizer.h: Added.
652         * UIProcess/qt/QtWebPageProxy.cpp:
653         (QtWebPageProxy::QtWebPageProxy):
654         (QtWebPageProxy::processDidCrash):
655         (QtWebPageProxy::doneWithTouchEvent):
656         * UIProcess/qt/QtWebPageProxy.h:
657
658 2011-11-09  Shinya Kawanaka  <shinyak@google.com>
659
660         Internals.markerRangeForNode should be able to take markers by specifying a marker type.
661         https://bugs.webkit.org/show_bug.cgi?id=71792
662
663         Reviewed by Hajime Morita.
664
665         * win/WebKit2.def: Exposed necessary references.
666         * win/WebKit2CFLite.def: ditto.
667
668 2011-10-26  Martin Robinson  <mrobinson@igalia.com>
669
670         [GTK] [WebKit] Replace the gtkdoc autools magic with something more flexible
671         https://bugs.webkit.org/show_bug.cgi?id=70877
672
673         Reviewed by Philippe Normand.
674
675         Add a script that runs gtkdoc manually instead of using the autotools
676         magic. Remove now unused gtkdoc files.
677
678         * GNUmakefile.am: Remove references to removed gtkdoc files.
679         * UIProcess/API/gtk/docs/GNUmakefile.am: Removed.
680         * UIProcess/API/gtk/docs/build-gtkdoc: Added.
681         * UIProcess/API/gtk/docs/gtkdoc.py: Added.
682         * UIProcess/API/gtk/docs/version.xml.in: Removed.
683
684 2011-11-09  Alexey Proskuryakov  <ap@apple.com>
685
686         <rdar://problem/10423024> WebProcess doesn't use AuthBrokerAgent for proxy credentials
687         https://bugs.webkit.org/show_bug.cgi?id=71964
688
689         Reviewed by Darin Adler.
690
691         * WebProcess/com.apple.WebProcess.sb: Allow mach-lookup of com.apple.cfnetwork.AuthBrokerAgent.
692
693 2011-11-09  Anders Carlsson  <andersca@apple.com>
694
695         Element::boundsInWindowSpace should be Element::boundsInRootViewSpace
696         https://bugs.webkit.org/show_bug.cgi?id=71955
697
698         Reviewed by Sam Weinig.
699
700         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
701         (WebKit::InjectedBundleNodeHandle::elementBounds):
702         Call Element::boundsInRootViewSpace.
703
704 2011-11-09  Alexis Menard  <alexis.menard@openbossa.org>
705
706         WebGraphicsLayer behaves wrongly when no contentsScale is set.
707         https://bugs.webkit.org/show_bug.cgi?id=71959
708
709         Reviewed by Noam Rosenthal.
710
711         The contentsScale needs to get a default value just like
712         TiledBackingStore in case no value is explicitely set.
713
714         It is covered by existing tests.
715
716         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
717         (WebCore::WebGraphicsLayer::WebGraphicsLayer):
718
719 2011-11-09  Mark Hahnenberg  <mhahnenberg@apple.com>
720
721         De-virtualize JSObject::getOwnPropertyDescriptor
722         https://bugs.webkit.org/show_bug.cgi?id=71523
723
724         Reviewed by Sam Weinig.
725
726         Added getOwnPropertyDescriptor to the MethodTable, changed all of the 
727         virtual versions of getOwnPropertyDescriptor to static ones, and 
728         changed all of the call sites to the corresponding lookup in the MethodTable.
729
730         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
731         (WebKit::JSNPObject::getOwnPropertyDescriptor):
732         * WebProcess/Plugins/Netscape/JSNPObject.h:
733
734 2011-11-09  Alexandru Chiculita  <achicu@adobe.com>
735
736         Fixing build on MacOSX SL after 71838
737         https://bugs.webkit.org/show_bug.cgi?id=71912
738
739         Reviewed by Anders Carlsson.
740
741         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
742         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
743
744 2011-11-09  Kenneth Rohde Christiansen  <kenneth@webkit.org>
745
746         [WebKit2] Prepare viewport meta handling for desktop usage
747         https://bugs.webkit.org/show_bug.cgi?id=71907
748
749         Reviewed by Simon Hausmann.
750
751         This is only used by Qt so far. Now we don't always layout pages
752         without the viewport meta tag, using 980 as the layout width, but
753         instead we use that value (it is a setting) as a minimum value, or
754         else we use the viewport width.
755
756         * UIProcess/API/qt/qtouchwebview.cpp:
757         (QTouchWebViewPrivate::updateViewportSize):
758         (QTouchWebViewPrivate::updateViewportConstraints):
759         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
760         (WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):
761         * WebProcess/WebPage/WebPage.cpp:
762         (WebKit::WebPage::setViewportSize):
763
764 2011-11-09  Simon Hausmann  <simon.hausmann@nokia.com>
765
766         Unreviewed, rolling out r99701.
767         http://trac.webkit.org/changeset/99701
768
769         Breaks Qt mac build
770
771         * WebProcess/WebPage/qt/WebPageQt.cpp:
772         (initResources):
773         (WebKit::WebPage::platformInitialize):
774
775 2011-11-09  Simon Hausmann  <simon.hausmann@nokia.com>
776
777         [Qt] Enable exports and constructor functions in static libs
778
779         Reviewed by Tor Arne Vestbø.
780
781         * WebProcess/WebPage/qt/WebPageQt.cpp:
782         (WebKit::WebPage::platformInitialize): Remove unnecessary manual Qt resource
783         initialization.
784
785 2011-11-09  Simon Hausmann  <simon.hausmann@nokia.com>
786
787         [Qt] Fix geolocation enabled build.
788
789         Reviewed by Tor Arne Vestbø.
790
791         * Target.pri: Add QT += location to get the right module includes.
792         * UIProcess/qt/WebGeolocationProviderQt.cpp: Include the moc file with the right name (GeoLocation -> Geolocation)
793         * UIProcess/qt/WebGeolocationProviderQt.h: Removed the ENABLE(GEOLOCATION) guards, otherwise moc doesn't generate
794         code, because it can't interpret the ENABLE() macro.
795
796 2011-11-09  Simon Hausmann  <simon.hausmann@nokia.com>
797
798         [Qt] Build system cleanup
799         https://bugs.webkit.org/show_bug.cgi?id=71815
800
801         Reviewed by Kenneth Rohde Christiansen.
802
803         * Target.pri: Removed duplicated sources that are compiled also into QtWebKit.so through api.pri.
804         * UIProcess/qt/WebGeolocationProviderQt.cpp: Include the moc file here, as it should only be compiled
805         if geolocation is enabled.
806         * UIProcess/qt/WebGeolocationProviderQt.h: Provide ENABLE(GEOLOCATION) guards around class definition.
807
808 2011-11-08  Simon Hausmann  <simon.hausmann@nokia.com>
809
810         [Qt] Replace use of QApplication with QGuiApplication
811         https://bugs.webkit.org/show_bug.cgi?id=71794
812
813         Reviewed by Andreas Kling.
814
815         * Platform/CoreIPC/unix/ConnectionUnix.cpp: Remove unnecessary QApplication inclusion.
816         * Platform/qt/RunLoopQt.cpp: Replace QApplication include with QCoreApplication.
817         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: Ditto.
818         * UIProcess/Launcher/qt/ThreadLauncherQt.cpp: Remove unnecessary QApplication inclusion.
819         * UIProcess/qt/QtWebPageProxy.cpp:
820         (QtWebPageProxy::handleMousePressEvent): Replace QApplication usage with QStyleHints.
821         (QtWebPageProxy::handleMouseDoubleClickEvent): Ditto.
822
823 2011-11-07  Adam Barth  <abarth@webkit.org>
824
825         Move static "policy" state from SecurityOrigin.cpp to SecurityPolicy.cpp
826         https://bugs.webkit.org/show_bug.cgi?id=71755
827
828         Reviewed by Eric Seidel.
829
830         * WebProcess/InjectedBundle/InjectedBundle.cpp:
831         (WebKit::InjectedBundle::addOriginAccessWhitelistEntry):
832         (WebKit::InjectedBundle::removeOriginAccessWhitelistEntry):
833         (WebKit::InjectedBundle::resetOriginAccessWhitelists):
834         * WebProcess/Plugins/PluginView.cpp:
835         (WebKit::PluginView::loadURL):
836
837 2011-11-08  Brent Fulgham  <bfulgham@webkit.org>
838
839         [WinCairo] Unreviewed build fix after r99613.
840
841         * win/WebKit2CFLite.def: Add missing export.
842
843 2011-11-08  Brent Fulgham  <bfulgham@webkit.org>
844
845         [WinCairo] Unreviewed build fix after r98624 and r99613.
846
847         * win/WebKit2CFLite.def: Add missing exports.
848
849 2011-11-08  Beth Dakin  <bdakin@apple.com>
850
851         https://bugs.webkit.org/show_bug.cgi?id=71856
852         WebKit should use new NSWindowDidChangeBackingPropertiesNotification instead of 
853         old NSWindowDidChangeResolutionNotification
854         -and corresponding-
855         <rdar://problem/10317253>
856
857         Reviewed by Tim Hatcher.
858
859         * UIProcess/API/mac/WKView.mm:
860         (-[WKView addWindowObserversForWindow:]):
861         (-[WKView removeWindowObservers]):
862
863         We have to check that the backing scale factor actually changed since this 
864         notification can also be used to signify other changes. 
865         (-[WKView _windowDidChangeBackingProperties:]):
866
867 2011-11-08  Anders Carlsson  <andersca@apple.com>
868
869         Add a basic layer hierarchy to the Core Animation drawing area
870         https://bugs.webkit.org/show_bug.cgi?id=71838
871
872         Reviewed by Sam Weinig.
873
874         * UIProcess/API/mac/WKView.mm:
875         (-[WKView drawRect:]):
876         Return early if we're using a tiled drawing area.
877
878         (-[WKView initWithFrame:contextRef:pageGroupRef:]):
879         If we're using a tiled drawing area, make the WKView layer backed and set its layer
880         to a simple CALayer with a white background and set the view's content redraw policy
881         to never to avoid ever calling drawRect.
882
883         * UIProcess/DrawingAreaProxy.h:
884         (WebKit::DrawingAreaProxy::didUpdateGeometry):
885         * UIProcess/DrawingAreaProxy.messages.in:
886         Add a new didUpdateGeometry message.
887
888         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
889         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
890         (WebKit::TiledCoreAnimationDrawingAreaProxy::TiledCoreAnimationDrawingAreaProxy):
891         Initialize m_isWaitingForDidUpdateGeometry.
892
893         (WebKit::TiledCoreAnimationDrawingAreaProxy::sizeDidChange):
894         Send an UpdateGeometry message to the web process and wait for a reply.
895
896         (WebKit::TiledCoreAnimationDrawingAreaProxy::enterAcceleratedCompositingMode):
897         Tell the web page proxy to enter accelerated compositing mode.
898
899         (WebKit::TiledCoreAnimationDrawingAreaProxy::exitAcceleratedCompositingMode):
900         Assert that this function is never called.
901
902         (WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
903         Send another UpdateGeometry message if needed.
904
905         (WebKit::TiledCoreAnimationDrawingAreaProxy::sendUpdateGeometry):
906         Add helper function to actually send the UpdateGeometry message.
907
908         * WebProcess/WebPage/DrawingArea.h:
909         (WebKit::DrawingArea::updateGeometry):
910         * WebProcess/WebPage/DrawingArea.messages.in:
911         Add UpdateGeometry message.
912
913         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
914         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
915         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
916         Create a red root layer and a remote layer client that hosts it.
917
918         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
919         Resize the root layer and tell the UI process that we've updated the geometry.
920
921 2011-11-08  Dan Bernstein  <mitz@apple.com>
922
923         <rdar://problem/10262225> Allow RenderView to have columns
924         https://bugs.webkit.org/show_bug.cgi?id=71840
925
926         * win/WebKit2.def: Export Page::setPagination() for WebCoreTestSupport.
927
928 2011-11-08  Jon Lee  <jonlee@apple.com>
929
930         [WK2] Expose acceptMIMETypes for file inputs
931         https://bugs.webkit.org/show_bug.cgi?id=71836
932         <rdar://problem/10407367>
933
934         Reviewed by Anders Carlsson.
935
936         * Shared/WebOpenPanelParameters.cpp:
937         (WebKit::WebOpenPanelParameters::acceptMIMETypes):
938         * Shared/WebOpenPanelParameters.h:
939         * UIProcess/API/C/WKOpenPanelParameters.cpp:
940         (WKOpenPanelParametersCopyAcceptedMIMETypes):
941         * UIProcess/API/C/WKOpenPanelParameters.h:
942
943 2011-11-08  Zan Dobersek  <zandobersek@gmail.com>
944
945         [WK2][GTK] The default database & local storage directory names should note they exist for Gtk port's needs
946         https://bugs.webkit.org/show_bug.cgi?id=71837
947
948         Reviewed by Martin Robinson.
949
950         Ensure that directories for databases and local storage are in a 'webkitgtk'
951         directory in current user's data directory, noting they originate from the Gtk port.
952
953         * UIProcess/gtk/WebContextGtk.cpp:
954         (WebKit::WebContext::platformDefaultDatabaseDirectory):
955         (WebKit::WebContext::platformDefaultLocalStorageDirectory):
956
957 2011-11-08  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
958
959         [Qt] Workaround some problems in QML API tests
960         https://bugs.webkit.org/show_bug.cgi?id=71818
961
962         Reviewed by Tor Arne Vestbø.
963
964         This commit workaround the issue of QML's QtTest crashing when we run tests after
965         "windowShown". We delay to the next run of the mainloop. This workaround is not
966         pretty but shouldn't affect the semantics of the tests. And we benefit more from
967         having working tests right now.
968
969         This patch also improves Download to: wait for the load before emitting click, and
970         properly identifying the "succeeded" signal of the downloadItem object.
971
972         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_download.qml:
973         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_linkHovered.qml:
974         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_navigationPolicyForUrl.qml:
975
976 2011-11-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
977
978         Clean up QtViewportInteractionEngine
979
980         Reviewed by Simon Hausmann.
981
982         * UIProcess/qt/QtViewportInteractionEngine.cpp:
983         (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
984         (WebKit::QtViewportInteractionEngine::setItemRectVisible):
985
986             Rename the method to make it more obvious what it does. Avoid implicit
987             conversion to/from QVariant.
988
989         (WebKit::QtViewportInteractionEngine::pagePositionRequest):
990         (WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
991         (WebKit::QtViewportInteractionEngine::itemSizeChanged):
992
993             Only call this method on item size changes, and not for every interaction
994             with the viewport item. Before this change it was even being called during
995             animations.
996
997         * UIProcess/qt/QtViewportInteractionEngine.h:
998         (WebKit::QtViewportInteractionEngine::scaleAnimationValueChanged):
999
1000             Rename to make it clean that this is called from the animator.
1001
1002 2011-11-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1003
1004         [Qt] Improve the animation time constant
1005         https://bugs.webkit.org/show_bug.cgi?id=71790
1006
1007         Reviewed by Simon Hausmann.
1008
1009         Use 250 milliseconds instead of 400, which feels a lot more natural
1010         and makes the mini browser feel more responsive.
1011
1012         * UIProcess/qt/QtViewportInteractionEngine.cpp:
1013
1014 2011-11-08  Alexis Menard  <alexis.menard@openbossa.org>
1015
1016         [Qt] Merge QtDesktopWebPageProxy and QtTouchWebPageProxy into QtWebPageProxy.
1017         https://bugs.webkit.org/show_bug.cgi?id=71355
1018
1019         Reviewed by Simon Hausmann.
1020
1021         As we try to unify our public API offer we need to merge our double
1022         WebPageProxy implementations first into a common class. That will help
1023         to merge our TouchWebView and DesktopWebView views into one class later.
1024         This commit just merge stuff around and doesn't contain any functional changes.
1025
1026         * Target.pri:
1027         * UIProcess/API/qt/qdesktopwebview.cpp:
1028         (QDesktopWebViewPrivate::init):
1029         * UIProcess/API/qt/qtouchwebpage.cpp:
1030         (QTouchWebPagePrivate::paintToCurrentGLContext):
1031         * UIProcess/API/qt/qtouchwebpage.h:
1032         * UIProcess/API/qt/qtouchwebpage_p.h:
1033         * UIProcess/API/qt/qtouchwebview.cpp:
1034         (QTouchWebViewPrivate::init):
1035         (QTouchWebViewPrivate::_q_viewportUpdated):
1036         (QTouchWebViewPrivate::_q_viewportTrajectoryVectorChanged):
1037         * UIProcess/API/qt/qtouchwebview_p.h:
1038         * UIProcess/qt/QtDesktopWebPageProxy.cpp: Removed.
1039         * UIProcess/qt/QtDesktopWebPageProxy.h: Removed.
1040         * UIProcess/qt/QtTouchWebPageProxy.cpp: Removed.
1041         * UIProcess/qt/QtTouchWebPageProxy.h: Removed.
1042         * UIProcess/qt/QtWebPageProxy.cpp:
1043         (dragOperationToDropAction):
1044         (QtWebPageProxy::QtWebPageProxy):
1045         (QtWebPageProxy::handleEvent):
1046         (QtWebPageProxy::handleMouseMoveEvent):
1047         (QtWebPageProxy::handleMousePressEvent):
1048         (QtWebPageProxy::handleMouseReleaseEvent):
1049         (QtWebPageProxy::handleMouseDoubleClickEvent):
1050         (QtWebPageProxy::handleWheelEvent):
1051         (QtWebPageProxy::handleHoverLeaveEvent):
1052         (QtWebPageProxy::handleHoverMoveEvent):
1053         (QtWebPageProxy::handleDragEnterEvent):
1054         (QtWebPageProxy::handleDragLeaveEvent):
1055         (QtWebPageProxy::handleDragMoveEvent):
1056         (QtWebPageProxy::handleDropEvent):
1057         (QtWebPageProxy::timerEvent):
1058         (QtWebPageProxy::processDidCrash):
1059         (QtWebPageProxy::didReceiveDownloadResponse):
1060         (QtWebPageProxy::paintContent):
1061         (QtWebPageProxy::createDrawingAreaProxy):
1062         (QtWebPageProxy::renderToCurrentGLContext):
1063         (QtWebPageProxy::doneWithTouchEvent):
1064         (QtWebPageProxy::setVisibleContentRectAndScale):
1065         (QtWebPageProxy::setVisibleContentRectTrajectoryVector):
1066         (QtWebPageProxy::touchEvent):
1067         (QtWebPageProxy::findZoomableAreaForPoint):
1068         * UIProcess/qt/QtWebPageProxy.h:
1069
1070 2011-11-08  Zan Dobersek  <zandobersek@gmail.com>
1071
1072         [WK2][GTK] Application cache directory is incorrectly set
1073         https://bugs.webkit.org/show_bug.cgi?id=70680
1074
1075         Reviewed by Philippe Normand.
1076
1077         Correctly set application cache directory to be in current
1078         user's default cache directory.
1079
1080         * UIProcess/gtk/WebContextGtk.cpp:
1081         (WebKit::WebContext::applicationCacheDirectory):
1082
1083 2011-11-07  Emil A Eklund  <eae@chromium.org>
1084
1085         Revert platform and scrolling to ints
1086         https://bugs.webkit.org/show_bug.cgi?id=71585
1087
1088         Reviewed by Eric Seidel.
1089
1090         Replace all uses of LayoutUnit and related types with ints in platform
1091         and scrolling code.
1092
1093         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
1094         (WebKit::BuiltInPDFView::invalidateScrollbarRect):
1095         (WebKit::BuiltInPDFView::visibleHeight):
1096         (WebKit::BuiltInPDFView::visibleWidth):
1097         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
1098
1099 2011-11-07  Adam Barth  <abarth@webkit.org>
1100
1101         Move DomainRelaxationForbidden scheme registry to SchemeRegistry
1102         https://bugs.webkit.org/show_bug.cgi?id=71750
1103
1104         Reviewed by Eric Seidel.
1105
1106         * WebProcess/WebProcess.cpp:
1107         (WebKit::WebProcess::setDomainRelaxationForbiddenForURLScheme):
1108
1109 2011-11-07  Beth Dakin  <bdakin@apple.com>
1110
1111         https://bugs.webkit.org/show_bug.cgi?id=71490
1112         Support uiStateTransitionProgress for scrollbars
1113         -and corresponding-
1114         <rdar://problem/9849612>
1115
1116         Reviewed by Sam Weinig.
1117
1118         Scrollbar::mouseUp() now takes a PlatformMouseEvent as a parameter.
1119         * UIProcess/win/WebPopupMenuProxyWin.cpp:
1120         (WebKit::WebPopupMenuProxyWin::onLButtonUp):
1121         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
1122         (WebKit::BuiltInPDFView::handleMouseEvent):
1123
1124 2011-11-07  Alexey Proskuryakov  <ap@apple.com>
1125
1126         The Full Keyboard Access preference should be read in the UI process
1127         https://bugs.webkit.org/show_bug.cgi?id=71734
1128         <rdar://problem/9237619>
1129
1130         Reviewed by Darin Adler.
1131
1132         This is consistent with how other global preferences (like language) are handled, and lets
1133         us tighten up the sandbox a little.
1134
1135         * Shared/WebProcessCreationParameters.cpp:
1136         (WebKit::WebProcessCreationParameters::encode):
1137         (WebKit::WebProcessCreationParameters::decode):
1138         * Shared/WebProcessCreationParameters.h:
1139         Added fullKeyboardAccessEnabled, so that newly started processes have the right preference value.
1140
1141         * UIProcess/WebContext.h:
1142         * UIProcess/WebContext.cpp:
1143         (WebKit::WebContext::fullKeyboardAccessModeChanged): If preference changes while a web process
1144         is already running, tell it.
1145         (WebKit::WebContext::ensureWebProcess): Set parameters.fullKeyboardAccessEnabled from current
1146         preference.
1147
1148         * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::fullKeyboardAccessEnabled):
1149         * UIProcess/mac/WebProcessProxyMac.mm: (WebKit::WebProcessProxy::fullKeyboardAccessEnabled):
1150         * UIProcess/WebProcessProxy.h:
1151         Proxy it to Objective-C code. WebProcessProxy is as good place to have the static function
1152         as any. One day, we will make code more consistent with language and other global preferences.
1153
1154         * UIProcess/mac/WKFullKeyboardAccessWatcher.h: Copied from Source/WebKit2/WebProcess/mac/WKFullKeyboardAccessWatcher.h.
1155         * UIProcess/mac/WKFullKeyboardAccessWatcher.mm: Copied from Source/WebKit2/WebProcess/mac/WKFullKeyboardAccessWatcher.mm.
1156         * WebProcess/mac/WKFullKeyboardAccessWatcher.h: Removed.
1157         * WebProcess/mac/WKFullKeyboardAccessWatcher.mm: Removed.
1158         (-[WKFullKeyboardAccessWatcher retrieveKeyboardUIModeFromPreferences:]): Once retrieved,
1159         push the preference value.
1160
1161         * WebKit2.xcodeproj/project.pbxproj: WKFullKeyboardAccessWatcher is now in UI process.
1162
1163         * WebProcess/WebProcess.h:
1164         * WebProcess/WebProcess.cpp:
1165         (WebKit::WebProcess::WebProcess):
1166         (WebKit::WebProcess::fullKeyboardAccessModeChanged):
1167         (WebKit::WebProcess::fullKeyboardAccessEnabled):
1168         * WebProcess/mac/WebProcessMac.mm:
1169         WebCprocess now holds the preference value in a mamber value, which UI process pushes
1170         updates to.
1171
1172         * WebProcess/WebProcess.messages.in: Added a message for changes preference value.
1173
1174         * WebProcess/com.apple.WebProcess.sb: We no longer need read access to com.apple.universalaccess.plist.
1175
1176 2011-11-07  Anders Carlsson  <andersca@apple.com>
1177
1178         Add TiledCoreAnimationDrawingArea stub classes
1179         https://bugs.webkit.org/show_bug.cgi?id=71729
1180
1181         Reviewed by Sam Weinig.
1182
1183         * Shared/DrawingAreaInfo.h:
1184         * UIProcess/API/mac/WKView.mm:
1185         (-[WKView _shouldUseTiledDrawingArea]):
1186         (-[WKView WebKit::]):
1187         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
1188         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm: Copied from Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp.
1189         (WebKit::TiledCoreAnimationDrawingAreaProxy::create):
1190         (WebKit::TiledCoreAnimationDrawingAreaProxy::TiledCoreAnimationDrawingAreaProxy):
1191         (WebKit::TiledCoreAnimationDrawingAreaProxy::~TiledCoreAnimationDrawingAreaProxy):
1192         (WebKit::TiledCoreAnimationDrawingAreaProxy::deviceScaleFactorDidChange):
1193         (WebKit::TiledCoreAnimationDrawingAreaProxy::sizeDidChange):
1194         * WebKit2.xcodeproj/project.pbxproj:
1195         * WebProcess/WebPage/DrawingArea.cpp:
1196         (WebKit::DrawingArea::create):
1197         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h: Copied from Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp.
1198         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: Copied from Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp.
1199         (WebKit::TiledCoreAnimationDrawingArea::create):
1200         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
1201         (WebKit::TiledCoreAnimationDrawingArea::~TiledCoreAnimationDrawingArea):
1202         (WebKit::TiledCoreAnimationDrawingArea::setNeedsDisplay):
1203         (WebKit::TiledCoreAnimationDrawingArea::scroll):
1204         (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
1205         (WebKit::TiledCoreAnimationDrawingArea::scheduleCompositingLayerSync):
1206
1207 2011-11-07  Anders Carlsson  <andersca@apple.com>
1208
1209         Follow-up build fix.
1210
1211         * WebProcess/WebPage/DrawingAreaImpl.h:
1212
1213 2011-11-07  Anders Carlsson  <andersca@apple.com>
1214
1215         Remove unused DrawingArea::syncCompositingLayers
1216         https://bugs.webkit.org/show_bug.cgi?id=71717
1217
1218         Reviewed by John Sullivan.
1219
1220         * WebProcess/WebPage/DrawingArea.h:
1221         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1222         * WebProcess/WebPage/TiledDrawingArea.h:
1223
1224 2011-11-07  Anders Carlsson  <andersca@apple.com>
1225
1226         Rename NetscapePlugin::wantsWindowRelativeNPWindowCoordinates to NetscapePlugin::wantsPluginRelativeNPWindowCoordinates
1227         https://bugs.webkit.org/show_bug.cgi?id=71708
1228
1229         Reviewed by Sam Weinig.
1230
1231         The name wantsPluginRelativeNPWindowCoordinates is more clear than wantsWindowRelativeNPWindowCoordinates. Rename the functions
1232         everywhere and, since the meaning is now inverted, invert the checks and return values.
1233
1234         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1235         (WebKit::NetscapePlugin::callSetWindow):
1236         (WebKit::NetscapePlugin::geometryDidChange):
1237         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1238         * WebProcess/Plugins/Netscape/NetscapePluginNone.cpp:
1239         (WebKit::NetscapePlugin::wantsPluginRelativeNPWindowCoordinates):
1240         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
1241         (WebKit::NetscapePlugin::wantsPluginRelativeNPWindowCoordinates):
1242         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
1243         (WebKit::NetscapePlugin::wantsPluginRelativeNPWindowCoordinates):
1244         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
1245         (WebKit::NetscapePlugin::wantsPluginRelativeNPWindowCoordinates):
1246
1247 2011-11-07  Anders Carlsson  <andersca@apple.com>
1248
1249         NetscapePlugin::wantsWindowRelativeNPWindowCoordinates should return false on Mac
1250         https://bugs.webkit.org/show_bug.cgi?id=71707
1251
1252         Reviewed by Sam Weinig.
1253
1254         This changes the way the fake Carbon plug-in window is positioned, so that it's always the same size
1255         and location as the plug-in (relative to the screen).
1256
1257         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1258         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
1259         (WebKit::NetscapePlugin::platformGeometryDidChange):
1260         Call updateFakeWindowBounds.
1261
1262         (WebKit::NetscapePlugin::updateFakeWindowBounds):
1263         Convert the plug-in position to screen coordinates and set the window bounds to be the location and
1264         size of the plug-in, where the location is relative to the screen.
1265
1266         (WebKit::NetscapePlugin::wantsWindowRelativeNPWindowCoordinates):
1267         Return false.
1268
1269         (WebKit::NetscapePlugin::windowAndViewFramesChanged):
1270         Call updateFakeWindowBounds.
1271
1272 2011-11-07  Sam Weinig  <sam@webkit.org>
1273
1274         WKPage.h should be in PrivateHeaders.
1275
1276         Rubber-stamped by Anders Carlsson.
1277
1278         * WebKit2.xcodeproj/project.pbxproj:
1279         Mark WKPage.h private.
1280
1281 2011-11-07  Anders Carlsson  <andersca@apple.com>
1282
1283         Simplify NetscapePlugin::convertPoint and make it work (in theory) with transformed plug-ins
1284         https://bugs.webkit.org/show_bug.cgi?id=71699
1285
1286         Reviewed by Sam Weinig.
1287
1288         Add a getScreenTransform function which given a coordinate space returns a transform that converts a
1289         point from that coordinate space to the screen coordinate space. We then get the source -> screen transform
1290         and the destination -> screen transform. We invert the destination -> screen transform, multiply it with the
1291         source -> screen transform and use mapPoint to get a complete affine transform from the source to the destination space
1292         and use mapPoint to map the source point and return the destination point.
1293
1294         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1295         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
1296         (WebKit::NetscapePlugin::getScreenTransform):
1297         (WebKit::NetscapePlugin::convertPoint):
1298
1299         * WebProcess/Plugins/PluginView.cpp:
1300         (WebKit::PluginView::initializePlugin):
1301         Call windowAndViewFramesChanged before viewGeometryDidChange so that the window and view frames will be up to date by
1302         the time NPP_SetWindow is called in the plug-in.
1303
1304 2011-11-07  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1305
1306         [Qt] Put handling of gestures and their interaction in one place
1307         https://bugs.webkit.org/show_bug.cgi?id=71682
1308
1309         Reviewed by Simon Hausmann.
1310
1311         Before this patch, the interaction (ie. cancelling animations, events)
1312         was handled in the respective recognizers which then knew about each
1313         others.
1314
1315         * UIProcess/qt/QtGestureRecognizer.h:
1316         (WebKit::QtGestureRecognizer::isRecognized):
1317         * UIProcess/qt/QtPanGestureRecognizer.cpp:
1318         (WebKit::QtPanGestureRecognizer::recognize):
1319         * UIProcess/qt/QtPanGestureRecognizer.h:
1320         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
1321         (WebKit::QtPinchGestureRecognizer::recognize):
1322         * UIProcess/qt/QtPinchGestureRecognizer.h:
1323         * UIProcess/qt/QtTouchWebPageProxy.cpp:
1324         (QtTouchWebPageProxy::QtTouchWebPageProxy):
1325         (QtTouchWebPageProxy::doneWithTouchEvent):
1326         * UIProcess/qt/QtTouchWebPageProxy.h:
1327         * UIProcess/qt/QtViewportInteractionEngine.cpp:
1328         (WebKit::QtViewportInteractionEngine::pagePositionRequest):
1329         (WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
1330         (WebKit::QtViewportInteractionEngine::scrollAnimationActive):
1331         (WebKit::QtViewportInteractionEngine::interruptScrollAnimation):
1332         (WebKit::QtViewportInteractionEngine::panGestureActive):
1333         (WebKit::QtViewportInteractionEngine::scaleAnimationActive):
1334         (WebKit::QtViewportInteractionEngine::interruptScaleAnimation):
1335         (WebKit::QtViewportInteractionEngine::pinchGestureActive):
1336         * UIProcess/qt/QtViewportInteractionEngine.h:
1337
1338 2011-11-07  Simon Hausmann  <simon.hausmann@nokia.com>
1339
1340         [Qt] Make it possible to include qdesktopwebview.h from apps
1341
1342         Reviewed by Tor Arne Vestbø.
1343
1344         * UIProcess/API/qt/qdesktopwebview.h: Don't include C API headers, forward
1345         declare the structs manually.
1346
1347 2011-11-07  Simon Hausmann  <simon.hausmann@nokia.com>
1348
1349         [Qt] Fix failing inspector tests after build system changes
1350         https://bugs.webkit.org/show_bug.cgi?id=71677
1351
1352         Reviewed by Tor Arne Vestbø.
1353
1354         Ensure symbols from the qt resource system are referenced
1355         from outside the static webcore library. One way of doing that is
1356         to initialize the resources right away, as explained in the documentation
1357         of th Qt resource system.
1358
1359         * WebProcess/WebPage/qt/WebPageQt.cpp:
1360         (initResources):
1361         (WebKit::WebPage::platformInitialize):
1362
1363 2011-11-03  Anders Carlsson  <andersca@apple.com>
1364
1365         Add NetscapePlugin::convertFromRootView
1366         https://bugs.webkit.org/show_bug.cgi?id=71526
1367
1368         Reviewed by Sam Weinig.
1369
1370         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1371         (WebKit::NetscapePlugin::convertFromRootView):
1372         New function that converts a point from root view coordinates to plug-in coordinates.
1373         Returns false if the conversion can't be done.
1374
1375         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1376         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
1377         (WebKit::fillInCocoaEventFromMouseEvent):
1378         (WebKit::initializeMouseEvent):
1379         (WebKit::NetscapePlugin::platformHandleMouseEvent):
1380         (WebKit::NetscapePlugin::platformHandleWheelEvent):
1381         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
1382         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
1383         Use convertFromRootView instead of subtracting m_frameRectInWindowCoordinates.location() from the
1384         event position (which is in root view coordinates).
1385
1386 2011-11-04  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1387
1388         [Qt] Refactor and clean up the qmake build system
1389
1390         The qmake build system has accumulated a bit of cruft and redundancy
1391         over time. There's also a fairly tight coupling between how to build
1392         the various targets, and _what_ to build, making it harder to add new
1393         rules or sources. This patch aims to elevate these issues somewhat.
1394
1395         This is a short-list of the changes:
1396
1397           * The rules for how to build targets are now mostly contained as
1398             prf-files in Tools/qmake/mkspecs/features. Using mkspecs also
1399             allows us to do pre- and post-processing of each project file,
1400             which helps to clean up the actual project files.
1401
1402           * Derived sources are no longer generated as a separate make-step
1403             but is part of each target's project file as a subdir. Makefile
1404             rules are used to ensure that we run make on the derived sources
1405             before running qmake on the actual target makefile. This makes
1406             it easier to keep a proper dependency between derived sources
1407             and the target.
1408
1409           * We use GNU make and the compiler to generate dependencies on
1410             UNIX-based systems running Qt 5. This allows us to lessen the
1411             need to run qmake, which should reduce compile time.
1412
1413           * WebKit2 is now build by default if building with Qt 5. It can
1414             be disabled by passing --no-webkit2 to build-webkit.
1415
1416         The result of these changes are hopefully a cleaner and easier
1417         build system to modify, and faster build times due to no longer
1418         running qmake on every single build. It's also a first step
1419         towards possibly generating the list of sources using another
1420         build system.
1421
1422         https://bugs.webkit.org/show_bug.cgi?id=71222
1423
1424         Reviewed by Simon Hausmann.
1425
1426         * DerivedSources.pri: Renamed from Source/WebKit2/DerivedSources.pro.
1427         * Target.pri: Copied from Source/WebKit2/WebKit2.pro.
1428         * UIProcess/API/qt/tests/tests.pri:
1429         * UIProcess/API/qt/tests/tests.pro: Removed.
1430         * WebKit2.pri:
1431         * WebKit2.pro:
1432         * WebKit2API.pri: Removed.
1433         * WebProcess.pro:
1434
1435 2011-11-04  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1436
1437         [Qt] Support programmatic scrolling with the QTouchWebView
1438
1439         Reviewed by Simon Hausmann.
1440
1441         As more code can be shared between the programmatic scrolling and the
1442         method for ensuring that the contents are within valid bounds, this
1443         patch includes a bit of refactoring as well.
1444
1445         * UIProcess/API/qt/qdesktopwebview_p.h:
1446         (QDesktopWebViewPrivate::scrollPositionRequested):
1447         * UIProcess/API/qt/qtouchwebview.cpp:
1448         (QTouchWebViewPrivate::scrollPositionRequested):
1449         * UIProcess/API/qt/qtouchwebview_p.h:
1450         * UIProcess/qt/QtTouchViewInterface.cpp:
1451         (WebKit::QtTouchViewInterface::scrollPositionRequested):
1452         * UIProcess/qt/QtTouchViewInterface.h:
1453         * UIProcess/qt/QtViewInterface.h:
1454         * UIProcess/qt/QtViewportInteractionEngine.cpp:
1455         (WebKit::QtViewportInteractionEngine::event):
1456         (WebKit::boundPosition):
1457         (WebKit::QtViewportInteractionEngine::pagePositionRequest):
1458         (WebKit::QtViewportInteractionEngine::computePosRangeForItemAtScale):
1459         (WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):
1460         (WebKit::QtViewportInteractionEngine::setConstraints):
1461         (WebKit::QtViewportInteractionEngine::pinchGestureEnded):
1462         (WebKit::QtViewportInteractionEngine::contentViewportChanged):
1463         * UIProcess/qt/QtViewportInteractionEngine.h:
1464         * UIProcess/qt/QtWebPageProxy.cpp:
1465         (QtWebPageProxy::pageDidRequestScroll):
1466         * UIProcess/qt/QtWebPageProxy.h:
1467
1468 2011-11-03  Mark Hahnenberg  <mhahnenberg@apple.com>
1469
1470         De-virtualize JSObject::getPropertyNames
1471         https://bugs.webkit.org/show_bug.cgi?id=71306
1472
1473         Reviewed by Darin Adler.
1474
1475         Added getPropertyNames to the MethodTable, changed all the virtual 
1476         implementations of getPropertyNames to static ones, and replaced 
1477         all call sites with corresponding lookups in the MethodTable.
1478
1479         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
1480         (WebKit::NPJSObject::enumerate):
1481
1482 2011-11-03  Anders Carlsson  <andersca@apple.com>
1483
1484         Get rid of NetscapePlugin::m_clipRectInWindowCoordinates
1485         https://bugs.webkit.org/show_bug.cgi?id=71521
1486
1487         Reviewed by Dan Bernstein.
1488
1489         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1490         (WebKit::NetscapePlugin::geometryDidChange):
1491         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1492
1493 2011-11-03  Anders Carlsson  <andersca@apple.com>
1494
1495         Use convertToRootView(IntPoint()) instead of m_frameRectInWindowCoordinates.location() where possible
1496         https://bugs.webkit.org/show_bug.cgi?id=71520
1497
1498         Reviewed by Dan Bernstein.
1499
1500         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
1501         (WebKit::NetscapePlugin::scheduleWindowedGeometryUpdate):
1502         (WebKit::NetscapePlugin::platformPaint):
1503         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
1504         (WebKit::NetscapePlugin::platformHandleMouseEvent):
1505         (WebKit::NetscapePlugin::platformHandleWheelEvent):
1506         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
1507         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
1508
1509 2011-11-03  Anders Carlsson  <andersca@apple.com>
1510
1511         Add NetscapePlugin::convertToRootView
1512         https://bugs.webkit.org/show_bug.cgi?id=71519
1513
1514         Reviewed by Darin Adler.
1515
1516         Yet another step towards eliminating uses of m_frameRectInWindowCoordinates.
1517
1518         Also, use the "root view" terminology, since that's really what we mean here.
1519
1520         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1521         (WebKit::NetscapePlugin::callSetWindow):
1522         Use convertToRootView to get the plug-in location and clip rect in root view coordinates.
1523
1524         (WebKit::NetscapePlugin::convertToRootView):
1525         Apply the m_pluginToRootViewTransform.mapPoint transform.
1526
1527         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1528         Add convertToRootView.
1529
1530 2011-11-03  Anders Carlsson  <andersca@apple.com>
1531
1532         Move plug-in size and backing store checks to PluginProxy::updateBackingStore
1533         https://bugs.webkit.org/show_bug.cgi?id=71508
1534
1535         Reviewed by Darin Adler.
1536
1537         * WebProcess/Plugins/PluginProxy.cpp:
1538         (WebKit::PluginProxy::geometryDidChange):
1539         Remove code to send back an empty backing store if the plug-in size is empty
1540         or doesn't need a backing store. This check is now done...
1541
1542         (WebKit::PluginProxy::updateBackingStore):
1543         ...here.
1544
1545 2011-11-03  Anders Carlsson  <andersca@apple.com>
1546
1547         Get rid of PluginControllerProxy::m_frameRectInWindowCoordinates
1548         https://bugs.webkit.org/show_bug.cgi?id=71506
1549
1550         Reviewed by Darin Adler.
1551
1552         * PluginProcess/PluginControllerProxy.cpp:
1553         (WebKit::PluginControllerProxy::geometryDidChange):
1554         This no longer needs to take the frame rect in window coordinates.
1555
1556         * PluginProcess/PluginControllerProxy.h:
1557         * PluginProcess/PluginControllerProxy.messages.in:
1558         Remove frameRectInWindowCoordinates from the GeometryDidChange message.
1559
1560         * WebProcess/Plugins/PluginProxy.cpp:
1561         (WebKit::PluginProxy::geometryDidChange):
1562         Don't pass frameRectInWindowCoordinates when sending GeometryDidChange.
1563
1564 2011-11-03  Anders Carlsson  <andersca@apple.com>
1565
1566         Get rid of Plugin::wantsWindowRelativeCoordinates()
1567         https://bugs.webkit.org/show_bug.cgi?id=71504
1568
1569         Reviewed by Darin Adler.
1570
1571         Since all Plugin subclasses now return false for wantsWindowRelativeCoordinates,
1572         we can go ahead and remove it.
1573
1574         * PluginProcess/PluginControllerProxy.cpp:
1575         (WebKit::PluginControllerProxy::paint):
1576         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1577         (WebKit::NetscapePlugin::snapshot):
1578         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1579         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
1580         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
1581         * WebProcess/Plugins/Plugin.h:
1582         * WebProcess/Plugins/PluginProxy.cpp:
1583         * WebProcess/Plugins/PluginProxy.h:
1584         * WebProcess/Plugins/PluginView.cpp:
1585         (WebKit::PluginView::paint):
1586
1587 2011-11-03  Anders Carlsson  <andersca@apple.com>
1588
1589         NetscapePlugin::wantsWindowRelativeCoordinates should return false for all ports
1590         https://bugs.webkit.org/show_bug.cgi?id=71501
1591
1592         Reviewed by Darin Adler.
1593
1594         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1595         (WebKit::NetscapePlugin::wantsWindowRelativeCoordinates):
1596         Return false.
1597
1598         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
1599         (WebKit::NetscapePlugin::platformGeometryDidChange):
1600         Use m_pluginSize instead of m_frameRectInWindowCoordinates.size().
1601
1602         (WebKit::NetscapePlugin::platformPaint):
1603         No need to translate back and forth between window and plug-in relative coordinates anymore.
1604
1605 2011-11-03  Darin Adler  <darin@apple.com>
1606
1607         Change remaining callers of releaseRef to call leakRef
1608         https://bugs.webkit.org/show_bug.cgi?id=71422
1609
1610         Reviewed by Darin Fisher.
1611
1612         * Platform/mac/ModuleMac.mm:
1613         (WebKit::Module::load):
1614         * Shared/API/c/WKArray.cpp:
1615         (WKArrayCreate):
1616         * Shared/API/c/WKData.cpp:
1617         (WKDataCreate):
1618         * Shared/API/c/WKDictionary.cpp:
1619         (WKDictionaryCopyKeys):
1620         * Shared/API/c/WKGeometry.cpp:
1621         (WKPointCreate):
1622         (WKSizeCreate):
1623         (WKRectCreate):
1624         * Shared/API/c/WKMutableArray.cpp:
1625         (WKMutableArrayCreate):
1626         * Shared/API/c/WKMutableDictionary.cpp:
1627         (WKMutableDictionaryCreate):
1628         * Shared/API/c/WKNumber.cpp:
1629         (WKBooleanCreate):
1630         (WKDoubleCreate):
1631         (WKUInt64Create):
1632         * Shared/API/c/WKSharedAPICast.h:
1633         (WebKit::toCopiedAPI):
1634         (WebKit::toCopiedURLAPI):
1635         * Shared/API/c/cf/WKErrorCF.cpp:
1636         (WKErrorCreateWithCFError):
1637         * Shared/API/c/cf/WKURLRequestCF.cpp:
1638         (WKURLRequestCreateWithCFURLRequest):
1639         * Shared/API/c/cf/WKURLResponseCF.cpp:
1640         (WKURLResponseCreateWithCFURLResponse):
1641         * Shared/API/c/mac/WKURLRequestNS.mm:
1642         (WKURLRequestCreateWithNSURLRequest):
1643         * Shared/API/c/mac/WKURLResponseNS.mm:
1644         (WKURLResponseCreateWithNSURLResponse):
1645         * Shared/cf/ArgumentCodersCF.cpp:
1646         (CoreIPC::decode):
1647         * UIProcess/API/C/WKBackForwardList.cpp:
1648         (WKBackForwardListCopyBackListWithLimit):
1649         (WKBackForwardListCopyForwardListWithLimit):
1650         * UIProcess/API/C/WKContext.cpp:
1651         (WKContextCreate):
1652         (WKContextCreateWithInjectedBundlePath):
1653         * UIProcess/API/C/WKCredential.cpp:
1654         (WKCredentialCreate):
1655         (WKCredentialCreateWithCertificateInfo):
1656         * UIProcess/API/C/WKDatabaseManager.cpp:
1657         (WKDatabaseManagerGetOriginKey):
1658         (WKDatabaseManagerGetOriginQuotaKey):
1659         (WKDatabaseManagerGetOriginUsageKey):
1660         (WKDatabaseManagerGetDatabaseDetailsKey):
1661         (WKDatabaseManagerGetDatabaseDetailsNameKey):
1662         (WKDatabaseManagerGetDatabaseDetailsDisplayNameKey):
1663         (WKDatabaseManagerGetDatabaseDetailsExpectedUsageKey):
1664         (WKDatabaseManagerGetDatabaseDetailsCurrentUsageKey):
1665         * UIProcess/API/C/WKFrame.cpp:
1666         (WKFrameCopyChildFrames):
1667         * UIProcess/API/C/WKGeolocationPosition.cpp:
1668         (WKGeolocationPositionCreate):
1669         * UIProcess/API/C/WKGrammarDetail.cpp:
1670         (WKGrammarDetailCreate):
1671         * UIProcess/API/C/WKPage.cpp:
1672         (WKPageGetSessionHistoryURLValueType):
1673         (WKPageCopySessionState):
1674         * UIProcess/API/C/WKPreferences.cpp:
1675         (WKPreferencesCreateWithIdentifier):
1676         * UIProcess/API/C/win/WKView.cpp:
1677         (WKViewCreate):
1678         * UIProcess/win/WebUndoClient.cpp:
1679         (WebKit::WebUndoClient::registerEditCommand):
1680         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1681         (WKBundleFrameCopyChildFrames):
1682         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
1683         (WKBundleNodeHandleCreate):
1684         (WKBundleNodeHandleCopyDocument):
1685         (WKBundleNodeHandleCopyHTMLTableCellElementCellAbove):
1686         (WKBundleNodeHandleCopyDocumentFrame):
1687         (WKBundleNodeHandleCopyHTMLFrameElementContentFrame):
1688         (WKBundleNodeHandleCopyHTMLIFrameElementContentFrame):
1689         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1690         (WKBundlePageCopyTrackedRepaintRects):
1691         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp:
1692         (WKBundleScriptWorldCreateWorld):
1693         Use leakRef.
1694
1695 2011-11-02  Darin Adler  <darin@apple.com>
1696
1697         Change remaining callers of releaseRef to call leakRef
1698         https://bugs.webkit.org/show_bug.cgi?id=71422
1699
1700         Reviewed by Darin Fisher.
1701
1702         * Platform/mac/ModuleMac.mm:
1703         (WebKit::Module::load): Use leakRef.
1704         (WebKit::Module::unload): Use leakRef, and cast to void
1705         to avoid unused return value warning.
1706
1707         * Shared/API/c/WKArray.cpp:
1708         (WKArrayCreate):
1709         * Shared/API/c/WKData.cpp:
1710         (WKDataCreate):
1711         * Shared/API/c/WKDictionary.cpp:
1712         (WKDictionaryCopyKeys):
1713         * Shared/API/c/WKGeometry.cpp:
1714         (WKPointCreate):
1715         (WKSizeCreate):
1716         (WKRectCreate):
1717         * Shared/API/c/WKMutableArray.cpp:
1718         (WKMutableArrayCreate):
1719         * Shared/API/c/WKMutableDictionary.cpp:
1720         (WKMutableDictionaryCreate):
1721         * Shared/API/c/WKNumber.cpp:
1722         (WKBooleanCreate):
1723         (WKDoubleCreate):
1724         (WKUInt64Create):
1725         * Shared/API/c/WKSharedAPICast.h:
1726         (WebKit::toCopiedAPI):
1727         (WebKit::toCopiedURLAPI):
1728         * Shared/API/c/cf/WKErrorCF.cpp:
1729         (WKErrorCreateWithCFError):
1730         * Shared/API/c/cf/WKURLRequestCF.cpp:
1731         (WKURLRequestCreateWithCFURLRequest):
1732         * Shared/API/c/cf/WKURLResponseCF.cpp:
1733         (WKURLResponseCreateWithCFURLResponse):
1734         * Shared/API/c/mac/WKURLRequestNS.mm:
1735         (WKURLRequestCreateWithNSURLRequest):
1736         * Shared/API/c/mac/WKURLResponseNS.mm:
1737         (WKURLResponseCreateWithNSURLResponse):
1738         * Shared/cf/ArgumentCodersCF.cpp:
1739         (CoreIPC::decode):
1740         * UIProcess/API/C/WKBackForwardList.cpp:
1741         (WKBackForwardListCopyBackListWithLimit):
1742         (WKBackForwardListCopyForwardListWithLimit):
1743         * UIProcess/API/C/WKContext.cpp:
1744         (WKContextCreate):
1745         (WKContextCreateWithInjectedBundlePath):
1746         * UIProcess/API/C/WKCredential.cpp:
1747         (WKCredentialCreate):
1748         (WKCredentialCreateWithCertificateInfo):
1749         * UIProcess/API/C/WKDatabaseManager.cpp:
1750         (WKDatabaseManagerGetOriginKey):
1751         (WKDatabaseManagerGetOriginQuotaKey):
1752         (WKDatabaseManagerGetOriginUsageKey):
1753         (WKDatabaseManagerGetDatabaseDetailsKey):
1754         (WKDatabaseManagerGetDatabaseDetailsNameKey):
1755         (WKDatabaseManagerGetDatabaseDetailsDisplayNameKey):
1756         (WKDatabaseManagerGetDatabaseDetailsExpectedUsageKey):
1757         (WKDatabaseManagerGetDatabaseDetailsCurrentUsageKey):
1758         * UIProcess/API/C/WKFrame.cpp:
1759         (WKFrameCopyChildFrames):
1760         * UIProcess/API/C/WKGeolocationPosition.cpp:
1761         (WKGeolocationPositionCreate):
1762         * UIProcess/API/C/WKGrammarDetail.cpp:
1763         (WKGrammarDetailCreate):
1764         * UIProcess/API/C/WKPage.cpp:
1765         (WKPageGetSessionHistoryURLValueType):
1766         (WKPageCopySessionState):
1767         * UIProcess/API/C/WKPreferences.cpp:
1768         (WKPreferencesCreateWithIdentifier):
1769         * UIProcess/API/C/win/WKView.cpp:
1770         (WKViewCreate):
1771         * UIProcess/win/WebUndoClient.cpp:
1772         (WebKit::WebUndoClient::registerEditCommand):
1773         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1774         (WKBundleFrameCopyChildFrames):
1775         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
1776         (WKBundleNodeHandleCreate):
1777         (WKBundleNodeHandleCopyDocument):
1778         (WKBundleNodeHandleCopyHTMLTableCellElementCellAbove):
1779         (WKBundleNodeHandleCopyDocumentFrame):
1780         (WKBundleNodeHandleCopyHTMLFrameElementContentFrame):
1781         (WKBundleNodeHandleCopyHTMLIFrameElementContentFrame):
1782         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1783         (WKBundlePageCopyTrackedRepaintRects):
1784         * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp:
1785         (WKBundleScriptWorldCreateWorld):
1786         Use leakRef.
1787
1788 2011-11-03  Anders Carlsson  <andersca@apple.com>
1789
1790         NetscapePlugin should use plug-in relative coordinates on Mac
1791         https://bugs.webkit.org/show_bug.cgi?id=71486
1792
1793         Reviewed by Adam Roben.
1794
1795         * PluginProcess/PluginControllerProxy.cpp:
1796         (WebKit::PluginControllerProxy::paint):
1797         Don't translate the graphics context when the plug-in doesn't want window relative coordinates.
1798         This also fixed a bug I introduced in my previous commit where we'd always pass the dirty rect in
1799         plug-in coordinates even if the plug-in wants window relative coordinates.
1800
1801         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1802         (WebKit::NetscapePlugin::snapshot):
1803         Don't do the whole translate dance if the plug-in doesn't want window relative coordinates.
1804
1805         (WebKit::NetscapePlugin::wantsWindowRelativeCoordinates):
1806         Return false for PLATFORM_ARCHITECTURE(MAC).
1807
1808         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
1809         (WebKit::NetscapePlugin::platformPaint):
1810         Simplify code now that we know that the we're always given plug-in relative coordinates.
1811
1812 2011-11-03  Anders Carlsson  <andersca@apple.com>
1813
1814         PluginControllerProxy's dirty rect should be in plug-in coordinates
1815         https://bugs.webkit.org/show_bug.cgi?id=71481
1816
1817         Reviewed by Sam Weinig.
1818
1819         * PluginProcess/PluginControllerProxy.cpp:
1820         (WebKit::PluginControllerProxy::paint):
1821         Convert the dirty rect to window coordinates before passing it to the plug-in.
1822
1823         (WebKit::PluginControllerProxy::invalidate):
1824         No need to convert the dirty rect to window coordinates.
1825
1826         (WebKit::PluginControllerProxy::paintEntirePlugin):
1827         Use m_pluginSize instead of m_frameRectInWindowCoordinates.isEmpty.
1828
1829 2011-11-03  Anders Carlsson  <andersca@apple.com>
1830
1831         Use the right function to determine whether NPWindow coordinates should be window relative
1832         https://bugs.webkit.org/show_bug.cgi?id=71480
1833
1834         Reviewed by Adam Roben.
1835
1836         We want to use wantsWindowRelativeNPWindowCoordinates here, and not wantsWindowRelativeCoordinates
1837         which is a temporary function that will be removed (and that returns the wrong value!)
1838
1839         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1840         (WebKit::NetscapePlugin::geometryDidChange):
1841
1842 2011-11-03  Simon Hausmann  <simon.hausmann@nokia.com>
1843
1844         Unreviewed build fix after r99195.
1845
1846         The right name is restrictMinimumScaleFactorToViewportSize.
1847
1848         * UIProcess/API/qt/qtouchwebview.cpp:
1849         (QTouchWebViewPrivate::updateViewportConstraints):
1850
1851 2011-11-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1852
1853         [GTK] Use WEBKIT_API instead of WK_EXPORT in WebKitEnumTypes.h
1854         https://bugs.webkit.org/show_bug.cgi?id=71457
1855
1856         Reviewed by Martin Robinson.
1857
1858         * GNUmakefile.am:
1859
1860 2011-11-03  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1861
1862         [Qt] Bounce back limits are wrong in some situations
1863         https://bugs.webkit.org/show_bug.cgi?id=71471
1864
1865         Reviewed by Simon Hausmann.
1866
1867         The valid position points were in viewport coordinates, but we were
1868         requiring valid position points in content coordinates.
1869
1870         * UIProcess/qt/QtViewportInteractionEngine.cpp:
1871         (WebKit::QtViewportInteractionEngine::animateContentIntoBoundariesIfNeeded):
1872
1873 2011-11-03  Fady Samuel  <fsamuel@chromium.org>
1874
1875         Removing line in computeViewportAttributes that enforces a minimum scale factor to never allow zooming out more than viewport
1876         https://bugs.webkit.org/show_bug.cgi?id=70609
1877
1878         Reviewed by Kenneth Rohde Christiansen.
1879
1880         * UIProcess/API/qt/qtouchwebview.cpp:
1881         (QTouchWebViewPrivate::updateViewportConstraints):
1882         * WebProcess/WebPage/WebPage.cpp:
1883         (WebKit::WebPage::viewportConfigurationAsText):
1884
1885 2011-11-03  Andras Becsi  <andras.becsi@nokia.com>
1886
1887         [Qt][WK2] Fix the signal signature of the loadFailed API test.
1888
1889         Rubber-stamped by Simon Hausmann.
1890
1891         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
1892         (WebViewAbstraction::touchViewLoadFailed):
1893         (WebViewAbstraction::desktopViewLoadFailed):
1894
1895 2011-11-03  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1896
1897         [Qt] Fix an assertion under WebPage::setViewportSize.
1898         https://bugs.webkit.org/show_bug.cgi?id=71473
1899
1900         Reviewed by Simon Hausmann.
1901
1902         The web view can have an empty size and it causes the assert in computeViewportAttributes.
1903         Don't notify the web page of such a size change in this case.
1904
1905         * UIProcess/API/qt/qtouchwebview.cpp:
1906         (QTouchWebViewPrivate::updateViewportSize):
1907
1908 2011-11-03  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1909
1910         [WK2] State variable name refactor in WebPageProxy.cpp
1911         https://bugs.webkit.org/show_bug.cgi?id=71467
1912
1913         Reviewed by Andreas Kling.
1914
1915         Renaming m_inDecidePolicyForMIMEType to m_inDecidePolicyForResponse after
1916         https://bugs.webkit.org/show_bug.cgi?id=55827 .
1917
1918         * UIProcess/WebPageProxy.cpp:
1919         (WebKit::WebPageProxy::WebPageProxy):
1920         (WebKit::WebPageProxy::receivedPolicyDecision):
1921         (WebKit::WebPageProxy::decidePolicyForResponse):
1922         * UIProcess/WebPageProxy.h:
1923
1924 2011-11-03  Nayan Kumar K  <nayankk@motorola.com>
1925
1926         [GTK][WEBKIT2] Add support for title property in WebKitWebView.
1927         https://bugs.webkit.org/show_bug.cgi?id=68074
1928
1929         Reviewed by Philippe Normand.
1930
1931         Support for 'title' property is added in WebKitWebView.
1932         Functions to get the value of this property is provided.
1933
1934         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
1935         (didReceiveTitleForFrame): LoaderClient titleRecieve callback.
1936         (webkitWebLoaderClientAttachLoaderClientToPage): Register didReceiveTitleForFrame callback.
1937         * UIProcess/API/gtk/WebKitWebView.cpp:
1938         (webkitWebViewGetProperty): 'title' property get function.
1939         (webkit_web_view_class_init): Register new property.
1940         (webkitWebViewSetTitle): Notify WebKitWebView about title receive.
1941         (webkit_web_view_get_title): API to get main frame title.
1942         * UIProcess/API/gtk/WebKitWebView.h: webkit_web_view_get_title API expose.
1943         * UIProcess/API/gtk/WebKitWebViewPrivate.h: Added private API.
1944         * UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp:
1945         (testWebViewTitle): Test webkit_web_view_get_title API.
1946         (beforeAll): Add testWebViewTitle test.
1947
1948 2011-11-03  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1949
1950         [Qt][WK2] Download support and API in UIProcess
1951         https://bugs.webkit.org/show_bug.cgi?id=68962
1952
1953         Reviewed by Simon Hausmann.
1954
1955         We implement our WkContextDownloadClient and the needed callbacks.
1956         We also add APIs by exposing QWebDownloadItem. Objects from this type
1957         have their ownership handled by QDesktopWebView and will be created or
1958         destroyed as needed. Classes implementing ViewInterface (QDesktopWebViewPrivate
1959         and TouchViewInterface) will receive a signal (downloadRequested) with a pointer
1960         to the recently created QWebDownloadItem. With that they can connect the proper
1961         signals and slots, set the download destination path and then call start().
1962         Objects of this type will provide the progress of a download, a slot to cancel it,
1963         and signals for getting finished or failure status.
1964         QWebDownloadItem was also exposed in QML.
1965         Qt needed an asynchronous way for UIProcess to return a destination path to WebProcess,
1966         therefore the startTransfer API was added to WebKit2's Download handlers.
1967
1968         * Shared/qt/WebCoreArgumentCodersQt.cpp:
1969         (CoreIPC::::encode):
1970         (CoreIPC::::decode):
1971         Add encoding and decoding of suggestedFilename for ResourceResponse.
1972
1973         * UIProcess/API/qt/WKView.h:
1974         * UIProcess/API/qt/qbasewebview.h: Add signal downloadRequested.
1975         * UIProcess/API/qt/qdesktopwebview.cpp:
1976         (QDesktopWebViewPrivate::downloadRequested):
1977         * UIProcess/API/qt/qdesktopwebview_p.h:
1978
1979         * UIProcess/API/qt/qwebdownloaditem.cpp: Added.
1980         (QWebDownloadItemPrivate::QWebDownloadItemPrivate):
1981         (QWebDownloadItem::QWebDownloadItem):
1982         (QWebDownloadItem::~QWebDownloadItem):
1983         (QWebDownloadItem::url):
1984         (QWebDownloadItem::destinationPath):
1985         (QWebDownloadItem::setDestinationPath):
1986         (QWebDownloadItem::suggestedFilename):
1987         (QWebDownloadItem::mimeType):
1988         (QWebDownloadItem::expectedContentLength):
1989         (QWebDownloadItem::totalBytesReceived):
1990         (QWebDownloadItem::cancel):
1991         (QWebDownloadItem::start):
1992         * UIProcess/API/qt/qwebdownloaditem.h: Added.
1993         * UIProcess/API/qt/qwebdownloaditem_p.h: Added.
1994         (QWebDownloadItemPrivate::didReceiveResponse):
1995
1996         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_download.qml: Added.
1997         * UIProcess/API/qt/tests/qmltests/common/download.html: Added.
1998         * UIProcess/API/qt/tests/qmltests/common/download.zip: Added.
1999         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2000
2001         * UIProcess/Downloads/DownloadProxy.cpp:
2002         (WebKit::DownloadProxy::startTransfer): Qt only function added.
2003         * UIProcess/Downloads/DownloadProxy.h:
2004
2005         * UIProcess/PageClient.h: Added Qt specific function to call handleDownloadRequest from QtWebPageProxy.
2006
2007         * UIProcess/WebContext.cpp:
2008         (WebKit::WebContext::download):
2009         Using WebPageProxy::handleDownloadRequest to bootstrap a download through PageClient.
2010
2011         * UIProcess/WebPageProxy.cpp:
2012         (WebKit::WebPageProxy::receivedPolicyDecision):
2013         Using handleDownloadRequest() to bootstrap a download through PageClient.
2014         (WebKit::WebPageProxy::handleDownloadRequest): Calls PageClient::handleDownloadRequest().
2015         * UIProcess/WebPageProxy.h:
2016
2017         * UIProcess/qt/QtDownloadManager.cpp: Added.
2018         (WebKit::toQtDownloadManager):
2019         (WebKit::qt_wk_didReceiveResponse):
2020         (WebKit::qt_wk_didCreateDestination):
2021         (WebKit::qt_wk_didFinishDownload):
2022         (WebKit::qt_wk_didFailDownload):
2023         (WebKit::qt_wk_didReceiveDataForDownload):
2024         (QtDownloadManager::downloadReceivedResponse): Will reach QtWebPageProxy::didReceiveDownloadResponse.
2025         (QtDownloadManager::downloadCreatedDestination):
2026         (QtDownloadManager::downloadFinished):
2027         (QtDownloadManager::downloadFailed):
2028         (QtDownloadManager::downloadDataReceived):
2029         * UIProcess/qt/QtDownloadManager.h: Added.
2030         Bootstrap our WKContextDownloadClient and set its callbacks.
2031         This entity will also handle all downloads and keep a map of them.
2032         It will be kept alive together with the WebContext as a static member
2033         of QtWebPageProxy, so we can keep it across several WebPages and, therefore,
2034         WebViews.
2035
2036         * UIProcess/qt/QtWebPageProxy.cpp:
2037         (QtWebPageProxy::defaultWKContext):
2038         (QtWebPageProxy::~QtWebPageProxy):
2039         (QtWebPageProxy::handleDownloadRequest):
2040         (QtWebPageProxy::didReceiveDownloadResponse):
2041         * UIProcess/qt/QtWebPageProxy.h:
2042         From now on it will keep a static QtDownloadManager to live together
2043         with the default WebContext. It implements PageClient::handleDownloadRequest.
2044         QtWebPageProxy::didReceiveDownloadResponse will emit the view's signal downloadRequested.
2045
2046        * UIProcess/qt/QtTouchViewInterface.h:
2047         (WebKit::QtTouchViewInterface::downloadRequested):
2048         * UIProcess/qt/QtViewInterface.h:
2049
2050         * UIProcess/qt/qweberror.cpp:
2051         (QWebError::description):
2052         * UIProcess/qt/qweberror.h:
2053         (QWebError::errorCodeAsDownloadError):
2054         Add Download error handling to QWebError and a new API
2055         to retrieve the error description from the original ResourceError.
2056         Also, it now has QWebDownloadItem::DownloadError errorCodeAsDownloadError()
2057         that returns the error code as a DownloadError.
2058
2059         * WebKit2.pro:
2060         * WebKit2API.pri:
2061
2062         * WebProcess/Downloads/Download.h:
2063         * WebProcess/Downloads/DownloadManager.cpp:
2064         (WebKit::DownloadManager::startTransfer):
2065         * WebProcess/Downloads/DownloadManager.h:
2066         Adding Qt specific startTransfer function.
2067
2068         * WebProcess/Downloads/qt/DownloadQt.cpp:
2069         (WebKit::Download::start):
2070         (WebKit::Download::startWithHandle):
2071         (WebKit::Download::didDecideDestination):
2072         (WebKit::Download::startTransfer):
2073         * WebProcess/Downloads/qt/QtFileDownloader.cpp:
2074         (WebKit::QtFileDownloader::init): start() was renamed to init().
2075         (WebKit::QtFileDownloader::determineFilename):
2076         Calling onReadyRead() here was unnecessary and it was triggering the overall
2077         download process even before DownloadManager finished startDownload(). This
2078         was leading to a DownloadManager with an empty list of downloads.
2079         (WebKit::QtFileDownloader::startTransfer): decidedDestination() became startTransfer().
2080         (WebKit::QtFileDownloader::abortDownloadWritingAndEmitError):
2081         (WebKit::QtFileDownloader::handleDownloadResponse):
2082         (WebKit::QtFileDownloader::onReadyRead):
2083         (WebKit::QtFileDownloader::onFinished):
2084         (WebKit::QtFileDownloader::cancel):
2085         * WebProcess/Downloads/qt/QtFileDownloader.h:
2086
2087         * WebProcess/WebProcess.cpp:
2088         (WebKit::WebProcess::startTransfer):
2089         * WebProcess/WebProcess.h:
2090         * WebProcess/WebProcess.messages.in:
2091         Adding Qt specific message StartTransfer and handling function.
2092
2093 2011-11-03  Nayan Kumar K  <nayankk@motorola.com>
2094
2095         Add webkit_web_view_load_html and webkit_web_view_load_plain_text APIs.
2096         https://bugs.webkit.org/show_bug.cgi?id=69249
2097
2098         Reviewed by Philippe Normand.
2099
2100         This patch adds support for 2 more load APIs, namely
2101         webkit_web_view_load_html and webkit_web_view_load_plain_text.
2102
2103         * UIProcess/API/gtk/WebKitWebView.cpp:
2104         (webkit_web_view_load_html): New API to load html string.
2105         (webkit_web_view_load_plain_text): New API to load plain text.
2106         * UIProcess/API/gtk/WebKitWebView.h: Public API addition.
2107         * UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp:
2108         (testLoadHtml): Test webkit_web_view_load_html API.
2109         (testLoadPlainText): Test webkit_web_view_load_plain_text API.
2110         (beforeAll): Add new tests.
2111         * UIProcess/API/gtk/tests/WebViewTest.cpp:
2112         (WebViewTest::loadHtml): Test webkit_web_view_load_html API.
2113         (WebViewTest::loadPlainText): Test webkit_web_view_load_plain_text API.
2114         * UIProcess/API/gtk/tests/WebViewTest.h:
2115
2116 2011-11-03  Simon Hausmann  <simon.hausmann@nokia.com>
2117
2118         [Qt][WK2] Failing assertion with desktop webview when touch mocking in MinBrowser
2119         https://bugs.webkit.org/show_bug.cgi?id=71452
2120
2121         Reviewed by Andreas Kling.
2122
2123         Don't re-implement touchEvent(), we don't intend to support touch events as we
2124         receive them from the QQuickCanvas at this point.
2125
2126         * UIProcess/API/qt/qdesktopwebview.cpp:
2127         * UIProcess/API/qt/qdesktopwebview.h:
2128
2129 2011-11-03  Simon Hausmann  <simon.hausmann@nokia.com>
2130
2131         [Qt] [WK2] MiniBrowser assert in QtWebProccess on startup in debug build.
2132         https://bugs.webkit.org/show_bug.cgi?id=71196
2133
2134         Reviewed by Kenneth Rohde Christiansen.
2135
2136         Ensure AC is turned off for the desktop view before we launch the process.
2137         This avoids "accidential" enterAc/exitAc calls that cause failing assertions
2138         because we don't really support AC in this setup.
2139
2140         The touch side works the same way, i.e. enable the preference before calling
2141         init().
2142
2143         * UIProcess/qt/QtDesktopWebPageProxy.cpp:
2144         (QtDesktopWebPageProxy::QtDesktopWebPageProxy):
2145
2146 2011-11-03  Balazs Kelemen  <kbalazs@webkit.org>
2147
2148         [Qt] X11 plugins need to be reworked for Qt5
2149         https://bugs.webkit.org/show_bug.cgi?id=70023
2150
2151         Reviewed by Simon Hausmann.
2152
2153         Disable X11 plugins.
2154         * config.h:
2155
2156 2011-11-03  Simon Hausmann  <simon.hausmann@nokia.com>
2157
2158         Unreviewed Qt build fix(es).
2159
2160         * UIProcess/qt/QtDesktopWebPageProxy.cpp:
2161         (QtDesktopWebPageProxy::handleDragMoveEvent): Adapt to dragSession API change.
2162         (QtDesktopWebPageProxy::handleDropEvent): Ditto.
2163         * WebProcess/Plugins/Netscape/NetscapePluginNone.cpp:
2164         (WebKit::NetscapePlugin::wantsWindowRelativeNPWindowCoordinates): Implement here
2165         also, for plugin-disabled builds.
2166
2167 2011-11-03  ChangSeok Oh  <shivamidow@gmail.com>
2168
2169         [GTK] Fix build-break on r99143
2170         https://bugs.webkit.org/show_bug.cgi?id=71440
2171
2172         Reviewed by Philippe Normand.
2173
2174         dragOperation() should be replaced with dragSession().operation since it was removed.
2175         And didDetectXSSForFrame of WKPageLoaderClient should be relocated.
2176
2177         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
2178         (webkitWebLoaderClientAttachLoaderClientToPage):
2179         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2180         (webkitWebViewBaseDragDataReceived):
2181         (webkitWebViewBaseDragMotion):
2182
2183 2011-11-03  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>
2184
2185         [Qt] Flagging usage of X11 headers under PLAT_ARCH(X11)
2186         https://bugs.webkit.org/show_bug.cgi?id=71409
2187
2188         Reviewed by Simon Hausmann.
2189
2190         Build fix for building qtwebkit with latest qt5 which has removed Qt X11 headers.
2191
2192         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2193
2194 2011-11-03  Philippe Normand  <pnormand@igalia.com>
2195
2196         Unreviewed, GTK build fix after r99093...
2197
2198         * PluginProcess/PluginControllerProxy.h:
2199
2200 2011-11-02  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
2201
2202         [Qt] [WK] Debug build broken
2203         https://bugs.webkit.org/show_bug.cgi?id=71417
2204
2205         Add WKNumber.h for WKBooleanGetTypeID
2206         Replace WKGetTypeId with WKGetTypeID
2207         Add initialization for didDetectXSSForFrame member in WKBundlePageLoaderClient
2208         instance.
2209
2210         Reviewed by Noam Rosenthal.
2211
2212         * WebProcess/qt/QtBuiltinBundle.cpp:
2213         (WebKit::QtBuiltinBundle::handleSetNavigatorQtObjectEnabled):
2214         * WebProcess/qt/QtBuiltinBundlePage.cpp:
2215         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
2216
2217 2011-11-02  Mark Hahnenberg  <mhahnenberg@apple.com>
2218
2219         De-virtualize JSObject::getOwnPropertyNames
2220         https://bugs.webkit.org/show_bug.cgi?id=71307
2221
2222         Reviewed by Darin Adler.
2223
2224         Added getOwnPropertyNames to the MethodTable, changed all the virtual 
2225         implementations of getOwnPropertyNames to static ones, and replaced 
2226         all call sites with corresponding lookups in the MethodTable.
2227
2228         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2229         (WebKit::JSNPObject::getOwnPropertyNames):
2230         * WebProcess/Plugins/Netscape/JSNPObject.h:
2231
2232 2011-11-02  Anders Carlsson  <andersca@apple.com>
2233
2234         Don't call NPP_SetWindow if the plug-in size or clip rect hasn't changed if the plug-in isn't using window relative coordinates
2235         https://bugs.webkit.org/show_bug.cgi?id=71418
2236
2237         Reviewed by Adam Roben.
2238
2239         This avoids calling into the plug-in when only the plug-in position relative to the window changes.
2240     
2241         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2242         (WebKit::NetscapePlugin::geometryDidChange):
2243
2244 2011-11-02  Jon Lee  <jonlee@apple.com>
2245
2246         Fix syntax error.
2247
2248         * WebProcess/WebPage/WebPage.cpp:
2249         (WebKit::WebPage::performDragControllerAction):
2250
2251 2011-11-02  Jon Lee  <jonlee@apple.com>
2252
2253         Fix build error from r99108.
2254
2255         * WebProcess/WebPage/WebPage.cpp:
2256         (WebKit::WebPage::performDragControllerAction):
2257
2258 2011-11-02  Dean Jackson  <dino@apple.com>
2259
2260         Add ENABLE_CSS_SHADERS flag
2261         https://bugs.webkit.org/show_bug.cgi?id=71394
2262
2263         Reviewed by Sam Weinig.
2264
2265         * Configurations/FeatureDefines.xcconfig:
2266
2267 2011-11-02  Anders Carlsson  <andersca@apple.com>
2268
2269         Allow the various plug-in ports to decide whether NPWindow coordinates should be window-relative
2270         https://bugs.webkit.org/show_bug.cgi?id=71415
2271
2272         Reviewed by Darin Adler.
2273
2274         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2275         (WebKit::NetscapePlugin::callSetWindow):
2276         Remove the PLUGIN_ARCHITECTURE(X11) ifdef and set the NPWindow members
2277         based on the return value of wantsWindowRelativeNPWindowCoordinates.
2278
2279         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2280         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
2281         (WebKit::NetscapePlugin::wantsWindowRelativeNPWindowCoordinates):
2282         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
2283         (WebKit::NetscapePlugin::wantsWindowRelativeNPWindowCoordinates):
2284         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
2285         (WebKit::NetscapePlugin::wantsWindowRelativeNPWindowCoordinates):
2286         Add platform specific implementations.
2287
2288 2011-11-02  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
2289
2290         [Qt] [WK] Debug build broken after r99065
2291         https://bugs.webkit.org/show_bug.cgi?id=71397
2292
2293         Remove reference to panGestureActive becuase it is not defined anywhere.
2294
2295         Reviewed by Simon Hausmann.
2296
2297         * UIProcess/qt/QtViewportInteractionEngine.cpp:
2298         (WebKit::QtViewportInteractionEngine::panGestureStarted):
2299
2300 2011-11-02  Jon Lee  <jonlee@apple.com>
2301
2302         Update dragging info on mac when user is dragging files into view
2303         https://bugs.webkit.org/show_bug.cgi?id=71325
2304         <rdar://problem/10379193>
2305
2306         Reviewed by Darin Adler.
2307
2308         * UIProcess/API/mac/WKView.mm:
2309         (-[WKView draggingUpdated:]): Based on the DragSession, we update NSDraggingInfo
2310         to update the badge and dragging formation.
2311
2312 2011-11-02  Jon Lee  <jonlee@apple.com>
2313
2314         Expand DragController to provide more information about the dragging session
2315         https://bugs.webkit.org/show_bug.cgi?id=71324
2316         <rdar://problem/10379175>
2317
2318         Reviewed by Darin Adler.
2319
2320         We now pass the DragSession struct from the Web to the UI process, instead of the
2321         DragOperation enum.
2322
2323         * Scripts/webkit2/messages.py:
2324         * Shared/WebCoreArgumentCoders.cpp:
2325         (CoreIPC::::encode):
2326         (CoreIPC::::decode):
2327         * Shared/WebCoreArgumentCoders.h:
2328         * UIProcess/API/mac/WKView.mm:
2329         (-[WKView draggingUpdated:]):
2330         * UIProcess/WebPageProxy.cpp:
2331         (WebKit::WebPageProxy::WebPageProxy): We now cache the last known DragSession state
2332         (WebKit::WebPageProxy::didPerformDragControllerAction):
2333         * UIProcess/WebPageProxy.h:
2334         (WebKit::WebPageProxy::dragSession):
2335         (WebKit::WebPageProxy::resetDragOperation):
2336         * UIProcess/WebPageProxy.messages.in:
2337         * UIProcess/win/WebView.cpp:
2338         (WebKit::WebView::keyStateToDragOperation):
2339         (WebKit::WebView::DragEnter):
2340         (WebKit::WebView::DragOver):
2341         * WebProcess/WebPage/WebPage.cpp:
2342         (WebKit::WebPage::performDragControllerAction):
2343
2344 2011-11-02  Anders Carlsson  <andersca@apple.com>
2345
2346         Get rid of Plugin::deprecatedGeometryDidChange
2347         https://bugs.webkit.org/show_bug.cgi?id=71411
2348
2349         Reviewed by Sam Weinig.
2350
2351         Now that all Plugin subclasses implement geometryDidChange and do all the work there
2352         we can get rid of deprecatedGeometryDidChange.
2353
2354         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2355         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2356         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
2357         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
2358         * WebProcess/Plugins/Plugin.h:
2359         * WebProcess/Plugins/PluginProxy.cpp:
2360         * WebProcess/Plugins/PluginProxy.h:
2361         * WebProcess/Plugins/PluginView.cpp:
2362         (WebKit::PluginView::viewGeometryDidChange):
2363
2364 2011-11-02  Anders Carlsson  <andersca@apple.com>
2365
2366         Move back functions that were not added.
2367
2368         * UIProcess/API/C/WKPage.h:
2369
2370 2011-11-02  Anders Carlsson  <andersca@apple.com>
2371
2372         Fix build and WebKit2 ABI.
2373
2374         * Shared/APIClientTraits.cpp:
2375         * Shared/APIClientTraits.h:
2376         Add page loader client sizes.
2377
2378         * UIProcess/API/C/WKPage.h:
2379         Move the newly added callback functions in the loader client last and bump the
2380         WKPageLoaderClient version.
2381         
2382 2011-11-02  Anders Carlsson  <andersca@apple.com>
2383
2384         Fix build.
2385
2386         * WebProcess/Plugins/PluginView.h:
2387
2388 2011-11-02  Tom Sepez  <tsepez@chromium.org>
2389
2390         XSSAuditor is silent
2391         https://bugs.webkit.org/show_bug.cgi?id=70973
2392
2393         Reviewed by Adam Barth.
2394
2395         * UIProcess/API/C/WKPage.h:
2396         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
2397         (webkitWebLoaderClientAttachLoaderClientToPage):
2398         * UIProcess/WebLoaderClient.cpp:
2399         (WebKit::WebLoaderClient::didDetectXSSForFrame):
2400         * UIProcess/WebLoaderClient.h:
2401         * UIProcess/WebPageProxy.cpp:
2402         (WebKit::WebPageProxy::didDetectXSSForFrame):
2403         * UIProcess/WebPageProxy.h:
2404         * UIProcess/WebPageProxy.messages.in:
2405         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2406         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
2407         (WebKit::InjectedBundlePageLoaderClient::didDetectXSSForFrame):
2408         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
2409         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2410         (WebKit::WebFrameLoaderClient::didDetectXSS):
2411         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2412
2413 2011-11-02  Anders Carlsson  <andersca@apple.com>
2414
2415         More window relative coordinate usage removal
2416         https://bugs.webkit.org/show_bug.cgi?id=71393
2417
2418         Reviewed by Adam Roben.
2419
2420         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
2421         (WebKit::NetscapePlugin::scheduleWindowedGeometryUpdate):
2422         Just use m_clipRect instead of converting m_clipRectInWindowCoordinates to plug-in coordinates.
2423
2424         (WebKit::NetscapePlugin::platformPaint):
2425         Use m_pluginSize instead of m_frameRectInWindowCoordinates.size().
2426
2427         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
2428         (WebKit::NetscapePlugin::platformPaint):
2429         Ditto.
2430
2431 2011-11-02  Anders Carlsson  <andersca@apple.com>
2432
2433         Fix non-Mac builds and remove #if PLATFORM(MAC) around all contents scale factor functions.
2434
2435         * PluginProcess/PluginControllerProxy.cpp:
2436         (WebKit::PluginControllerProxy::PluginControllerProxy):
2437         (WebKit::PluginControllerProxy::contentsScaleFactor):
2438         (WebKit::PluginControllerProxy::geometryDidChange):
2439         * PluginProcess/PluginControllerProxy.h:
2440         * PluginProcess/PluginCreationParameters.cpp:
2441         (WebKit::PluginCreationParameters::PluginCreationParameters):
2442         (WebKit::PluginCreationParameters::encode):
2443         (WebKit::PluginCreationParameters::decode):
2444         * PluginProcess/PluginCreationParameters.h:
2445         * PluginProcess/mac/PluginControllerProxyMac.mm:
2446         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2447         (WebKit::NetscapePlugin::contentsScaleFactor):
2448         (WebKit::NetscapePlugin::getAuthenticationInfo):
2449         (WebKit::NetscapePlugin::snapshot):
2450         (WebKit::NetscapePlugin::contentsScaleFactorChanged):
2451         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2452         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
2453         * WebProcess/Plugins/Plugin.h:
2454         * WebProcess/Plugins/PluginController.h:
2455         * WebProcess/Plugins/PluginProxy.cpp:
2456         (WebKit::PluginProxy::initialize):
2457         (WebKit::PluginProxy::contentsScaleFactorChanged):
2458         (WebKit::PluginProxy::contentsScaleFactor):
2459         * WebProcess/Plugins/PluginProxy.h:
2460         * WebProcess/Plugins/PluginView.cpp:
2461         (WebKit::PluginView::contentsScaleFactor):
2462
2463 2011-11-02  Anders Carlsson  <andersca@apple.com>
2464
2465         Use m_pluginSize instead of m_frameRectInWindowCoordinates.size() in NetscapePlugin.
2466         https://bugs.webkit.org/show_bug.cgi?id=71390
2467
2468         Reviewed by Adam Roben.
2469
2470         m_pluginSize is always equal to m_frameRectInWindowCoordinates.size() and this moves us one
2471         sall step further towards eliminating m_frameRectInWindowCoordinates.
2472
2473         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2474         (WebKit::NetscapePlugin::invalidate):
2475         (WebKit::NetscapePlugin::snapshot):
2476
2477 2011-11-02  Anders Carlsson  <andersca@apple.com>
2478
2479         Fix non-Mac builds.
2480
2481         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2482         (WebKit::NetscapePlugin::snapshot):
2483
2484 2011-11-02  Anders Carlsson  <andersca@apple.com>
2485
2486         Plug-in snapshots are blurry in HiDPI
2487         https://bugs.webkit.org/show_bug.cgi?id=71387
2488         <rdar://problem/10385393>
2489
2490         Reviewed by Adam Roben.
2491
2492         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2493         (WebKit::NetscapePlugin::snapshot):
2494         Create the backing store in the right size and apply the contents scale factor
2495         to the newly created graphics context.
2496
2497         * WebProcess/Plugins/PluginView.cpp:
2498         (WebKit::PluginView::paint):
2499         Pass the scale factor to ShareableBitmap::paint.
2500
2501 2011-11-02  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2502
2503         [Qt] Implement message exchange between WebView and the web page
2504         https://bugs.webkit.org/show_bug.cgi?id=70545
2505
2506         Reviewed by Noam Rosenthal.
2507
2508         Adds a mechanism for the WebView to send messages to the JavaScript environment
2509         of the web page. In the WebView we have a method postMessage() and a signal
2510         messageReceived(), while in the web page we expose a navigator.qt object with a
2511         postMessage() method and a onmessage property. The messages are objects that
2512         follow the same structure as MessageEvents.
2513
2514         The feature is disabled by default, and can be enabled by setting
2515         QWebPreferences::navigatorQtObjectEnabled property to true. Changes take effect
2516         after the next load(). QML tests are included.
2517
2518         * UIProcess/qt/ClientImpl.h:
2519         * UIProcess/qt/ClientImpl.cpp:
2520         (setupContextInjectedBundleClient): Helper to register the injected bundle client.
2521         (qt_wk_didReceiveMessageFromInjectedBundle): Decode and dispatch a message received
2522         from the WebProcess to the WebPageProxy.
2523
2524         * UIProcess/PageClient.h:
2525         (WebKit::PageClient::didReceiveMessageFromNavigatorQtObject):
2526         * UIProcess/WebPageProxy.cpp:
2527         (WebKit::WebPageProxy::didReceiveMessageFromNavigatorQtObject):
2528         * UIProcess/WebPageProxy.h:
2529         Handle messages received from the navigator.qt object via the injected bundle. Called
2530         from the ClientImpl.
2531
2532         * UIProcess/API/qt/qbasewebview.cpp:
2533         (QBaseWebView::postMessage):
2534         (QBaseWebViewPrivate::setPageProxy):
2535         * UIProcess/API/qt/qbasewebview.h:
2536         * UIProcess/API/qt/qwebpreferences.cpp:
2537         (QWebPreferences::navigatorQtObjectEnabled):
2538         (QWebPreferences::setNavigatorQtObjectEnabled):
2539         * UIProcess/API/qt/qwebpreferences.h:
2540         The signal, slot and the setting to enable the feature.
2541
2542         * UIProcess/qt/QtWebPageProxy.cpp:
2543         (QtWebPageProxy::defaultWKContext): setup the injected bundle client for this the
2544         default context so we can listen to messages from it.
2545
2546         (QtWebPageProxy::QtWebPageProxy):
2547         (QtWebPageProxy::didReceiveMessageFromNavigatorQtObject):
2548         (QtWebPageProxy::setNavigatorQtObjectEnabled):
2549         (QtWebPageProxy::postMessageToNavigatorQtObject):
2550         * UIProcess/qt/QtWebPageProxy.h:
2551         (QtWebPageProxy::navigatorQtObjectEnabled):
2552         Enabling and sending messages to the navigator.qt object are done by sending messages to
2553         the injected bundle, identifying the page that we want to act on.
2554
2555         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_messaging.qml: Added.
2556         * UIProcess/API/qt/tests/qmltests/common/messaging.html: Added.
2557         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2558         * WebProcess/qt/QtBuiltinBundle.cpp:
2559         (WebKit::QtBuiltinBundle::initialize):
2560         (WebKit::QtBuiltinBundle::didReceiveMessage):
2561         (WebKit::QtBuiltinBundle::handleMessageToNavigatorQtObject):
2562         (WebKit::QtBuiltinBundle::handleSetNavigatorQtObjectEnabled):
2563         * WebProcess/qt/QtBuiltinBundle.h:
2564         * WebProcess/qt/QtBuiltinBundlePage.cpp:
2565         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
2566         (WebKit::QtBuiltinBundlePage::~QtBuiltinBundlePage):
2567         (WebKit::QtBuiltinBundlePage::didClearWindowForFrame):
2568         (WebKit::qt_postMessageCallback):
2569         (WebKit::QtBuiltinBundlePage::postMessageFromNavigatorQtObject):
2570         (WebKit::createWrappedMessage):
2571         (WebKit::QtBuiltinBundlePage::didReceiveMessageToNavigatorQtObject):
2572         (WebKit::QtBuiltinBundlePage::setNavigatorQtObjectEnabled):
2573         (WebKit::QtBuiltinBundlePage::registerNavigatorQtObject):
2574         (WebKit::QtBuiltinBundlePage::navigatorQtObjectClass):
2575         * WebProcess/qt/QtBuiltinBundlePage.h:
2576         (WebKit::QtBuiltinBundlePage::navigatorQtObjectEnabled):
2577
2578 2011-11-02  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2579
2580         [Qt] Fix qmltest API test failures related to r98973.
2581         https://bugs.webkit.org/show_bug.cgi?id=71280
2582
2583         Reviewed by Noam Rosenthal.
2584
2585         Most of the API was moved from TouchWebView.page to TouchWebView directly.
2586         Fixed the qml tests to reflect this change.
2587
2588         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_load.qml:
2589         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadFail.qml:
2590         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadNegativeSizeView.qml:
2591         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgress.qml:
2592         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgressSignal.qml:
2593         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadZeroSizeView.qml:
2594         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_properties.qml:
2595
2596 2011-11-02  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2597
2598         [Qt] Handle interruption of page interaction better
2599         https://bugs.webkit.org/show_bug.cgi?id=71366
2600
2601         Reviewed by Simon Hausmann.
2602
2603         Touching the screen when a kinetic scrolling animation is running or
2604         it is bouncing back because it was out of bounds, the animation is
2605         immediately stopped and the content is immediately put into valid
2606         bounds.
2607
2608         Touching the screen when the contents is bouncing back from a pinch
2609         zoom which was out of bounds, we do not stop the animation, but
2610         instead ignored the touch events while the animation lasts.
2611
2612         In the future we want to queue the events instead.
2613
2614         This also fixes some issues which was present before: As the bounce
2615         back animation from pinch zoom centers the content using the contents
2616         point which was in the center of the viewport, this animation could
2617         not be used when stopping a pan animation, as it wouldn't position the
2618         content at the place it was when the pan animation was interrupted.
2619
2620         * UIProcess/qt/QtPanGestureRecognizer.cpp:
2621         (WebKit::QtPanGestureRecognizer::recognize):
2622         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
2623         (WebKit::QtPinchGestureRecognizer::recognize):
2624         * UIProcess/qt/QtViewportInteractionEngine.cpp:
2625         (WebKit::QtViewportInteractionEngine::animateContentIntoBoundariesIfNeeded):
2626         (WebKit::QtViewportInteractionEngine::reset):
2627         (WebKit::QtViewportInteractionEngine::setConstraints):
2628         (WebKit::QtViewportInteractionEngine::panAnimationActive):
2629         (WebKit::QtViewportInteractionEngine::panGestureStarted):
2630         (WebKit::QtViewportInteractionEngine::panGestureCancelled):
2631         (WebKit::QtViewportInteractionEngine::pinchAnimationActive):
2632         * UIProcess/qt/QtViewportInteractionEngine.h:
2633
2634 2011-11-02  Zalan Bujtas  <zbujtas@gmail.com>
2635
2636         [Qt][WK2] Move content to resize (setResizesToContentsUsingLayoutSize) from UI process to Web process
2637         https://bugs.webkit.org/show_bug.cgi?id=71107
2638
2639         Reviewed by Kenneth Rohde Christiansen.
2640
2641         Reduce the number of IPC calls to WebProcess by moving the content to resize
2642         calls from UI process to Web process.
2643
2644         * UIProcess/API/qt/qtouchwebview.cpp:
2645         (QTouchWebViewPrivate::updateViewportSize):
2646         (QTouchWebViewPrivate::updateViewportConstraints):
2647         (QTouchWebView::geometryChanged):
2648         * UIProcess/API/qt/qtouchwebview_p.h:
2649         * UIProcess/WebPageProxy.cpp:
2650         (WebKit::WebPageProxy::setViewportSize):
2651         (WebKit::WebPageProxy::preferencesDidChange):
2652         * UIProcess/WebPageProxy.h:
2653         * UIProcess/qt/QtTouchWebPageProxy.cpp:
2654         * UIProcess/qt/QtTouchWebPageProxy.h:
2655         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2656         (WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):
2657         * WebProcess/WebPage/WebPage.messages.in:
2658
2659 2011-10-18  Dinu Jacob  <dinu.jacob@nokia.com>
2660
2661         [Qt][WK2]: Shouldn't send unhandled TouchCancel event to gesture recognizers
2662         https://bugs.webkit.org/show_bug.cgi?id=70333
2663
2664         Reviewed by Simon Hausmann.
2665
2666         Gesture recognizers should be reset for unhandled TouchCancel event.
2667
2668         * UIProcess/qt/qtouchwebpageproxy.cpp:
2669         (QTouchWebPageProxy::doneWithTouchEvent):
2670
2671 2011-11-02  Simon Hausmann  <simon.hausmann@nokia.com>
2672
2673         [Qt][WK2] Add support for touch event testing to WebKitTestRunner
2674         https://bugs.webkit.org/show_bug.cgi?id=71310
2675
2676         Reviewed by Kenneth Rohde Christiansen.
2677
2678         * UIProcess/WebPageProxy.cpp:
2679         (WebKit::WebPageProxy::handleTouchEvent): Add support for m_shouldSendEventsSynchronously.
2680         * UIProcess/qt/QtDesktopWebPageProxy.cpp:
2681         (QtDesktopWebPageProxy::handleEvent): Handle plain touch events in the desktop page proxy by
2682         forwarding them appropriately. We will receive them from WTR through ::event, but we won't
2683         receive them from QQuickCanvas (i.e. the user) because that doesn't uses ::event but only
2684         dedicated fooEvent() handlers, of which we don't re-implement the touch version.
2685         (QtDesktopWebPageProxy::handleTouchEvent): Forward touch events to WebPageProxy.
2686         * UIProcess/qt/QtDesktopWebPageProxy.h:
2687         * WebProcess/WebPage/WebPage.cpp:
2688         (WebKit::WebPage::touchEventSyncForTesting): Add support for synchronous touch event testing,
2689         similar to the way it's done for mouse events.
2690         * WebProcess/WebPage/WebPage.h: Ditto.
2691         * WebProcess/WebPage/WebPage.messages.in: Ditto.
2692
2693 2011-11-02  Simon Hausmann  <simon.hausmann@nokia.com>
2694
2695         [WK2] Remove unused/duplicated modifiers member from WebTouchEvent
2696         https://bugs.webkit.org/show_bug.cgi?id=71353
2697
2698         Reviewed by Kenneth Rohde Christiansen.
2699
2700         WebTouchEvent::m_[ctrl,alt,meta,shift]Key are redundant compared to
2701         WebEvent::m_modifiers. The latter is fully populated and used, the former
2702         can be safely removed.
2703
2704         * Shared/WebEvent.h:
2705         * Shared/WebTouchEvent.cpp:
2706         (WebKit::WebTouchEvent::WebTouchEvent):
2707         * Shared/qt/WebEventFactoryQt.cpp:
2708         (WebKit::WebEventFactory::createWebTouchEvent):
2709
2710 2011-11-02  Philippe Normand  <pnormand@igalia.com>
2711
2712         Unreviewed, skip testWebKitSettingsNewWithSettings affected by bug
2713         70127.
2714
2715         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
2716         (testWebKitSettingsNewWithSettings):
2717
2718 2011-11-01  Andras Becsi  <andras.becsi@nokia.com>
2719
2720         [Qt][WK2] Make API tests less noisy
2721         https://bugs.webkit.org/show_bug.cgi?id=71295
2722
2723         Reviewed by Simon Hausmann.
2724
2725         Suppress superfluous debug messages of Qt5.
2726
2727         * UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp:
2728         * UIProcess/API/qt/tests/qdesktopwebview/tst_qdesktopwebview.cpp:
2729         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2730         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
2731         (main):
2732         * UIProcess/API/qt/tests/qtouchwebview/tst_qtouchwebview.cpp:
2733         * UIProcess/API/qt/tests/util.cpp:
2734         (messageHandler):
2735         * UIProcess/API/qt/tests/util.h:
2736
2737 2011-11-01  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2738
2739         [Qt] Merge common desktop and touch view APIs under a base class.
2740         https://bugs.webkit.org/show_bug.cgi?id=71280
2741
2742         Reviewed by Andreas Kling.
2743
2744         - Make QDesktopWebView and QTouchWebView inherit from QBaseWebView.
2745         - Move methods from QTouchWebPage to QTouchWebView (through the base class).
2746
2747         We use the same convenience macros as Qt internally by hiding QObject::d_ptr
2748         with QBaseWebView::d_ptr instead of inheriting QBaseWebViewPrivate from
2749         QQuickItemPrivate.
2750         Also, QBaseWebView currently inherits from QQuickPaintedItem since QDesktopWebView
2751         needs it, but should be changed as soon as this is not required anymore.
2752
2753         * UIProcess/API/qt/qbasewebview.cpp: Added.
2754         (QBaseWebViewPrivate::QBaseWebViewPrivate):
2755         (QBaseWebViewPrivate::setPageProxy):
2756         (QBaseWebView::QBaseWebView):
2757         (QBaseWebView::~QBaseWebView):
2758         (QBaseWebView::load):
2759         (QBaseWebView::url):
2760         (QBaseWebView::loadProgress):
2761         (QBaseWebView::title):
2762         (QBaseWebView::navigationController):
2763         (QBaseWebView::preferences):
2764         * UIProcess/API/qt/qbasewebview.h: Copied from Source/WebKit2/UIProcess/API/qt/qtouchwebpage.h.
2765         * UIProcess/API/qt/qbasewebview_p.h: Copied from Source/WebKit2/UIProcess/API/qt/qtouchwebpage_p.h.
2766         (QBaseWebViewPrivate::~QBaseWebViewPrivate):
2767         * UIProcess/API/qt/qdesktopwebview.cpp:
2768         (QDesktopWebViewPrivate::QDesktopWebViewPrivate):
2769         (QDesktopWebViewPrivate::enableMouseEvents):
2770         (QDesktopWebViewPrivate::disableMouseEvents):
2771         (QDesktopWebViewPrivate::webView):
2772         (QDesktopWebViewPrivate::setViewNeedsDisplay):
2773         (QDesktopWebViewPrivate::drawingAreaSize):
2774         (QDesktopWebViewPrivate::hasFocus):
2775         (QDesktopWebViewPrivate::isVisible):
2776         (QDesktopWebViewPrivate::startDrag):
2777         (QDesktopWebViewPrivate::didChangeUrl):
2778         (QDesktopWebViewPrivate::didChangeTitle):
2779         (QDesktopWebViewPrivate::didChangeStatusText):
2780         (QDesktopWebViewPrivate::loadDidBegin):
2781         (QDesktopWebViewPrivate::loadDidSucceed):
2782         (QDesktopWebViewPrivate::loadDidFail):
2783         (QDesktopWebViewPrivate::didChangeLoadProgress):
2784         (QDesktopWebViewPrivate::showContextMenu):
2785         (QDesktopWebViewPrivate::runJavaScriptAlert):
2786         (QDesktopWebViewPrivate::runJavaScriptConfirm):
2787         (QDesktopWebViewPrivate::runJavaScriptPrompt):
2788         (QDesktopWebView::QDesktopWebView):
2789         (QDesktopWebViewPrivate::init):
2790         (QDesktopWebView::~QDesktopWebView):
2791         (QDesktopWebView::geometryChanged):
2792         (QDesktopWebView::paint):
2793         (QDesktopWebView::event):
2794         (QDesktopWebView::pageRef):
2795         (QDesktopWebViewPrivate::processDidCrash):
2796         (QDesktopWebViewPrivate::didRelaunchProcess):
2797         (QDesktopWebViewPrivate::engine):
2798         (QDesktopWebViewPrivate::chooseFiles):
2799         (QDesktopWebViewPrivate::_q_onOpenPanelFilesSelected):
2800         (QDesktopWebViewPrivate::_q_onOpenPanelFinished):
2801         (QDesktopWebViewPrivate::didMouseMoveOverElement):
2802         (QDesktopWebViewPrivate::navigationPolicyForURL):
2803         * UIProcess/API/qt/qdesktopwebview.h:
2804         * UIProcess/API/qt/qdesktopwebview_p.h:
2805         * UIProcess/API/qt/qtouchwebpage.cpp:
2806         (QTouchWebPage::event):
2807         (QTouchWebPage::geometryChanged):
2808         (QTouchWebPagePrivate::QTouchWebPagePrivate):
2809         (QTouchWebPagePrivate::setPageProxy):
2810         (QTouchWebPagePrivate::paintToCurrentGLContext):
2811         * UIProcess/API/qt/qtouchwebpage.h:
2812         * UIProcess/API/qt/qtouchwebpage_p.h:
2813         (QTouchWebPagePrivate::touchPageProxy):
2814         * UIProcess/API/qt/qtouchwebview.cpp:
2815         (QTouchWebViewPrivate::init):
2816         (QTouchWebViewPrivate::loadDidCommit):
2817         (QTouchWebViewPrivate::_q_viewportUpdated):
2818         (QTouchWebViewPrivate::_q_viewportTrajectoryVectorChanged):
2819         (QTouchWebViewPrivate::updateViewportConstraints):
2820         (QTouchWebView::QTouchWebView):
2821         (QTouchWebView::~QTouchWebView):
2822         (QTouchWebView::page):
2823         (QTouchWebView::geometryChanged):
2824         (QTouchWebView::onVisibleChanged):
2825         * UIProcess/API/qt/qtouchwebview.h:
2826         * UIProcess/API/qt/qtouchwebview_p.h:
2827         (QTouchWebViewPrivate::touchPageProxy):
2828         * UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp:
2829         (tst_CommonViewTests::loadNonexistentFileUrl):
2830         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
2831         (WebViewAbstraction::WebViewAbstraction):
2832         (WebViewAbstraction::load):
2833         (WebViewAbstraction::url):
2834         (WebViewAbstraction::loadProgress):
2835         (WebViewAbstraction::goBack):
2836         (WebViewAbstraction::goForward):
2837         (WebViewAbstraction::stop):
2838         (WebViewAbstraction::reload):
2839         (WebViewAbstraction::touchViewLoadFailed):
2840         (WebViewAbstraction::desktopViewLoadFailed):
2841         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h:
2842         * UIProcess/API/qt/tests/qtouchwebview/tst_qtouchwebview.cpp:
2843         (tst_QTouchWebView::navigationStatusAtStartup):
2844         * UIProcess/qt/QtDesktopWebPageProxy.cpp:
2845         (QtDesktopWebPageProxy::createPopupMenuProxy):
2846         * UIProcess/qt/QtTouchViewInterface.cpp:
2847         (WebKit::QtTouchViewInterface::didChangeViewportProperties):
2848         (WebKit::QtTouchViewInterface::didChangeUrl):
2849         (WebKit::QtTouchViewInterface::didChangeTitle):
2850         (WebKit::QtTouchViewInterface::loadDidBegin):
2851         (WebKit::QtTouchViewInterface::loadDidCommit):
2852         (WebKit::QtTouchViewInterface::loadDidSucceed):
2853         (WebKit::QtTouchViewInterface::loadDidFail):
2854         (WebKit::QtTouchViewInterface::didChangeLoadProgress):
2855         * WebKit2API.pri:
2856
2857 2011-10-31  Anders Carlsson  <andersca@apple.com>
2858
2859         PluginProxy shouldn't use window-relative coordinates
2860         https://bugs.webkit.org/show_bug.cgi?id=71261
2861
2862         Reviewed by Adam Roben.
2863
2864         Change PluginProxy::wantsWindowRelativeCoordinates to return false and remove
2865         m_frameRectInWindowCoordinates and m_clipRectInWindowCoordinates. This is yet another step
2866         towards eliminating window-relative coordinates wherever possible.
2867
2868         * WebProcess/Plugins/PluginProxy.cpp:
2869         (WebKit::PluginProxy::paint):
2870         Since the dirty rect passed to paint is now in plug-in coordinates, there's no need to convert it
2871         from window coordinates to plug-in coordinates before passing it to BackingStore::paint.
2872
2873         (WebKit::PluginProxy::deprecatedGeometryDidChange):
2874         Assert that we're not calling this anymore.
2875
2876         (WebKit::PluginProxy::wantsWindowRelativeCoordinates):
2877         Return false.
2878
2879 2011-11-01  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2880
2881         The QtViewportInteractionEngine should consider DPI adjustment
2882         https://bugs.webkit.org/show_bug.cgi?id=71283
2883
2884         Reviewed by Simon Hausmann.
2885
2886         * UIProcess/API/qt/qtouchwebview.cpp:
2887
2888             Add some default values for now to make sure we are testing the
2889             DPI adjustment / CSS-item space conversion.
2890
2891         (QTouchWebViewPrivate::updateViewportConstraints):
2892         * UIProcess/qt/QtViewportInteractionEngine.cpp:
2893         (WebKit::ViewportUpdateGuard::ViewportUpdateGuard):
2894         (WebKit::ViewportUpdateGuard::~ViewportUpdateGuard):
2895
2896             Clean up the guard to be more understandable.
2897
2898         (WebKit::QtViewportInteractionEngine::cssScaleFromItem):
2899         (WebKit::QtViewportInteractionEngine::itemScaleFromCSS):
2900
2901             Add methods for converting between CSS and item space.
2902
2903         (WebKit::QtViewportInteractionEngine::innerBoundedCSSScale):
2904         (WebKit::QtViewportInteractionEngine::outerBoundedCSSScale):
2905
2906             Make it clean which methods uses which coord space.
2907
2908         (WebKit::QtViewportInteractionEngine::updateVisibleRect):
2909         (WebKit::QtViewportInteractionEngine::event):
2910         (WebKit::QtViewportInteractionEngine::computePosRangeForItemScale):
2911
2912             Rename calculateBoundariesForScale and change its implementation to
2913             be correct. The new name reflects the space in which the computation
2914             takes place and reflects similar Qt API.
2915
2916         (WebKit::QtViewportInteractionEngine::animateContentIntoBoundariesIfNeeded):
2917         (WebKit::QtViewportInteractionEngine::pinchGestureRequestUpdate):
2918         (WebKit::QtViewportInteractionEngine::scaleContent):
2919
2920             Make sure to consider the right coord space.
2921
2922         * UIProcess/qt/QtViewportInteractionEngine.h:
2923         (WebKit::QtViewportInteractionEngine::Constraints::Constraints):
2924
2925             Add the devicePixelRatio.
2926
2927 2011-11-01  Simon Hausmann  <simon.hausmann@nokia.com>
2928
2929         Prospective clang build fix.
2930
2931         Reviewed by Andreas Kling.
2932
2933         * UIProcess/WebPageProxy.cpp:
2934         (WebKit::WebPageProxy::didReceiveEvent): Handle GestureSingleTap in the event type switch.
2935
2936 2011-11-01  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2937
2938         [Qt] Create infrastructure for Qt's builtin bundle in web process.
2939         https://bugs.webkit.org/show_bug.cgi?id=71279
2940
2941         Reviewed by Simon Hausmann.
2942
2943         Create a builtin bundle for Qt port: an InjectedBundle which the code is together
2944         with the Qt's web process instead of being in a different library. This gives us
2945         access to many hooks at web process (using WKBundle* functions of C API) without
2946         adding any maintenance burden to cross-port code.
2947
2948         Since we also use a InjectedBundle in the WebKitTestRunner, we only install our
2949         builtin bundle if there's no other installed. This is fine because WTR won't use
2950         the extra runtime features that we plan to provide with the builtin bundle.
2951
2952         * WebKit2.pro:
2953         * WebProcess/qt/QtBuiltinBundle.cpp: Added.
2954         (WebKit::QtBuiltinBundle::~QtBuiltinBundle):
2955         (WebKit::QtBuiltinBundle::shared):
2956         (WebKit::QtBuiltinBundle::initialize):
2957         (WebKit::QtBuiltinBundle::didCreatePage):
2958         (WebKit::QtBuiltinBundle::willDestroyPage):
2959         (WebKit::QtBuiltinBundle::bundlePageForPageRef):
2960         * WebProcess/qt/QtBuiltinBundle.h: Added.
2961         (WebKit::QtBuiltinBundle::toRef):
2962         Object that holds a WKBundleRef and keeps track of the pages in the current context.
2963
2964         * WebProcess/qt/QtBuiltinBundlePage.cpp: Added.
2965         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
2966         (WebKit::QtBuiltinBundlePage::~QtBuiltinBundlePage):
2967         * WebProcess/qt/QtBuiltinBundlePage.h: Added.
2968         (WebKit::QtBuiltinBundlePage::page):
2969         Our representation for pages from the bundle perspective. This will be the right
2970         place to registering page related clients.
2971
2972         * WebProcess/qt/WebProcessQt.cpp:
2973         (WebKit::WebProcess::platformInitializeWebProcess):
2974         If there's no bundle to be loaded, initialize Qt builtin bundle, which will register the
2975         bundle client for this context.
2976
2977 2011-11-01  Simon Hausmann  <simon.hausmann@nokia.com>
2978
2979         [WK2] Add WebGestureEvents to the Qt build and enable PlatformGestureEvent::TapType
2980         https://bugs.webkit.org/show_bug.cgi?id=71274
2981
2982         Reviewed by Kenneth Christiansen.
2983
2984         * Shared/WebEvent.h: Add GestureSingleTap as gesture type.
2985         * Shared/WebEventConversion.cpp:
2986         (WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent): Support converting
2987         WebEven::GestureSingleTap to PlatformGestureEvent::TapType.
2988         * Shared/WebGestureEvent.cpp:
2989         (WebKit::WebGestureEvent::isGestureEventType): GestureSingleTap is a valid gesture event type.
2990         * WebKit2.pro: Add WebGestureEvent.cpp to the build.
2991
2992 2011-10-31  Anders Carlsson  <andersca@apple.com>
2993
2994         PluginProxy::Update should pass the painted rect in plug-in coordinates
2995         https://bugs.webkit.org/show_bug.cgi?id=71257
2996
2997         Reviewed by Adam Roben.
2998
2999         This is one step in the process of migrating away from window relative coordinates
3000         and use plug-in relative coordinates instead, since window relative coordinates won't work
3001         with transforms.
3002
3003         * PluginProcess/PluginControllerProxy.cpp:
3004         (WebKit::PluginControllerProxy::paint):
3005         Convert the dirty rect back to plug-in coordinates.
3006
3007         * WebProcess/Plugins/PluginProxy.cpp:
3008         (WebKit::PluginProxy::update):
3009         No need to convert the painted rect back to plug-in coordinates anymore.
3010
3011         * WebProcess/Plugins/PluginProxy.messages.in:
3012         Document that the painted rect is in plug-in coordinates.
3013
3014 2011-10-31  Anders Carlsson  <andersca@apple.com>
3015
3016         PluginControllerProxy should call Plugin::geometryDidChange
3017         https://bugs.webkit.org/show_bug.cgi?id=71255
3018
3019         Reviewed by Sam Weinig.
3020
3021         Pass enough information over in the GeometryDidChange message sent from
3022         PluginProxy to PluginControllerProxy so that PluginControllerProxy can call
3023         Plugin::geometryDidChange.
3024
3025         * PluginProcess/PluginControllerProxy.cpp:
3026         (WebKit::PluginControllerProxy::paint):
3027         (WebKit::PluginControllerProxy::invalidate):
3028         (WebKit::PluginControllerProxy::paintEntirePlugin):
3029         Update for rename from m_frameRect to m_frameRectInWindowCoordinates.
3030
3031         (WebKit::PluginControllerProxy::geometryDidChange):
3032         This now takes the plug-in size and the plug-in to root view transform as well.
3033
3034         * PluginProcess/PluginControllerProxy.h:
3035         Store the plug-in size and rename m_frameRect to m_frameRectInWindowCoordinates.
3036
3037         * PluginProcess/PluginControllerProxy.messages.in:
3038         Update message signature.
3039
3040         * PluginProcess/mac/PluginControllerProxyMac.mm:
3041         (WebKit::PluginControllerProxy::platformGeometryDidChange):
3042         Use the plug-in size instead of the frame rect size.
3043
3044         * Shared/WebCoreArgumentCoders.cpp:
3045         (CoreIPC::::encode):
3046         (CoreIPC::::decode):
3047         * Shared/WebCoreArgumentCoders.h:
3048         Add encoder/decoder for WebCore::AffineTransform.
3049
3050         * WebProcess/Plugins/PluginProxy.cpp:
3051         (WebKit::PluginProxy::geometryDidChange):
3052         Compute the frame rect in window coordinates and send it over.
3053
3054         (WebKit::PluginProxy::deprecatedGeometryDidChange):
3055         Move call to geometryDidChange() from here to the new PluginProxy::geometryDidChange.
3056
3057 2011-10-31  Anders Carlsson  <andersca@apple.com>
3058
3059         Remove some uses of m_frameRectInWindowCoordinates from PluginProxy
3060         https://bugs.webkit.org/show_bug.cgi?id=71252
3061
3062         Reviewed by Darin Adler.
3063
3064         * WebProcess/Plugins/PluginProxy.cpp:
3065         (WebKit::PluginProxy::paint):
3066         (WebKit::PluginProxy::geometryDidChange):
3067         (WebKit::PluginProxy::updateBackingStore):
3068         (WebKit::PluginProxy::pluginBounds):
3069         * WebProcess/Plugins/PluginProxy.h:
3070
3071 2011-10-31  Anders Carlsson  <andersca@apple.com>
3072
3073         Implement PluginProxy::geometryDidChange
3074         https://bugs.webkit.org/show_bug.cgi?id=71251
3075
3076         Reviewed by Sam Weinig.
3077
3078         Keep track of the plug-in size, the clip rect in plug-in coordinates and the
3079         transformation matrix from the root view to the plug-in.
3080
3081         * WebProcess/Plugins/PluginProxy.cpp:
3082         (WebKit::PluginProxy::geometryDidChange):
3083         * WebProcess/Plugins/PluginProxy.h:
3084
3085 2011-10-31  Anders Carlsson  <andersca@apple.com>
3086
3087         Fix the X11 build.
3088
3089         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
3090         (WebKit::NetscapePlugin::platformGeometryDidChange):
3091         (WebKit::NetscapePlugin::platformPaint):
3092         (WebKit::NetscapePlugin::platformHandleMouseEvent):
3093         (WebKit::NetscapePlugin::platformHandleWheelEvent):
3094         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
3095         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
3096
3097 2011-10-31  Anders Carlsson  <andersca@apple.com>
3098
3099         Factor code to resize the plug-in backing store out into a separate function
3100         https://bugs.webkit.org/show_bug.cgi?id=71250
3101
3102         Reviewed by Adam Roben.
3103
3104         Add a PluginProxy::contentsScaleFactor helper function to get rid of a bunch of PLATFORM(MAC) #ifdefs,
3105         and move the code to update the backing store out into a separate function.
3106
3107         * WebProcess/Plugins/PluginProxy.cpp:
3108         (WebKit::PluginProxy::initialize):
3109         (WebKit::PluginProxy::paint):
3110         (WebKit::PluginProxy::geometryDidChange):
3111         (WebKit::PluginProxy::contentsScaleFactor):
3112         (WebKit::PluginProxy::updateBackingStore):
3113         (WebKit::PluginProxy::update):
3114         * WebProcess/Plugins/PluginProxy.h:
3115
3116 2011-10-31  Jeff Miller  <jeffm@apple.com>
3117
3118         Add more APIs to WKUserContentURLPattern.h
3119         https://bugs.webkit.org/show_bug.cgi?id=71245
3120         
3121         Add additional WKUserContentURLPattern APIs to match what was provided by
3122         the equivalent WebKit1 API.
3123
3124         Reviewed by Darin Adler.
3125
3126         * Shared/API/c/WKUserContentURLPattern.cpp:
3127         (WKUserContentURLPatternCopyHost): Added.
3128         (WKUserContentURLPatternCopyScheme): Added.
3129         (WKUserContentURLPatternIsValid): Added.
3130         (WKUserContentURLPatternMatchesSubdomains): Added.
3131         
3132         * Shared/API/c/WKUserContentURLPattern.h: Added new APIs.
3133         
3134         * Shared/WebUserContentURLPattern.h:
3135         (WebKit::WebUserContentURLPattern::host): Added.
3136         (WebKit::WebUserContentURLPattern::scheme): Added.
3137         (WebKit::WebUserContentURLPattern::isValid): Added.
3138         (WebKit::WebUserContentURLPattern::matchesSubdomains): Added.
3139
3140 2011-10-31  Anders Carlsson  <andersca@apple.com>
3141
3142         More work on making plug-ins work better with transforms
3143         https://bugs.webkit.org/show_bug.cgi?id=71241
3144
3145         Reviewed by Darin Adler.
3146
3147         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3148         (WebKit::NetscapePlugin::geometryDidChange):
3149         Implement NetscapePlugin::geometryDidChange and store the plug-in size,
3150         the clip rect and the root view transform. Use the transform to compute the window
3151         relative frame and clip rects.
3152
3153         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
3154         Add new member variables.
3155
3156         * WebProcess/Plugins/PluginView.cpp:
3157         (WebKit::PluginView::viewGeometryDidChange):
3158         Always call the new Plugin::geometryDidChange.
3159
3160 2011-10-27  Anders Carlsson  <andersca@apple.com>
3161
3162         Rename a couple of NetscapePlugin and PluginProxy member variables
3163         https://bugs.webkit.org/show_bug.cgi?id=71086
3164
3165         Reviewed by Sam Weinig.
3166
3167         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3168         (WebKit::NetscapePlugin::invalidate):
3169         (WebKit::NetscapePlugin::callSetWindow):
3170         (WebKit::NetscapePlugin::snapshot):
3171         (WebKit::NetscapePlugin::deprecatedGeometryDidChange):
3172         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
3173         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
3174         (WebKit::NetscapePlugin::platformPaint):
3175         (WebKit::NetscapePlugin::platformHandleMouseEvent):
3176         (WebKit::NetscapePlugin::platformHandleWheelEvent):
3177         (WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
3178         (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
3179         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
3180         (WebKit::NetscapePlugin::scheduleWindowedGeometryUpdate):
3181         (WebKit::NetscapePlugin::platformPaint):
3182         * WebProcess/Plugins/PluginProxy.cpp:
3183         (WebKit::PluginProxy::paint):
3184         (WebKit::PluginProxy::geometryDidChange):
3185         (WebKit::PluginProxy::deprecatedGeometryDidChange):
3186         (WebKit::PluginProxy::update):
3187         * WebProcess/Plugins/PluginProxy.h:
3188         * WebProcess/Plugins/PluginView.cpp:
3189         (WebKit::PluginView::viewGeometryDidChange):
3190
3191 2011-10-31  Andras Becsi  <andras.becsi@nokia.com>
3192
3193         [Qt][WK2] Fix qmltests after r98460 added widgets dependency.
3194
3195         Reviewed by Simon Hausmann.
3196
3197         Use QApplication and QtWidgets until we get rid of the widgets dependency of QScroller.
3198
3199         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
3200         * UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
3201         (main):
3202
3203 2011-10-31  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
3204
3205         [Qt] Make QWebPreferences hold a QtWebPageProxy
3206         https://bugs.webkit.org/show_bug.cgi?id=71219
3207
3208         Reviewed by Andreas Kling.
3209
3210         Change QWebPreferences to keep a pointer to QtWebPageProxy.  The reason is that
3211         some features we want to control (like the messaging exchange between WebView and
3212         the web process) are not available via WKPreferencesRef.
3213
3214         QtWebPageProxy now uses an OwnPtr to keep the QWebPreferences to clarify the
3215         ownership relationship. Before this change the QWebPreferences created was leaking.
3216
3217         * UIProcess/API/qt/qwebpreferences.cpp:
3218         (QWebPreferencesPrivate::createPreferences):
3219         (QWebPreferencesPrivate::testAttribute):
3220         (QWebPreferencesPrivate::setAttribute):
3221         (QWebPreferencesPrivate::setFontFamily):
3222         (QWebPreferencesPrivate::fontFamily):
3223         (QWebPreferencesPrivate::setFontSize):
3224         (QWebPreferencesPrivate::fontSize):
3225         (QWebPreferencesPrivate::preferencesRef):
3226         * UIProcess/API/qt/qwebpreferences.h:
3227         * UIProcess/API/qt/qwebpreferences_p.h:
3228         * UIProcess/qt/QtWebPageProxy.cpp:
3229         (QtWebPageProxy::QtWebPageProxy):
3230         (QtWebPageProxy::preferences):
3231         * UIProcess/qt/QtWebPageProxy.h:
3232
3233 2011-10-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3234
3235         [GTK] Add webkit_settings_new_with_settings() to WebKit2 GTK+ API
3236         https://bugs.webkit.org/show_bug.cgi?id=71111
3237
3238         Reviewed by Martin Robinson.
3239
3240         Convenient method to create a WebKitSettings object with initial
3241         settings.
3242
3243         * UIProcess/API/gtk/WebKitSettings.cpp:
3244         (webkit_settings_new_with_settings):
3245         * UIProcess/API/gtk/WebKitSettings.h:
3246         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
3247         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
3248         (testWebKitSettingsNewWithSettings):
3249         (beforeAll):
3250
3251 2011-10-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3252
3253         [GTK] Add methods to get/set the settings of a web view to WebKit2 GTK+ API
3254         https://bugs.webkit.org/show_bug.cgi?id=71109
3255
3256         Reviewed by Martin Robinson.
3257
3258         * GNUmakefile.am: Add WebKitSettingsPrivate.h.
3259         * UIProcess/API/gtk/WebKitSettings.cpp:
3260         (webkitSettingsAttachSettingsToPage): Set the preferences of the
3261         given WebKitSettings object to the page group of the given WKPage.
3262         * UIProcess/API/gtk/WebKitSettingsPrivate.h: Added.
3263         * UIProcess/API/gtk/WebKitWebView.cpp:
3264         (webkitWebViewConstructed): Create the default WebKitSettings for
3265         the view.
3266         (webkit_web_view_set_settings):
3267         (webkit_web_view_get_settings):
3268         * UIProcess/API/gtk/WebKitWebView.h:
3269         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
3270         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
3271         (testWebViewSettings):
3272         (beforeAll):
3273
3274 2011-10-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3275
3276         Unreviewed. Fix make distcheck build.
3277
3278         * GNUmakefile.am: Remove docs/GNUmakefile.in from EXTRA_DIST,
3279         since its generation was removed from configure.ac in r98498.
3280
3281 2011-10-28  Jeff Miller  <jeffm@apple.com>
3282
3283         More work on WebKit2 should respect WebKitOmitPDFSupport preference on the Mac
3284         https://bugs.webkit.org/show_bug.cgi?id=71156
3285         
3286         Don't include PDF and PostScript types in the set of MIME types with custom representations
3287         when initializing the web process if WebKitOmitPDFSupport is set.
3288         
3289         I believe the previous patch r98513 was actually sufficient to prevent PDFs from being
3290         shown inline when this preference was set, but to be complete we should exclude the MIME
3291         types here as well.
3292
3293         Reviewed by Alexey Proskuryakov.
3294
3295         * UIProcess/mac/WebContextMac.mm:
3296         (WebKit::WebContext::platformInitializeWebProcess):
3297
3298 2011-10-28  John Sullivan  <sullivan@apple.com>
3299
3300         WebKit2 part of:
3301         https://bugs.webkit.org/show_bug.cgi?id=71142
3302         Whether backspace goes Back should be configurable
3303
3304         Reviewed by Sam Weinig.
3305
3306         * Shared/WebPreferencesStore.h:
3307         Declared backspaceKeyNavigationEnabled property using macro. This initializes
3308         it to true, to match current behavior.
3309         
3310         * UIProcess/API/C/WKPreferences.cpp:
3311         (WKPreferencesSetBackspaceKeyNavigationEnabled):
3312         New function, pass value to impl.
3313         (WKPreferencesGetBackspaceKeyNavigationEnabled):
3314         New function, returns result from impl.
3315         
3316         * UIProcess/API/C/WKPreferences.h:
3317         Declared API functions for new preference.
3318         
3319         * WebProcess/WebPage/WebPage.cpp:
3320         (WebKit::WebPage::updatePreferences):
3321         Updates WebCore settings from WebKit2 prefs.
3322
3323 2011-10-28  Timothy Hatcher  <timothy@apple.com>
3324
3325         Support using a different front-end for the Web Inspector in WebKit2.
3326
3327         rdar://problem/10318665
3328         https://webkit.org/b/71089
3329
3330         Reviewed by Sam Weinig.
3331
3332         * Shared/WebProcessCreationParameters.cpp:
3333         (WebKit::WebProcessCreationParameters::encode): Added webInspectorBasePath and webInspectorLocalizedStringsPath.
3334         (WebKit::WebProcessCreationParameters::decode): Ditto.
3335         * Shared/WebProcessCreationParameters.h:
3336         * UIProcess/API/C/WKContext.cpp:
3337         (WKContextSetOverrideWebInspectorBaseDirectory): Added. Calls through to WebContext.
3338         (WKContextSetOverrideWebInspectorPagePath): Ditto.
3339         (WKContextSetOverrideWebInspectorLocalizedStringsPath): Ditto.
3340         * UIProcess/API/C/WKContextPrivate.h:
3341         * UIProcess/WebContext.cpp:
3342         (WebKit::WebContext::ensureWebProcess): Set webInspectorBasePath and webInspectorLocalizedStringsPath.
3343         * UIProcess/WebContext.h:
3344         (WebKit::WebContext::overrideWebInspectorBaseDirectory): Added.
3345         (WebKit::WebContext::setOverrideWebInspectorBaseDirectory): Added.
3346         (WebKit::WebContext::overrideWebInspectorPagePath): Added.
3347         (WebKit::WebContext::setOverrideWebInspectorPagePath): Added.
3348         (WebKit::WebContext::setOverrideWebInspectorLocalizedStringsPath): Added.
3349         * UIProcess/mac/WebInspectorProxyMac.mm:
3350         (WebKit::WebInspectorProxy::inspectorPageURL): Use WebContext::overrideWebInspectorPagePath if set.
3351         (WebKit::WebInspectorProxy::inspectorBaseURL): Use WebContext::overrideWebInspectorBaseDirectory if set.
3352         * WebProcess/WebPage/WebInspector.h:
3353         * WebProcess/WebPage/mac/WebInspectorMac.mm:
3354         (WebKit::globalInspectorLocalizedStringsURL): Added. Static storage for the setting.
3355         (WebKit::WebInspector::setLocalizedStringsPath): Added. Set globalInspectorLocalizedStringsURL.
3356         (WebKit::WebInspector::localizedStringsURL): Return globalInspectorLocalizedStringsURL.
3357         * WebProcess/com.apple.WebProcess.sb: Added read-only subpath for WEBKIT_WEB_INSPECTOR_DIR.
3358         * WebProcess/mac/WebProcessMac.mm:
3359         (WebKit::appendReadonlySandboxDirectory): Check path for empty to prevent an exception when
3360         calling through to fileSystemRepresentation.
3361         (WebKit::initializeSandbox): Added WEBKIT_WEB_INSPECTOR_DIR parameter.
3362         (WebKit::WebProcess::platformInitializeWebProcess): Call WebInspector::setLocalizedStringsPath.
3363
3364 2011-10-28  Alexey Proskuryakov  <ap@apple.com>
3365
3366         Clean up BuiltInPDFView a little
3367         https://bugs.webkit.org/show_bug.cgi?id=71133
3368
3369         Reviewed by Daniel Bates.
3370
3371         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp: (WebKit::BuiltInPDFView::createScrollbar):
3372         Removed an incorrect FIXME. Custom scrollbars specified in a document don't apply
3373         to subframes, and thus shouldn't apply to PDFs.
3374
3375         * WebProcess/Plugins/PDF/BuiltInPDFView.h: (WebKit::BuiltInPDFView::zoomAnimatorTransformChanged):
3376         Moved to a correct location. This is not a Plugin method, but a ScrollView one.
3377
3378 2011-10-28  Jochen Eisinger  <jochen@chromium.org>
3379
3380         Rename a number of methods mentioning JavaScript to just Script instead
3381         https://bugs.webkit.org/show_bug.cgi?id=71105
3382
3383         Reviewed by Adam Barth.
3384
3385         * WebProcess/WebPage/WebPage.cpp:
3386         (WebKit::WebPage::updatePreferences):
3387
3388 2011-10-28  Csaba Osztrogonác  <ossy@webkit.org>
3389
3390         [Qt] Adapt to QSG* to QQuick* API change in qtdeclarative
3391         https://bugs.webkit.org/show_bug.cgi?id=70494
3392
3393         One more buildfix. (unreviewed)
3394
3395         * UIProcess/API/qt/qtouchwebpage.cpp:
3396         (computeEffectiveOpacity):
3397         (QTouchWebPage::itemChange):
3398
3399 2011-10-28  Simon Hausmann  <simon.hausmann@nokia.com>
3400
3401         [Qt] Adapt to QSG* to QQuick* API change in qtdeclarative
3402         https://bugs.webkit.org/show_bug.cgi?id=70494
3403
3404         Reviewed by Kenneth Christiansen.
3405
3406         Use QQuick* instead of QSG* as well as QStandardPaths
3407         instead of QDesktopLocation.
3408
3409         * UIProcess/API/qt/qdesktopwebview.cpp:
3410         (QDesktopWebView::QDesktopWebView):
3411         (QDesktopWebView::geometryChanged):
3412         (QDesktopWebView::event):
3413         (QDesktopWebViewPrivate::engine):
3414         * UIProcess/API/qt/qdesktopwebview.h:
3415         * UIProcess/API/qt/qtouchwebpage.cpp:
3416         (QTouchWebPage::QTouchWebPage):
3417         (QTouchWebPage::event):
3418         (QTouchWebPage::geometryChanged):
3419         * UIProcess/API/qt/qtouchwebpage.h:
3420         * UIProcess/API/qt/qtouchwebview.cpp:
3421         (QTouchWebView::QTouchWebView):
3422         (QTouchWebView::geometryChanged):
3423         (QTouchWebView::touchEvent):
3424         * UIProcess/API/qt/qtouchwebview.h:
3425         * UIProcess/API/qt/tests/testwindow.h:
3426         (TestWindow::TestWindow):
3427         (TestWindow::resizeEvent):
3428         * UIProcess/qt/QtDesktopWebPageProxy.cpp:
3429         (QtDesktopWebPageProxy::createPopupMenuProxy):
3430         * UIProcess/qt/QtSGUpdateQueue.cpp:
3431         (WebKit::QtSGUpdateQueue::QtSGUpdateQueue):
3432         * UIProcess/qt/QtSGUpdateQueue.h:
3433         * UIProcess/qt/QtTouchViewInterface.cpp:
3434         (WebKit::QtTouchViewInterface::engine):
3435         * UIProcess/qt/QtViewportInteractionEngine.cpp:
3436         (WebKit::contentRectInViewportCoordinates):
3437         (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
3438         * UIProcess/qt/QtViewportInteractionEngine.h:
3439         * UIProcess/qt/WebContextQt.cpp:
3440         (WebKit::defaultDataLocation):
3441         * UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:
3442         (WebKit::WebPopupMenuProxyQtDesktop::WebPopupMenuProxyQtDesktop):
3443         * UIProcess/qt/WebPopupMenuProxyQtDesktop.h:
3444         (WebKit::WebPopupMenuProxyQtDesktop::create):
3445
3446 2011-10-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3447
3448         [Qt] Make the kinetic engine use the same curve and constants as on the N9
3449         https://bugs.webkit.org/show_bug.cgi?id=71102
3450
3451         Reviewed by Simon Hausmann.
3452
3453         Now that we are using the QScroller for kinetic scrolling and page
3454         interaction, we need to make sure it uses the same curve (exponential)
3455         and the same values as the MeeGo Touch physics engine used on the N9.
3456
3457         * UIProcess/qt/QtViewportInteractionEngine.cpp:
3458         (WebKit::QtViewportInteractionEngine::reset):
3459
3460 2011-10-28  Carlos Garcia Campos  <cgarcia@igalia.com>
3461
3462         [GTK] Add webkit_web_view_get_uri() to WebKit2 GTK+ API
3463         https://bugs.webkit.org/show_bug.cgi?id=70814
3464
3465         Reviewed by Gustavo Noronha Silva.
3466
3467         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
3468         (didStartProvisionalLoadForFrame): Update WebView URI to make sure
3469         it's updated to provisional URL.
3470         (didReceiveServerRedirectForProvisionalLoadForFrame): Update
3471         WebView URI if there's a server redirection.
3472         (didCommitLoadForFrame): Update WebView URI to make sure it
3473         contains the final one.
3474         (didSameDocumentNavigationForFrame): Update WebView URI when a
3475         navigation action within the same document is performed.
3476         (webkitWebLoaderClientAttachLoaderClientToPage): Add
3477         implementation for didSameDocumentNavigationForFrame callback.
3478         * UIProcess/API/gtk/WebKitWebView.cpp:
3479         (webkit_web_view_class_init): Add URI property.
3480         (webkitWebViewUpdateURI): Check whether current active URI has
3481         changed to updated it and emit ::notify signal if it changes.
3482         (webkit_web_view_load_uri): Call webkitWebViewUpdateURI() to make
3483         sure the active URI is updated when load operation is started.
3484         (webkit_web_view_load_alternate_html): Ditto.
3485         (webkit_web_view_reload): Ditto.
3486         (webkit_web_view_reload_bypass_cache): Ditto.
3487         (webkit_web_view_go_back): Ditto.
3488         (webkit_web_view_go_forward): Ditto.
3489         (webkit_web_view_get_uri): Ditto.
3490         (webkit_web_view_go_to_back_forward_list_item): Ditto.
3491         * UIProcess/API/gtk/WebKitWebView.h:
3492         * UIProcess/API/gtk/WebKitWebViewPrivate.h: Add
3493         webkitWebViewUpdateURI().
3494         * UIProcess/API/gtk/tests/LoadTrackingTest.cpp:
3495         (provisionalLoadStartedCallback): Check provisional URL is the
3496         requested URI.
3497         (provisionalLoadReceivedServerRedirectCallback): Check provisional
3498         URL after server redirection is the expected redirected URI.
3499         (provisionalLoadFailedCallback): Check active URI.
3500         (loadCommittedCallback): Ditto.
3501         (loadFinishedCallback): Ditto.
3502         (loadFailedCallback): Ditto
3503         (LoadTrackingTest::LoadTrackingTest): Check active URI is NULL
3504         before any loading operation has started.
3505         * UIProcess/API/gtk/tests/LoadTrackingTest.h:
3506         (LoadTrackingTest::setRedirectURI): Set the redirect URI to check
3507         it after a server redirection.
3508         * UIProcess/API/gtk/tests/TestBackForwardList.cpp:
3509         (testBackForwardListNavigation): Use WebViewTest methods for
3510         navigation actions instead of using WebKitWebView API directly.
3511         (testBackForwardListLimitAndCache): Ditto.
3512         * UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp:
3513         (testLoadingStatus): Ditto.
3514         (testLoadingError): Ditto.
3515         (testLoadAlternateContent): Ditto.
3516         (testLoadCancelled): Ditto.
3517         (testWebViewReload): Ditto.
3518         (testLoadProgress): Ditto.
3519         (testWebViewActiveURI): Add a test to check that notify signal is
3520         emitted when active URI changes and it's correctly updated when
3521         loader client signals are emitted.
3522         (beforeAll): Add active-uri test.
3523         * UIProcess/API/gtk/tests/WebViewTest.cpp: Add custom load methods
3524         wrapping the WebKitWebView ones, to initialize the active URI to
3525         the requested one, so that it can be checked by the loader client
3526         test.
3527         (WebViewTest::loadURI):
3528         (WebViewTest::loadAlternateHTML):
3529         (WebViewTest::goBack):
3530         (WebViewTest::goForward):
3531         (WebViewTest::goToBackForwardListItem):
3532         * UIProcess/API/gtk/tests/WebViewTest.h:
3533
3534 2011-10-21  No'am Rosenthal  <noam.rosenthal@nokia.com>
3535
3536         [Qt][WK2] Synchronize tiling with accelerated compositing
3537         https://bugs.webkit.org/show_bug.cgi?id=69151
3538
3539         Reviewed by Simon Hausmann.
3540
3541         Make QTouchWebView always render with accelerated compositing.
3542         At first, the web content would only render after the rest of the scene has rendered. In a
3543         future patch we'll enable rendering the web content via an FBO, which would cover all other
3544         cases as well.
3545
3546         Right now this only works for QTouchWebView, and thus accelerated compositing is disabled
3547         for desktop web-views. This required adding some settings enablers in Q
3548         WebPreferencesPrivate. Those are not exposed to the public API, as they are an implementation
3549         detail.
3550
3551         * UIProcess/API/qt/qtouchwebpage.cpp:
3552         (QTouchWebPage::QTouchWebPage):
3553         (QTouchWebPage::initSceneGraphConnections):
3554         (QTouchWebPagePrivate::QTouchWebPagePrivate):
3555         (QTouchWebPagePrivate::setPage):
3556         (computeEffectiveOpacity):
3557         (QTouchWebPagePrivate::paintToCurrentGLContext):
3558         (QTouchWebPagePrivate::_q_onAfterSceneRender):
3559         (QTouchWebPagePrivate::_q_onSceneGraphInitialized):
3560         (QTouchWebPage::itemChange):
3561         * UIProcess/API/qt/qtouchwebpage.h:
3562         * UIProcess/API/qt/qtouchwebpage_p.h:
3563         * UIProcess/API/qt/qwebpreferences.cpp:
3564         (QWebPreferencesPrivate::testAttribute):
3565         (QWebPreferencesPrivate::setAttribute):
3566         (QWebPreferencesPrivate::get):
3567         * UIProcess/API/qt/qwebpreferences_p.h:
3568         * UIProcess/TiledDrawingAreaProxy.cpp:
3569         (WebKit::TiledDrawingAreaProxy::renderNextFrame):
3570         * UIProcess/qt/QtDesktopWebPageProxy.cpp:
3571         (QtDesktopWebPageProxy::QtDesktopWebPageProxy):
3572         * UIProcess/qt/QtTouchViewInterface.cpp:
3573         (WebKit::QtTouchViewInterface::setViewNeedsDisplay):
3574         * UIProcess/qt/QtTouchWebPageProxy.cpp:
3575         (QtTouchWebPageProxy::QtTouchWebPageProxy):
3576         (QtTouchWebPageProxy::createDrawingAreaProxy):
3577         (QtTouchWebPageProxy::renderToCurrentGLContext):
3578         (QtTouchWebPageProxy::setVisibleContentRectAndScale):
3579         (QtTouchWebPageProxy::setVisibleContentRectTrajectoryVector):
3580         (QtTouchWebPageProxy::renderNextFrame):
3581         * UIProcess/qt/QtTouchWebPageProxy.h:
3582         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
3583         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
3584         * WebProcess/WebPage/qt/WebPageQt.cpp:
3585         (WebKit::WebPage::platformInitialize):
3586         * WebProcess/qt/WebProcessMainQt.cpp:
3587         (WebKit::WebProcessMainQt):
3588
3589 2011-10-27  Martin Robinson  <mrobinson@igalia.com>
3590
3591         Fix the GTK+ build after r98664.
3592
3593         * WebProcess/Plugins/Plugin.h: Add an IntSize forward declaration.
3594
3595 2011-10-27  Anders Carlsson  <andersca@apple.com>
3596
3597         Add a Plugin::geometryDidChange that will work with transforms
3598         https://bugs.webkit.org/show_bug.cgi?id=71072
3599
3600         Reviewed by Simon Fraser.
3601
3602         Add a new Plugin::geometryDidChange pure virtual member function, that takes
3603         the size of the plug-in, the clip rect (in plug-in coordinates), and a matrix that makes
3604         it possible to convert between root view coordinates and plug-in coordinates.
3605
3606         PluginView only calls this new geometryDidChange member function if 
3607         Plugin::wantsWindowRelativeCoordinates returns false, which is only true for BuiltInPDFView right now.
3608
3609         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3610         (WebKit::NetscapePlugin::geometryDidChange):
3611         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
3612         Add stub.
3613
3614         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
3615         (WebKit::BuiltInPDFView::updateScrollbars):
3616         (WebKit::BuiltInPDFView::pdfDocumentDidLoad):
3617         (WebKit::BuiltInPDFView::paintContent):
3618         (WebKit::BuiltInPDFView::deprecatedGeometryDidChange):
3619         (WebKit::BuiltInPDFView::geometryDidChange):
3620         (WebKit::BuiltInPDFView::setScrollOffset):
3621         (WebKit::BuiltInPDFView::maximumScrollPosition):
3622         (WebKit::BuiltInPDFView::visibleHeight):
3623         (WebKit::BuiltInPDFView::visibleWidth):
3624         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
3625         There's no need to keep track of the plug-in rect anymore.
3626
3627         * WebProcess/Plugins/Plugin.h:
3628         Add and document geometryDidChange.
3629
3630         * WebProcess/Plugins/PluginProxy.cpp:
3631         (WebKit::PluginProxy::geometryDidChange):
3632         * WebProcess/Plugins/PluginProxy.h:
3633         Add stub.
3634
3635         * WebProcess/Plugins/PluginView.cpp:
3636         (WebKit::PluginView::viewGeometryDidChange):
3637         Call geometryDidChange.
3638
3639 2011-10-27  Joseph Pecoraro  <pecoraro@apple.com>
3640
3641         Reviewed by David Kilzer.
3642
3643         Make FeatureDefines Identical Across OS X Projects
3644         https://bugs.webkit.org/show_bug.cgi?id=71051
3645
3646         * Configurations/FeatureDefines.xcconfig:
3647
3648 2011-10-27  Anders Carlsson  <andersca@apple.com>
3649
3650         Rename Plugin::geometryDidChange to Plugin::deprecatedGeometryDidChange
3651         https://bugs.webkit.org/show_bug.cgi?id=71065
3652
3653         Reviewed by Simon Fraser.
3654
3655         In preparation for adding a version of geometryDidChange that doesn't take window coordinates.
3656
3657         * PluginProcess/PluginControllerProxy.cpp:
3658         (WebKit::PluginControllerProxy::geometryDidChange):
3659         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3660         (WebKit::NetscapePlugin::deprecatedGeometryDidChange):
3661         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
3662         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
3663         (WebKit::BuiltInPDFView::deprecatedGeometryDidChange):
3664         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
3665         * WebProcess/Plugins/Plugin.h:
3666         * WebProcess/Plugins/PluginProxy.cpp:
3667         (WebKit::PluginProxy::deprecatedGeometryDidChange):
3668         * WebProcess/Plugins/PluginProxy.h:
3669         * WebProcess/Plugins/PluginView.cpp:
3670         (WebKit::PluginView::viewGeometryDidChange):
3671
3672 2011-10-27  Michael Saboff  <msaboff@apple.com>
3673
3674         Investigate storing strings in 8-bit buffers when possible
3675         https://bugs.webkit.org/show_bug.cgi?id=66161
3676
3677         Added export of StringImpl::getData16SlowCase for linking tests.
3678
3679         Reviewed by Geoffrey Garen.
3680
3681         * win/WebKit2.def:
3682
3683 2011-10-27  Sam Weinig  <sam@webkit.org>
3684
3685         Add allowsPlugIns property to WKBrowsingContextGroup
3686         https://bugs.webkit.org/show_bug.cgi?id=70987
3687
3688         Reviewed by Anders Carlsson.
3689
3690         Test: WKBrowsingContextGroupTest.GetSetPluginsEnabled
3691
3692         * UIProcess/API/mac/WKBrowsingContextGroup.h:
3693         * UIProcess/API/mac/WKBrowsingContextGroup.mm:
3694         (-[WKBrowsingContextGroup allowsJavaScript]):
3695         (-[WKBrowsingContextGroup setAllowsJavaScript:]):
3696         Rename to allowsJavaScript/setAllowsJavaScript.
3697
3698         (-[WKBrowsingContextGroup allowsPlugIns]):
3699         (-[WKBrowsingContextGroup setAllowsPlugIns:]):
3700         Add allowsPlugIns/setAllowsPlugIns.
3701
3702 2011-10-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3703
3704         [Cairo] Implement ShareableBitmap::paint() when scaleFactor=1
3705         https://bugs.webkit.org/show_bug.cgi?id=71027
3706
3707         Reviewed by Martin Robinson.
3708
3709         Fixes windowless plugins in GTK+ port.
3710
3711         * Shared/cairo/ShareableBitmapCairo.cpp:
3712         (WebKit::ShareableBitmap::paint): When scaleFactor is 1, simply
3713         call the paint method that doesn't receive a scaleFactor.
3714
3715 2011-10-27  Sheriff Bot  <webkit.review.bot@gmail.com>
3716
3717         Unreviewed, rolling out r98556.
3718         http://trac.webkit.org/changeset/98556
3719         https://bugs.webkit.org/show_bug.cgi?id=71031
3720
3721         The test added by the patch doesn't pass on Snow Leopard
3722         (Requested by rniwa on #webkit).
3723
3724         * win/WebKit2.def:
3725         * win/WebKit2CFLite.def:
3726
3727 2011-10-27  Mark Hahnenberg  <mhahnenberg@apple.com>
3728
3729         De-virtualize JSCell::toThisObject
3730         https://bugs.webkit.org/show_bug.cgi?id=70958
3731
3732         Reviewed by Geoffrey Garen.
3733
3734         Converted all instances of toThisObject to static functions, 
3735         added toThisObject to the MethodTable, and replaced all call sites
3736         with a corresponding lookup in the MethodTable.
3737
3738         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
3739         (WebKit::NPJSObject::invoke):
3740
3741 2011-10-27  Adam Roben  <aroben@apple.com>
3742
3743         Add WKBundlePageGetBackingScaleFactor
3744
3745         Fixes <http://webkit.org/b/71025> <rdar://problem/10355037> REGRESSION (r97191): Clients
3746         can't reliably determine the scale factor of snapshots returned via
3747         WKBundlePageCreateSnapshot* API
3748
3749         Reviewed by Sam Weinig.
3750
3751         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
3752         (WKBundlePageGetBackingScaleFactor):
3753         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
3754         Added. Calls through to WebPage::deviceScaleFactor.
3755
3756         * WebProcess/WebPage/WebPage.cpp:
3757         (WebKit::WebPage::deviceScaleFactor):
3758         * WebProcess/WebPage/WebPage.h:
3759         Added. Calls through to Page::deviceScaleFactor.
3760
3761 2011-10-27  Zalan Bujtas  <zbujtas@gmail.com>
3762
3763         [Qt][WK2]Add setViewportSize API to WebKit2.
3764         https://bugs.webkit.org/show_bug.cgi?id=71006
3765
3766         Reviewed by Kenneth Rohde Christiansen.
3767
3768         Fixed layout rendering needs the viewport size information on the WebProcess
3769         side to be able to do viewport attribute calculations.
3770
3771         * WebProcess/WebPage/WebPage.cpp:
3772         (WebKit::WebPage::setViewportSize):
3773         * WebProcess/WebPage/WebPage.h:
3774         (WebKit::WebPage::viewportSize):
3775         * WebProcess/WebPage/WebPage.messages.in:
3776
3777 2011-10-27  Alexis Menard  <alexis.menard@openbossa.org>
3778
3779         [Qt][WK2] Move the C API callback setup out of QtWebPageProxy
3780         https://bugs.webkit.org/show_bug.cgi?id=70965
3781
3782         Reviewed by Andreas Kling.
3783
3784         Move out the setup of C API callback into ClientImpl file
3785         so that QtWebPageProxy will be less polluted.
3786
3787         * UIProcess/qt/ClientImpl.cpp:
3788         (qt_wk_didStartProvisionalLoadForFrame):
3789         (qt_wk_didFailProvisionalLoadWithErrorForFrame):
3790         (qt_wk_didCommitLoadForFrame):
3791         (qt_wk_didFinishLoadForFrame):
3792         (qt_wk_didFailLoadWithErrorForFrame):
3793         (qt_wk_didSameDocumentNavigationForFrame):
3794         (qt_wk_didReceiveTitleForFrame):
3795         (qt_wk_didStartProgress):
3796         (qt_wk_didChangeProgress):
3797         (qt_wk_didFinishProgress):
3798         (qt_wk_runJavaScriptAlert):
3799         (qt_wk_runJavaScriptConfirm):
3800         (qt_wk_runJavaScriptPrompt):
3801         (qt_wk_setStatusText):
3802         (qt_wk_runOpenPanel):
3803         (qt_wk_mouseDidMoveOverElement):
3804         (qt_wk_decidePolicyForNavigationAction):
3805         (qt_wk_decidePolicyForResponse):
3806         (setupPageLoaderClient):
3807         (setupPageUiClient):
3808         (setupPagePolicyClient):
3809         * UIProcess/qt/ClientImpl.h:
3810         * UIProcess/qt/QtWebPageProxy.cpp:
3811         (QtWebPageProxy::init):
3812         * UIProcess/qt/QtWebPageProxy.h:
3813         (QtWebPageProxy::viewInterface):
3814
3815 2011-10-27  Zeno Albisser  <zeno.albisser@nokia.com>
3816
3817         [Qt][WK2] Remove QAction from MiniBrowser
3818         https://bugs.webkit.org/show_bug.cgi?id=70525
3819
3820         This fixes the commonview tests that were failing
3821         after r98447.
3822         WebViewAbstraction must forward actions to both
3823         the TouchWebView and the DesktopWebView.
3824
3825         Reviewed by Kenneth Rohde Christiansen.
3826
3827         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
3828         (WebViewAbstraction::goBack):
3829         (WebViewAbstraction::goForward):
3830         (WebViewAbstraction::stop):
3831         (WebViewAbstraction::reload):
3832
3833 2011-10-27  Zalan Bujtas  <zbujtas@gmail.com>
3834
3835         [Qt][WK2]Content size changed event does not require viewport attribute calculation.
3836         https://bugs.webkit.org/show_bug.cgi?id=70920
3837
3838         Reviewed by Kenneth Rohde Christiansen.
3839         
3840         Remove unnecessary recalculation of viewport attributes.
3841
3842         * UIProcess/qt/QtTouchViewInterface.cpp:
3843         (WebKit::QtTouchViewInterface::contentSizeChanged):
3844
3845 2011-10-27  Shinya Kawanaka  <shinyak@google.com>
3846
3847         Implement legacy text check emulation in unified text check interface.
3848         https://bugs.webkit.org/show_bug.cgi?id=70299
3849
3850         Reviewed by Hajime Morita.
3851
3852         * win/WebKit2.def:
3853         * win/WebKit2CFLite.def:
3854
3855 2011-10-27  Philippe Normand  <pnormand@igalia.com>
3856
3857         [GStreamer] WebAudio AudioFileReader implementation
3858         https://bugs.webkit.org/show_bug.cgi?id=69834
3859
3860         Reviewed by Martin Robinson.
3861
3862         * GNUmakefile.am: Link against libfftw.
3863
3864 2011-10-26  Alexey Proskuryakov  <ap@apple.com>
3865
3866         REGRESSION (r98153): Safari crashes if WebProcess crashed during printing
3867         https://bugs.webkit.org/show_bug.cgi?id=70982
3868
3869         Reviewed by Dan Bernstein.
3870
3871         * UIProcess/API/mac/WKPrintingView.mm: (-[WKPrintingView _delayedResumeAutodisplayTimerFired]):
3872         Null check page, it may be invalid already.
3873
3874 2011-10-26  Jeff Miller  <jeffm@apple.com>
3875
3876         WebKit2 should respect secret WebKitOmitPDFSupport preference on the Mac
3877         https://bugs.webkit.org/show_bug.cgi?id=70943
3878         
3879         If WebKitOmitPDFSupport pref is set, disable both the new "plug-in" for subframes and the PDFKit-based support for the main frame only.
3880
3881         Reviewed by Alexey Proskuryakov.
3882
3883         * UIProcess/WebContext.cpp:
3884         (WebKit::WebContext::getPlugins): Don't register built-in PDF plugin if WebKitOmitPDFSupport pref is set.
3885         
3886         * UIProcess/WebContext.h: Added omitPDFSupport().
3887         
3888         * UIProcess/WebFrameProxy.cpp:
3889         (WebKit::WebFrameProxy::canShowMIMEType): Don't show PDFs if WebKitOmitPDFSupport is set.
3890         
3891         * UIProcess/mac/WebContextMac.mm:
3892         (WebKit::WebContext::omitPDFSupport): Added.
3893
3894 2011-10-26  Sam Weinig  <sam@webkit.org>
3895
3896         Add initial setting to WKBrowsingContextGroup
3897         https://bugs.webkit.org/show_bug.cgi?id=70942
3898
3899         Reviewed by Anders Carlsson.
3900
3901         Test: WKBrowsingContextGroupTest.
3902
3903         * UIProcess/API/mac/WKBrowsingContextGroup.h:
3904         * UIProcess/API/mac/WKBrowsingContextGroup.mm:
3905         (-[WKBrowsingContextGroup isJavaScriptEnabled]):
3906         (-[WKBrowsingContextGroup setJavaScriptEnabled:]):
3907         Add setting to enabled/disable javascript. By default it is enabled. 
3908
3909 2011-10-25  Alexey Proskuryakov  <ap@apple.com>
3910
3911         Embedded PDFs should be known to DocumentLoader
3912         https://bugs.webkit.org/show_bug.cgi?id=70864
3913
3914         Reviewed by Darin Adler.
3915
3916         * WebProcess/Plugins/Plugin.h: Plugin stream load notifications now contain a suggested
3917         file name, in case the plug-in wants to save the file properly.
3918
3919         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
3920         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
3921         (WebKit::BuiltInPDFView::addArchiveResource): Add the PDF as resource in DocumentLoader.
3922         (WebKit::BuiltInPDFView::pdfDocumentDidLoad): Call addArchiveResource.
3923         (WebKit::BuiltInPDFView::initialize): We need to remember source URL to create a resource
3924         for that. The URL needs to match one in HitTestResult, so we can't use response URL.
3925         (WebKit::BuiltInPDFView::streamDidReceiveResponse): Remember suggested file name, so
3926         that we could put it in archive resource later.
3927         (WebKit::BuiltInPDFView::manualStreamDidReceiveResponse): Ditto.
3928
3929         * PluginProcess/PluginControllerProxy.cpp:
3930         (WebKit::PluginControllerProxy::streamDidReceiveResponse):
3931         (WebKit::PluginControllerProxy::manualStreamDidReceiveResponse):
3932         Pass an empty string for suggested file name. No plug-in that runs in a separate process
3933         cares about it, so it's not sent to the plugin process.
3934
3935         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3936         (WebKit::NetscapePlugin::streamDidReceiveResponse):
3937         (WebKit::NetscapePlugin::manualStreamDidReceiveResponse):
3938         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
3939         Updated for new signatures.
3940
3941         * WebProcess/Plugins/PluginProxy.cpp:
3942         (WebKit::PluginProxy::streamDidReceiveResponse):
3943         (WebKit::PluginProxy::manualStreamDidReceiveResponse):
3944         * WebProcess/Plugins/PluginProxy.h:
3945         Updated for new signatures.
3946
3947         * WebProcess/Plugins/PluginView.cpp:
3948         (WebKit::PluginView::Stream::didReceiveResponse):
3949         (WebKit::PluginView::manualLoadDidReceiveResponse):
3950         Pass suggested file name to plug-in, in case the plug-in wants to save the file properly.
3951
3952 2011-10-26  Mark Hahnenberg  <mhahnenberg@apple.com>
3953
3954         Remove getOwnPropertySlotVirtual
3955         https://bugs.webkit.org/show_bug.cgi?id=70741
3956
3957         Reviewed by Geoffrey Garen.
3958
3959         Removed all declarations and definitions of getOwnPropertySlotVirtual.
3960         Also replaced all call sites to getOwnPropertyVirtualVirtual with a 
3961         corresponding lookup in the MethodTable.
3962
3963         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
3964         * WebProcess/Plugins/Netscape/JSNPObject.h:
3965
3966 2011-10-26  Alejandro G. Castro  <alex@igalia.com>
3967
3968         [GTK] [WK2] Add WebKit2 distcheck support
3969         https://bugs.webkit.org/show_bug.cgi?id=70933
3970
3971         Reviewed by Martin Robinson.
3972
3973         * GNUmakefile.am: Add a bunch of missing files from API and
3974         sources, also include more files in the EXTRA_DIST.
3975         * UIProcess/API/gtk/docs/GNUmakefile.am: Add the version.xml to
3976         the cleaning section.
3977
3978 2011-10-26  Carlos Garcia Campos  <cgarcia@igalia.com>
3979
3980         [GTK] Fix gtk-doc warnings and style issues in WebKit2 GTK+ API
3981         https://bugs.webkit.org/show_bug.cgi?id=70930
3982
3983         Reviewed by Martin Robinson.
3984
3985         * UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
3986         * UIProcess/API/gtk/WebKitSettings.cpp:
3987         (webkit_settings_class_init):
3988         * UIProcess/API/gtk/WebKitWebView.h:
3989         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
3990
3991 2011-10-26  Anders Carlsson  <andersca@apple.com>
3992
3993         Use the right contents scale factor for non-Mac plug-ins
3994         https://bugs.webkit.org/show_bug.cgi?id=70939
3995
3996         Reviewed by Adam Roben.
3997
3998         * WebProcess/Plugins/PluginProxy.cpp:
3999         (WebKit::PluginProxy::paint):
4000         (WebKit::PluginProxy::geometryDidChange):
4001         (WebKit::PluginProxy::update):
4002
4003 2011-10-26  Carlos Garcia Campos  <cgarcia@igalia.com>
4004
4005         [GTK] Add missing symbols to WebKit2 gtk-doc files
4006         https://bugs.webkit.org/show_bug.cgi?id=70927
4007
4008         Reviewed by Martin Robinson.
4009
4010         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add sections for
4011         WebKitBackForwardList, WebKitBackForwardListItem and WebKitSettings.
4012         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add missing symbols.
4013         * UIProcess/API/gtk/docs/webkit2gtk.types: Add missing types.
4014
4015 2011-10-26  Carlos Garcia Campos  <cgarcia@igalia.com>
4016
4017         [GTK] Inconsistent name of WebKitSettings macros
4018         https://bugs.webkit.org/show_bug.cgi?id=70924
4019
4020         Reviewed by Martin Robinson.
4021
4022         Rename WEBKIT_TYPE_WEB_SETTINGS as WEBKIT_TYPE_SETTINGS and
4023         WEBKIT_IS_WEB_SETTINGS as WEBKIT_IS_SETTINGS.
4024
4025         * UIProcess/API/gtk/WebKitSettings.cpp:
4026         (webkit_settings_init):
4027         (webkit_settings_new):
4028         (webkit_settings_get_enable_javascript):
4029         (webkit_settings_set_enable_javascript):
4030         (webkit_settings_get_auto_load_images):
4031         (webkit_settings_set_auto_load_images):
4032         (webkit_settings_get_load_icons_ignoring_image_load_setting):
4033         (webkit_settings_set_load_icons_ignoring_image_load_setting):
4034         (webkit_settings_get_enable_offline_web_application_cache):
4035         (webkit_settings_set_enable_offline_web_application_cache):
4036         (webkit_settings_get_enable_html5_local_storage):
4037         (webkit_settings_set_enable_html5_local_storage):
4038         (webkit_settings_get_enable_html5_database):
4039         (webkit_settings_set_enable_html5_database):
4040         (webkit_settings_get_enable_xss_auditor):
4041         (webkit_settings_set_enable_xss_auditor):
4042         (webkit_settings_get_enable_frame_flattening):
4043         (webkit_settings_set_enable_frame_flattening):
4044         (webkit_settings_get_enable_plugins):
4045         (webkit_settings_set_enable_plugins):
4046         (webkit_settings_get_enable_java):
4047         (webkit_settings_set_enable_java):
4048         (webkit_settings_get_javascript_can_open_windows_automatically):
4049         (webkit_settings_set_javascript_can_open_windows_automatically):
4050         (webkit_settings_get_enable_hyperlink_auditing):
4051         (webkit_settings_set_enable_hyperlink_auditing):
4052         * UIProcess/API/gtk/WebKitSettings.h:
4053
4054 2011-10-26  Andras Becsi  <andras.becsi@nokia.com>
4055
4056         [Qt][WK2] Rename clean-up of QtPinchGestureRecognizer and QtViewportInteractionEngine
4057         https://bugs.webkit.org/show_bug.cgi?id=70903
4058
4059         Reviewed by Kenneth Rohde Christiansen.
4060
4061         Rename computeTouchCenter to computePinchCenter,
4062         and use the plural form of coordinate where appropriate.
4063
4064         * UIProcess/API/qt/qtouchwebview.cpp:
4065         (QTouchWebViewPrivate::_q_viewportUpdated):
4066         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
4067         (WebKit::computePinchCenter):
4068         (WebKit::QtPinchGestureRecognizer::recognize):
4069         * UIProcess/qt/QtViewportInteractionEngine.cpp:
4070         (WebKit::contentRectInViewportCoordinates):
4071         (WebKit::QtViewportInteractionEngine::event):
4072         (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
4073         (WebKit::QtViewportInteractionEngine::pinchGestureRequestUpdate):
4074         (WebKit::QtViewportInteractionEngine::scaleContent):
4075         * UIProcess/qt/QtViewportInteractionEngine.h:
4076
4077 2011-10-26  Zalan Bujtas  <zbujtas@gmail.com>
4078
4079         Name viewport change event consistently.
4080         https://bugs.webkit.org/show_bug.cgi?id=70901
4081
4082         Reviewed by Kenneth Rohde Christiansen.
4083
4084         Use ViewportPropertiesDidChange term consistently throughout WebKit.
4085
4086         * UIProcess/API/efl/PageClientImpl.cpp:
4087         (WebKit::PageClientImpl::didChangeViewportProperties):
4088         * UIProcess/API/efl/PageClientImpl.h:
4089         * UIProcess/API/gtk/PageClientImpl.cpp:
4090         (WebKit::PageClientImpl::didChangeViewportProperties):
4091         * UIProcess/API/gtk/PageClientImpl.h:
4092         * UIProcess/API/mac/PageClientImpl.h:
4093         * UIProcess/API/mac/PageClientImpl.mm:
4094         (WebKit::PageClientImpl::didChangeViewportProperties):
4095         * UIProcess/API/qt/qdesktopwebview.cpp:
4096         (QDesktopWebViewPrivate::didChangeViewportProperties):
4097         * UIProcess/API/qt/qdesktopwebview_p.h:
4098         * UIProcess/API/qt/qtouchwebview.cpp:
4099         (QTouchWebViewPrivate::didChangeViewportProperties):
4100         * UIProcess/API/qt/qtouchwebview_p.h:
4101         * UIProcess/PageClient.h:
4102         * UIProcess/WebPageProxy.cpp:
4103         (WebKit::WebPageProxy::didChangeViewportProperties):
4104         * UIProcess/WebPageProxy.h:
4105         * UIProcess/WebPageProxy.messages.in:
4106         * UIProcess/qt/QtDesktopWebPageProxy.cpp:
4107         (QtDesktopWebPageProxy::didChangeViewportProperties):
4108         * UIProcess/qt/QtDesktopWebPageProxy.h:
4109         * UIProcess/qt/QtTouchViewInterface.cpp:
4110         (WebKit::QtTouchViewInterface::didChangeViewportProperties):
4111         * UIProcess/qt/QtTouchViewInterface.h:
4112   &nbs