Hang beneath PluginProcessProxy::createPropertyListFile() when using a thin build
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2011-10-12  Dan Bernstein  <mitz@apple.com>
2
3         Hang beneath PluginProcessProxy::createPropertyListFile() when using a thin build
4         https://bugs.webkit.org/show_bug.cgi?id=69960
5
6         Reviewed by Adam Roben.
7
8         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
9         (WebKit::PluginProcessProxy::createPropertyListFile): Check for any non-zero return value
10         from posix_spawn() rather than for a negative return value. The old, incorrect check, caused
11         this function to hang in waitpid() after failing to spawn a plug-in process for a 32-bit plug-in
12         when WebKit2 was built for 64-bit only.
13
14 2011-10-12  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
15
16         [Qt][WK2] Move qweberror* out of API/qt
17         https://bugs.webkit.org/show_bug.cgi?id=69875
18
19         Reviewed by Andreas Kling.
20
21         Moving QWebError outside API/qt in order to keep our API folder (layer) aligned.
22
23         * UIProcess/qt/qweberror.cpp: Renamed from Source/WebKit2/UIProcess/API/qt/qweberror.cpp.
24         (QWebError::QWebError):
25         (QWebErrorPrivate::createQWebError):
26         (QWebErrorPrivate::QWebErrorPrivate):
27         (QWebErrorPrivate::~QWebErrorPrivate):
28         (QWebError::type):
29         (QWebError::errorCode):
30         (QWebError::url):
31         * UIProcess/qt/qweberror.h: Renamed from Source/WebKit2/UIProcess/API/qt/qweberror.h.
32         (QWebError::errorCodeAsHttpStatusCode):
33         (QWebError::errorCodeAsNetworkError):
34         * UIProcess/qt/qweberror_p.h: Renamed from Source/WebKit2/UIProcess/API/qt/qweberror_p.h.
35         * WebKit2.pro:
36         * WebKit2API.pri:
37
38 2011-10-12  Nayan Kumar K  <nayankk@motorola.com>
39
40         [WebKit2][gtk] Add few more API's to gtk-doc section file.
41         https://bugs.webkit.org/show_bug.cgi?id=69921
42
43         Reviewed by Gustavo Noronha Silva.
44
45         Generate documentation for existing WebKit2-GTK+ API's,
46         which are not yet the part of gtk-doc documentation.
47
48         * UIProcess/API/gtk/docs/GNUmakefile.am: List ignore files.
49         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: API's addition.
50
51 2011-10-11  Simon Fraser  <simon.fraser@apple.com>
52
53         Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
54         https://bugs.webkit.org/show_bug.cgi?id=68134
55
56         Reviewed by Darin Adler.
57
58         Use ScrollbarThemeMock when the setting to use mock scrollbars is enabled.
59         
60         Make ScrollbarTheme::nativeTheme() private, and add a new static theme() method
61         that reads the setting, and returns the mock theme if set. All callers now use
62         theme() rther than nativeTheme(). Add the new ScrollbarTheme.cpp file to the build.
63
64         * UIProcess/win/WebPopupMenuProxyWin.cpp:
65         (WebKit::WebPopupMenuProxyWin::calculatePositionAndSize):
66         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
67         (WebKit::BuiltInPDFView::paintControls):
68         * WebProcess/WebPage/PageOverlay.cpp:
69         (WebKit::PageOverlay::bounds):
70
71 2011-10-11  Simon Fraser  <simon.fraser@apple.com>
72
73         Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
74         https://bugs.webkit.org/show_bug.cgi?id=68134
75
76         Reviewed by Darin Adler.
77
78         ScrollbarTheme::nativeTheme() renamed to theme().
79
80         * WebProcess/WebPage/PageOverlay.cpp:
81         (WebKit::PageOverlay::bounds):
82
83 2011-10-10  Martin Robinson  <mrobinson@igalia.com>
84
85         [GTK] [WebKit2] Make adding another unit test easier
86         https://bugs.webkit.org/show_bug.cgi?id=69409
87
88         Reviewed by Gustavo Noronha Silva.
89
90         * GNUmakefile.am: Add the new WebKit2 API tests.
91         * UIProcess/API/gtk/tests/GNUmakefile.am: Added.
92         * UIProcess/API/gtk/tests/LoadTrackingTest.cpp: Added. A fixture for creating load tracking tests.
93         * UIProcess/API/gtk/tests/LoadTrackingTest.h: Added.
94         * UIProcess/API/gtk/tests/TestMain.cpp: Copied from Source/WebKit2/UIProcess/API/gtk/tests/testwebview.c.
95         (main):
96         * UIProcess/API/gtk/tests/TestMain.h: Added.
97         * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp: Copied from Source/WebKit2/UIProcess/API/gtk/tests/testwebview.c.
98         * UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp: Added.
99         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Renamed from Source/WebKit2/UIProcess/API/gtk/tests/testwebview.c.
100         * UIProcess/API/gtk/tests/WebViewTest.cpp: Added. A fixture for generic WebView tests.
101         * UIProcess/API/gtk/tests/WebViewTest.h: Added.
102         * UIProcess/API/gtk/tests/testloading.c: Removed.
103         * UIProcess/API/gtk/tests/testwebcontext.c: Removed.
104
105 2011-10-11  Alexey Proskuryakov  <ap@apple.com>
106
107         [Mac] Crash when opening an embedded PDF in a background tab
108         https://bugs.webkit.org/show_bug.cgi?id=69880
109
110         Reviewed by Darin Adler.
111
112         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
113         (WebKit::BuiltInPDFView::BuiltInPDFView):
114         (WebKit::BuiltInPDFView::~BuiltInPDFView):
115         (WebKit::BuiltInPDFView::initialize):
116         (WebKit::BuiltInPDFView::destroy):
117         Moved initialization and destruction code from C++ constructor and destructor to designated
118         functions. Not part of the fix, but seems related enough to fix.
119
120 2011-10-11  Alexey Proskuryakov  <ap@apple.com>
121
122         [Mac] Crash when opening an embedded PDF in a background tab
123         https://bugs.webkit.org/show_bug.cgi?id=69880
124
125         Reviewed by Darin Adler.
126
127         * WebProcess/Plugins/PluginView.cpp: (WebKit::PluginView::paint): Don't call plug-in that
128         doesn't even have a controller yet.
129
130 2011-10-11  Beth Dakin  <bdakin@apple.com>
131
132         https://bugs.webkit.org/show_bug.cgi?id=69874
133         WebKit2 snapshot APIs should take the device scale factor into account 
134         -and corresponding-
135         <rdar://problem/10269112>
136
137         Reviewed by Darin Adler.
138
139         Add the deviceScaleFactor as a scale on the snapshot's context to create a 
140         snapshot of the appropriate resolution. This matches the manner in which we scale 
141         the context in DrawingAreaImpl::display().
142         * WebProcess/WebPage/WebPage.cpp:
143         (WebKit::WebPage::snapshotInViewCoordinates):
144         (WebKit::WebPage::scaledSnapshotInDocumentCoordinates):
145
146 2011-10-11  W. James MacLean  <wjmaclean@chromium.org>
147
148         Loss of precision when converting from double to int and double to float in FrameView::zoomAnimatorTransformChanged()
149         https://bugs.webkit.org/show_bug.cgi?id=69739
150
151         Change 'double' parameters to 'float' to match changes in FrameView.
152
153         Reviewed by Simon Fraser.
154
155         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
156         (WebKit::BuiltInPDFView::zoomAnimatorTransformChanged):
157
158 2011-10-11  Alexey Proskuryakov  <ap@apple.com>
159
160         [Mac] Small embedded PDFs are not fully repainted when scrolling
161         https://bugs.webkit.org/show_bug.cgi?id=69861
162
163         Reviewed by Anders Carlsson.
164
165         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp: (WebKit::BuiltInPDFView::paintContent):
166         Account for vertical centering when deciding which pages to paint.
167
168 2011-10-11  Alexey Proskuryakov  <ap@apple.com>
169
170         Embedding of PDF's with <object> or <embed> fails when there is no MIME type specified
171         https://bugs.webkit.org/show_bug.cgi?id=64934
172
173         Reviewed by Dan Bernstein.
174
175         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::createPlugin): Check URL extension, too,
176         like GetPluginPath does in UI process. One difference is that UI process additionally tries
177         platform specific extension to MIME type mapping, but that doesn't matter for PDF, which
178         does not have other standard extensions.
179
180 2011-10-11  Alexey Proskuryakov  <ap@apple.com>
181
182         [Mac] Should be able to display multi-page PDFs in subframes
183         https://bugs.webkit.org/show_bug.cgi?id=69804
184
185         Reviewed by Anders Carlsson.
186
187         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
188         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
189         (WebKit::BuiltInPDFView::updateScrollbars): Page step should be exactly one page, so that
190         one could step over the document page by page. It certainly shouldn't be a portion of the
191         whole document.
192         (WebKit::BuiltInPDFView::pdfDocumentDidLoad): Moved duplicated code from load callbacks here.
193         (WebKit::BuiltInPDFView::calculateSizes): Calculate document size including gutters, and
194         remember page boxes.
195         (WebKit::BuiltInPDFView::paint): Split into separate functions.
196         (WebKit::BuiltInPDFView::paintBackground): Just paint gray background for the whole dirty rect.
197         (WebKit::BuiltInPDFView::paintContent): Paint pages and shadow under them. This code is still
198         fairly naive, as it doesn't understand annotations or page rotation.
199         Constants for shadows roughly match PDFView, but not quite, since it draws entirely custom
200         shadows.
201         (WebKit::BuiltInPDFView::paintControls): Moved scrollbar and scroll corner painting here.
202         (WebKit::BuiltInPDFView::streamDidFinishLoading): Moved common code into pdfDocumentDidLoad().
203         (WebKit::BuiltInPDFView::manualStreamDidFinishLoading): Ditto.
204
205 2011-10-11  Gopal Raghavan  <gopal.1.raghavan@nokia.com>
206
207         [Qt] WebProcess using proxy settings for localhost as well
208         https://bugs.webkit.org/show_bug.cgi?id=69611
209
210         Reviewed by Chang Shu.
211
212         Implemented checks in queryProxy to return QNetworkProxy::NoProxy for localhost and 127.0.0.1
213
214         * WebProcess/qt/WebProcessMainQt.cpp:
215         (WebKit::EnvHttpProxyFactory::queryProxy):
216
217 2011-10-11  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
218
219         [Qt] Remove all references to QTDIR_build and standalone_package
220
221         Qt is now modularized, which means we no longer import WebKit into
222         the Qt source tree. Instead we use git submodules, and building
223         QtWebKit as "part of Qt" is really building QtWebKit as from trunk.
224
225         To decrease the number of buildsystem configurations we also remove
226         the standalone_package code-path used when we were providing tarballs
227         with the derived sources pre-generated.
228
229         Reviewed by Simon Hausmann.
230
231         * DerivedSources.pro:
232         * UIProcess/API/qt/qmlplugin/qmlplugin.pro:
233         * UIProcess/API/qt/tests/tests.pri:
234         * WebKit2.pri:
235         * WebProcess.pro:
236
237 2011-10-10  Nate Chapin  <japhet@chromium.org>
238
239         Use a CachedImageClient instead of CachedResourceClient
240         in WebDragClientMac.
241         https://bugs.webkit.org/show_bug.cgi?id=69790
242
243         Reviewed by Adam Barth.
244
245         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
246         (promisedDataClient):
247
248 2011-10-10  Mark Hahnenberg  <mhahnenberg@apple.com>
249
250         Remove getCallDataVirtual methods
251         https://bugs.webkit.org/show_bug.cgi?id=69186
252
253         Reviewed by Geoffrey Garen.
254
255         Removed all getCallDataVirtual methods and replaced their call sites 
256         with an explicit lookup in the MethodTable.
257
258         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
259         * WebProcess/Plugins/Netscape/JSNPMethod.h:
260         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
261         * WebProcess/Plugins/Netscape/JSNPObject.h:
262
263 2011-10-10  Simon Hausmann  <simon.hausmann@nokia.com>
264
265         [Qt] Fix build with qreal == float on MeeGo 1.2 Harmattan
266
267         Reviewed by Andreas Kling.
268
269         Explicitly choose the qreal variant of qMin, since QPointF is using qreal.
270
271         * UIProcess/qt/ViewportInteractionEngine.cpp:
272         (WebKit::ViewportInteractionEngine::animateContentPositionIntoBoundariesIfNeeded):
273
274 2011-10-10  Carlos Garcia Campos  <cgarcia@igalia.com>
275
276         [GTK] Add methods to reload the view to WebKit2 GTK+ API
277         https://bugs.webkit.org/show_bug.cgi?id=69613
278
279         Reviewed by Martin Robinson.
280
281         * UIProcess/API/gtk/WebKitWebView.cpp:
282         (webkit_web_view_reload):
283         (webkit_web_view_reload_bypass_cache):
284         * UIProcess/API/gtk/WebKitWebView.h:
285         * UIProcess/API/gtk/tests/testloading.c:
286         (loadReloadProvisionalLoadStarted):
287         (loadReloadLoadFinished):
288         (testLoadTimeoutFinishLoop):
289         (testLoadReload):
290         (main):
291
292 2011-10-09  Luke Macpherson   <macpherson@chromium.org>
293
294         Fix Lion, Leopard and Snow Leopard builds after changeset 97034 <http://trac.webkit.org/changeset/97034>
295         (https://bugs.webkit.org/show_bug.cgi?id=68035)
296         https://bugs.webkit.org/show_bug.cgi?id=69735
297
298         Reviewed by Daniel Bates.
299
300         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
301         Add symbols that are now required by ScrollableArea.
302         (WebKit::BuiltInPDFView::zoomAnimatorTransformChanged):
303
304 2011-10-08  Mark Hahnenberg  <mhahnenberg@apple.com>
305
306         Add static version of JSCell::getConstructData
307         https://bugs.webkit.org/show_bug.cgi?id=69673
308
309         Reviewed by Geoffrey Garen.
310
311         Added static version of getConstructData to all classes that 
312         override it and changed the virtual versions to call the static 
313         versions.  This is the first step in de-virtualizing JSCell::getConstructData.
314
315         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
316         (WebKit::JSNPObject::getConstructData):
317         * WebProcess/Plugins/Netscape/JSNPObject.h:
318
319 2011-10-08  Mark Hahnenberg  <mhahnenberg@apple.com>
320
321         Add static version of JSCell::getOwnPropertySlot
322         https://bugs.webkit.org/show_bug.cgi?id=69593
323
324         Reviewed by Geoffrey Garen.
325
326         Added static version of getOwnPropertySlot to every class that overrides
327         JSCell::getOwnPropertySlot.  The virtual versions now call the static versions.
328         This is the first step in de-virtualizing JSCell::getOwnPropertySlot.
329
330         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
331         (WebKit::JSNPObject::getOwnPropertySlot):
332         * WebProcess/Plugins/Netscape/JSNPObject.h:
333
334 2011-10-03  Carlos Garcia Campos  <cgarcia@igalia.com> and Martin Robinson  <mrobinson@igalia.com>
335
336         [GTK] Implement drag and drop support in WebKit2
337         https://bugs.webkit.org/show_bug.cgi?id=63706
338
339         Reviewed by Philippe Normand.
340
341         * GNUmakefile.am: Add new files to compilation.
342         * Shared/gtk/ArgumentCodersGtk.cpp: Added.
343         (CoreIPC::encodeImage): Encode a GdkPixbuf.
344         (CoreIPC::decodeImage): Decode a GdkPixbuf.
345         (CoreIPC::encodeDataObject): Encode a DataObjectGtk.
346         (CoreIPC::decodeDataObject): Decode a DataObjectGtk.
347         (CoreIPC::::encode): Encode DragData.
348         (CoreIPC::::decode): Decode DragData.
349         * Shared/gtk/ArgumentCodersGtk.h:
350         * UIProcess/API/gtk/PageClientImpl.cpp:
351         (WebKit::PageClientImpl::startDrag):
352         * UIProcess/API/gtk/PageClientImpl.h:
353         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
354         (webkit_web_view_base_init): Set the view as a potential drop destination.
355         (webkitWebViewBaseDragDataGet): Added, delegate to GtkDragAndDropHelper.
356         (webkitWebViewBaseDragEnd): Ditto.
357         (webkitWebViewBaseDragDataReceived): Ditto.
358         (webkitWebViewBaseDragEnter): Ditto.
359         (webkitWebViewBaseDragMotion): Ditto.
360         (doDragLeaveLater): Ditto.
361         (webkitWebViewBaseDragLeave): Ditto.
362         (webkitWebViewBaseDragDrop): Ditto.
363         (webkit_web_view_base_class_init): Override GtkWidget drag and drop methods.
364         (webkitWebViewBaseStartDrag): Calls gtk_drag_begin() to start a drag operation.
365         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Add webkitWebViewBaseStartDrag().
366         * UIProcess/PageClient.h: Add startDrag().
367         * UIProcess/WebPageProxy.cpp:
368         (WebKit::WebPageProxy::performDragControllerAction): Share the Qt version.
369         * UIProcess/WebPageProxy.h:
370         * UIProcess/WebPageProxy.messages.in:
371         * WebProcess/WebCoreSupport/WebDragClient.cpp:
372         * WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp: Added.
373         * WebProcess/WebPage/WebPage.cpp: Add drag support for GTK+.
374         * WebProcess/WebPage/WebPage.h: Ditto.
375         * WebProcess/WebPage/WebPage.messages.in: Ditto.
376
377 2011-10-08  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
378
379         [Qt] [WK2] Wrong handling of visibility in QTouchWebPage
380         https://bugs.webkit.org/show_bug.cgi?id=69670
381
382         Reviewed by Andreas Kling.
383
384         Replace QTouchWebPage visibility handling by Show/Hide events with use of 
385         QSGItem::visibleChanged signal.
386
387         * UIProcess/API/qt/qtouchwebpage.cpp:
388         (QTouchWebPage::QTouchWebPage):
389         (QTouchWebPage::event):
390         (QTouchWebPage::onVisibleChanged):
391         * UIProcess/API/qt/qtouchwebpage.h:
392
393 2011-10-08  Sheriff Bot  <webkit.review.bot@gmail.com>
394
395         Unreviewed, rolling out r96996.
396         http://trac.webkit.org/changeset/96996
397         https://bugs.webkit.org/show_bug.cgi?id=69697
398
399         It broke all tests on the Qt bot (Requested by Ossy_night on
400         #webkit).
401
402         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
403         (WebKit::JSNPMethod::getCallDataVirtual):
404         * WebProcess/Plugins/Netscape/JSNPMethod.h:
405         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
406         (WebKit::JSNPObject::getCallDataVirtual):
407         * WebProcess/Plugins/Netscape/JSNPObject.h:
408
409 2011-10-07  Jeff Miller  <jeffm@apple.com>
410
411         Add WKPageContextMenuClient callback when context menu is dismissed
412         https://bugs.webkit.org/show_bug.cgi?id=69553
413
414         Add contextMenuDismissed callback to WKPageContextMenuClient, and bump the API
415         version of this client to 1 so we continue to work with old clients.
416
417         * Shared/APIClientTraits.cpp: Added array of interface sizes for WKPageContextMenuClient.
418         * Shared/APIClientTraits.h: Added APIClientTraits for WKPageContextMenuClient.
419
420         * UIProcess/API/C/WKPage.h: Added contextMenuDismissed callback to WKPageContextMenuClient and bumped kWKPageContextMenuClientCurrentVersion.
421
422         * UIProcess/WebPageContextMenuClient.cpp:
423         (WebKit::WebPageContextMenuClient::contextMenuDismissed): Added.
424
425         * UIProcess/WebPageContextMenuClient.h: Added WebPageContextMenuClient::contextMenuDismissed().
426
427         * UIProcess/WebPageProxy.cpp:
428         (WebKit::WebPageProxy::internalShowContextMenu): Notify client when context menu is dismissed.
429
430 2011-10-07  Mark Hahnenberg  <mhahnenberg@apple.com>
431
432         Remove getCallDataVirtual methods
433         https://bugs.webkit.org/show_bug.cgi?id=69186
434
435         Reviewed by Geoffrey Garen.
436
437         Removed all getCallDataVirtual methods and replaced their call sites 
438         with an explicit lookup in the MethodTable.
439
440         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
441         * WebProcess/Plugins/Netscape/JSNPMethod.h:
442         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
443         * WebProcess/Plugins/Netscape/JSNPObject.h:
444
445 2011-10-07  Alexey Proskuryakov  <ap@apple.com>
446
447         [Mac] Scrollbars in embedded PDFs should update when system preferences change
448         https://bugs.webkit.org/show_bug.cgi?id=69654
449
450         Reviewed by Simon Fraser.
451
452         * WebProcess/Plugins/PDF/BuiltInPDFView.h: Added an scrollbarStyleChanged() override.
453         ScrollAnimatorMac sets scrollbar frame to a bogus (0, 0, thickness, thickness) one when style
454         changes, and expects clients to move them back in place.
455
456         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
457         (WebKit::BuiltInPDFView::isOnActivePage): Fixed a typo that prevented ScrollAnimatorMac from
458         updating style of PDF view scrollbars.
459         (WebKit::BuiltInPDFView::scrollbarStyleChanged): Reposition scrollbars and content after
460         style change. The behavior is not perfect in edge cases, but roughly matches ScrollView.
461
462 2011-10-07  Sheriff Bot  <webkit.review.bot@gmail.com>
463
464         Unreviewed, rolling out r96938.
465         http://trac.webkit.org/changeset/96938
466         https://bugs.webkit.org/show_bug.cgi?id=69653
467
468         It broke zillion tests and make testing so slow (Requested by
469         ossy_ on #webkit).
470
471         * UIProcess/WebContext.cpp:
472         * UIProcess/WebContext.h:
473         * UIProcess/efl/WebContextEfl.cpp:
474         (WebKit::WebContext::applicationCacheDirectory):
475         * UIProcess/gtk/WebContextGtk.cpp:
476         (WebKit::WebContext::applicationCacheDirectory):
477         * UIProcess/mac/WebContextMac.mm:
478         (WebKit::WebContext::applicationCacheDirectory):
479         * UIProcess/qt/WebContextQt.cpp:
480         (WebKit::WebContext::applicationCacheDirectory):
481         * UIProcess/win/WebContextWin.cpp:
482         (WebKit::WebContext::applicationCacheDirectory):
483
484 2011-10-07  Qi Zhang  <qi.2.zhang@nokia.com>
485
486         [Qt][WK2] ApplicationCache LayoutTests failed
487         https://bugs.webkit.org/show_bug.cgi?id=69541
488
489         Reviewed by Chang Shu.
490
491         1. Moved applicationCacheDirectory to common code.
492         2. Added interface setApplicationCacheDirectory to allow UI client overriding.
493         3. Renamed all platform-dependent implementations of applicationCacheDirectory to platformDefaultApplicationCacheDirectory.
494         4. On Qt, set the platformDefaultApplicationCacheDirectory to the default data location.
495
496
497         * UIProcess/WebContext.cpp:
498         (WebKit::WebContext::applicationCacheDirectory):
499         * UIProcess/WebContext.h:
500         (WebKit::WebContext::setApplicationCacheDirectory):
501         * UIProcess/efl/WebContextEfl.cpp:
502         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
503         * UIProcess/gtk/WebContextGtk.cpp:
504         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
505         * UIProcess/mac/WebContextMac.mm:
506         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
507         * UIProcess/qt/WebContextQt.cpp:
508         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
509         * UIProcess/win/WebContextWin.cpp:
510         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
511
512 2011-10-06  Brent Fulgham  <bfulgham@webkit.org>
513
514         [WinCairo] Correct improper identification of WKQC extensions.
515         https://bugs.webkit.org/show_bug.cgi?id=69600
516
517         * DerivedSources.make: Make sure we are not building the
518         WinCairo variant.
519
520 2011-10-06  Anders Carlsson  <andersca@apple.com>
521
522         When building with clang, enable -Wglobal-constructors and -Wexit-time-destructors
523         https://bugs.webkit.org/show_bug.cgi?id=69586
524
525         Reviewed by Darin Adler.
526
527         * Configurations/Base.xcconfig:
528         Add -Wglobal-constructors and -Wexit-time-destructors when building with clang.
529
530         * WebKit2.xcodeproj/project.pbxproj:
531         When building with clang, we don't need to run the check-for-global-initializers and
532         check-for-exit-time-destructors anymore.
533
534 2011-10-06  Anders Carlsson  <andersca@apple.com>
535
536         Add DEFINE_DEBUG_ONLY_GLOBAL for globals that should be defined in debug builds
537         https://bugs.webkit.org/show_bug.cgi?id=69584
538
539         Reviewed by Darin Adler.
540
541         Adopt the DEFINE_DEBUG_ONLY_GLOBAL macro.
542
543         * UIProcess/WebContext.cpp:
544         * UIProcess/WebPageProxy.cpp:
545         * WebProcess/WebPage/WebFrame.cpp:
546         * WebProcess/WebPage/WebPage.cpp:
547
548 2011-10-06  Alexey Proskuryakov  <ap@apple.com>
549
550         [Mac] Should be able to scroll embedded PDFs using mouse
551         https://bugs.webkit.org/show_bug.cgi?id=69579
552
553         Reviewed by Darin Adler.
554
555         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
556         (WebKit::BuiltInPDFView::handleMouseEvent): No longer need to hardcode mouseDown handling,
557         ScrollableArea does everything now.
558         (WebKit::BuiltInPDFView::horizontalScrollbar): Added plumbing to access scrollbars from
559         WebCore hit testing code.
560         (WebKit::BuiltInPDFView::verticalScrollbar): Ditto.
561         (WebKit::BuiltInPDFView::visibleHeight): ScrollableArea now wants this.
562         (WebKit::BuiltInPDFView::visibleWidth): Ditto.
563
564         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
565         (WebKit::NetscapePlugin::horizontalScrollbar):
566         (WebKit::NetscapePlugin::verticalScrollbar):
567         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
568         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
569         * WebProcess/Plugins/Plugin.h:
570         * WebProcess/Plugins/PluginProxy.cpp:
571         (WebKit::PluginProxy::horizontalScrollbar):
572         (WebKit::PluginProxy::verticalScrollbar):
573         * WebProcess/Plugins/PluginProxy.h:
574         * WebProcess/Plugins/PluginView.cpp:
575         (WebKit::PluginView::horizontalScrollbar):
576         (WebKit::PluginView::verticalScrollbar):
577         * WebProcess/Plugins/PluginView.h:
578         Added plumbing to access scrollbars from WebCore hit testing code.
579
580 2011-10-06  Alexis Menard  <alexis.menard@openbossa.org>
581
582         [Qt][WK2] WebIconDatabase expects a file path not a directory.
583         https://bugs.webkit.org/show_bug.cgi?id=69557
584
585         Reviewed by Andreas Kling.
586
587         WebIconDatabase::setDatabasePath expects a file path not a directory.
588         I used the same name as the Mac port.
589
590         * UIProcess/qt/WebContextQt.cpp:
591         (WebKit::WebContext::platformDefaultIconDatabasePath):
592
593 2011-10-06  Anders Carlsson  <andersca@apple.com>
594
595         In background window, page flashes white if it enters and then immediately leaves compositing mode
596         https://bugs.webkit.org/show_bug.cgi?id=69566
597         <rdar://problem/9521192>
598
599         Reviewed by Dan Bernstein.
600
601         Don't update the backing store state if we're just about to exit accelerated compositing mode. Otherwise
602         the UI process will try to render an empty layer tree for a short period of time, leading to a white flash.
603
604         * WebProcess/WebPage/DrawingAreaImpl.cpp:
605         (WebKit::DrawingAreaImpl::layerHostDidFlushLayers):
606
607 2011-10-06  Fady Samuel  <fsamuel@chromium.org>
608
609         Code clean-up: Make RenderObject::absoluteBoundingBoxRect and associated methods const and make its parameter useTransforms no longer default to false
610         https://bugs.webkit.org/show_bug.cgi?id=69009
611
612         Reviewed by Simon Fraser.
613
614         * win/WebKit2.def:
615         * win/WebKit2CFLite.def:
616
617 2011-10-06  Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com>
618
619         Move windows specific TextChecker implementation common to all ports.
620         https://bugs.webkit.org/show_bug.cgi?id=68532
621
622         Reviewed by Anders Carlsson.
623
624         All the TextChecker feature implementation files are moved outside of win port since they are
625         platform independent and can be moved across all ports. Only the implementation of TextChecker
626         class is platform dependent now and has been retained across all ports. Rest all files has been
627         moved for all ports usage.
628
629         * Shared/API/c/WKBase.h: Add WKGrammarDetailRef & WKTextCheckerRef types.
630         * Shared/API/c/win/WKBaseWin.h: Remove WKGrammarDetailRef & WKTextCheckerRef types.
631         * Shared/APIObject.h: Moved TypeGrammarDetail & TypeTextChecker from platform specific section to UIProcess types.
632         * UIProcess/API/C/WKAPICast.h: Added mapping for WKTextCheckerRef & WKGrammarDetailRef.
633         * UIProcess/API/C/WKGrammarDetail.cpp: Renamed from Source/WebKit2/UIProcess/API/C/win/WKGrammarDetail.cpp.
634         * UIProcess/API/C/WKGrammarDetail.h: Renamed from Source/WebKit2/UIProcess/API/C/win/WKGrammarDetail.h.
635         * UIProcess/API/C/WKTextChecker.cpp: Renamed from Source/WebKit2/UIProcess/API/C/win/WKTextChecker.cpp.
636         * UIProcess/API/C/WKTextChecker.h: Renamed from Source/WebKit2/UIProcess/API/C/win/WKTextChecker.h.
637         * UIProcess/API/C/win/WKAPICastWin.h: Removed mapping for WKTextCheckerRef & WKGrammarDetailRef.
638         * UIProcess/WebGrammarDetail.cpp: Renamed from Source/WebKit2/UIProcess/win/WebGrammarDetail.cpp.
639         * UIProcess/WebGrammarDetail.h: Renamed from Source/WebKit2/UIProcess/win/WebGrammarDetail.h.
640         * UIProcess/WebTextChecker.cpp: Renamed from Source/WebKit2/UIProcess/win/WebTextChecker.cpp.
641         * UIProcess/WebTextChecker.h: Renamed from Source/WebKit2/UIProcess/win/WebTextChecker.h.
642         * UIProcess/WebTextCheckerClient.cpp: Renamed from Source/WebKit2/UIProcess/win/WebTextCheckerClient.cpp.
643         * UIProcess/WebTextCheckerClient.h: Renamed from Source/WebKit2/UIProcess/win/WebTextCheckerClient.h.
644         * win/WebKit2.vcproj: Corrected paths for renamed files.
645         * win/WebKit2Generated.make: Corrected paths for renamed files.
646
647 2011-10-06  Anders Carlsson  <andersca@apple.com>
648
649         Crash when PluginProxy object is destroyed inside PluginProxy::pluginScriptableNPObject
650         https://bugs.webkit.org/show_bug.cgi?id=69559
651         <rdar://problem/9704066>
652
653         Reviewed by Maciej Stachowiak.
654
655         Protect the plug-in itself in the call to pluginScriptableNPObject. In some cases, sending
656         the synchronous message to the plug-in process can end up causing the web process to handle
657         an incoming message that will destroy t he plug-in.
658
659         Unfortunately, this is highly timing-dependent and can't be tested reliably.
660
661         * WebProcess/Plugins/PluginProxy.cpp:
662         (WebKit::PluginProxy::pluginScriptableNPObject):
663
664 2011-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
665
666         [GTK] Add estimated-progress property to WebKitWebLoaderClient
667         https://bugs.webkit.org/show_bug.cgi?id=69509
668
669         Reviewed by Martin Robinson.
670
671         It allows to monitor the estimated progress of a lof operation by
672         connecting to the notify signal.
673
674         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
675         (didChangeProgress): Update estimated-progress property and notify when
676         it changes.
677         (webkitWebLoaderClientConstructed): Add implementations for
678         didStartProgress, didChangeProgress and didFinishProgress.
679         (webkitWebLoaderClientGetProperty):
680         (webkit_web_loader_client_class_init): Add estimated-progress property.
681         (webkit_web_loader_client_get_estimated_progress): Returns the
682         value of estimated-progress property.
683         * UIProcess/API/gtk/WebKitWebLoaderClient.h:
684         * UIProcess/API/gtk/tests/testloading.c:
685         (webLoadingFixtureSetup):
686         (loadProgressEstimatedProgressChanged):
687         (loadProgressLoadFinished):
688         (testLoadProgress):
689         (main):
690
691 2011-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
692
693         [GTK] Implement cache model for WebKit2
694         https://bugs.webkit.org/show_bug.cgi?id=68434
695
696         Reviewed by Martin Robinson.
697
698         * UIProcess/API/gtk/WebKitWebContext.cpp:
699         (webkit_web_context_set_cache_model):
700         (webkit_web_context_get_cache_model):
701         * UIProcess/API/gtk/WebKitWebContext.h:
702         * UIProcess/API/gtk/tests/testwebcontext.c:
703         (testWebContextCacheModel):
704         (main):
705         * WebProcess/gtk/WebProcessGtk.cpp:
706         (WebKit::getCacheDiskFreeSize): Helper function to get free space
707         of the file system where the cache directory is on.
708         (WebKit::getMemorySize): Helper function to get the total memory
709         of the system in MB.
710         (WebKit::WebProcess::platformSetCacheModel): Implement
711         platformSetCacheModel for Gtk port using calculateCacheSizes().
712
713 2011-10-05  Alexey Proskuryakov  <ap@apple.com>
714
715         https://bugs.webkit.org/show_bug.cgi?id=69492
716         [Mac] Should be able to scroll embedded PDFs from keyboard
717
718         Reviewed by Darin Adler.
719
720         * WebProcess/Plugins/Plugin.h:
721         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
722         (WebKit::NetscapePlugin::handleScroll):
723         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
724         * WebProcess/Plugins/PluginProxy.cpp:
725         (WebKit::PluginProxy::handleScroll):
726         * WebProcess/Plugins/PluginProxy.h:
727         Added a handleScroll method. A plug-in gets it if it doesn't handle a keyboard event, and
728         WebCore decides that this is an event for scrolling. A plug-in can decide whether it scrolls
729         main content, or some scrollable subview of its own.
730
731         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
732         (WebKit::BuiltInPDFView::handleMouseEvent): Added a comment explaining returned value.
733         (WebKit::BuiltInPDFView::handleScroll): Just call ScrollableArea, it will do everything.
734
735         * WebProcess/Plugins/PDF/BuiltInPDFView.h: Added a handleScroll override.
736
737         * WebProcess/Plugins/PluginView.cpp:
738         (WebKit::PluginView::scroll): Pass a PluginViewBase scroll to plug-in to handle.
739         (WebKit::PluginView::handleEvent): Added a FIXME.
740         * WebProcess/Plugins/PluginView.h:
741
742 2011-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
743
744         [GTK] Do not use C API in GTK+ API public headers
745         https://bugs.webkit.org/show_bug.cgi?id=69506
746
747         Reviewed by Martin Robinson.
748
749         * GNUmakefile.am: Add new files to compilation.
750         * UIProcess/API/gtk/WebKitDefines.h: Added.
751         * UIProcess/API/gtk/WebKitError.h: Use WEBKIT_API instead of WK_EXPORT.
752         * UIProcess/API/gtk/WebKitWebContext.h: Ditto.
753         * UIProcess/API/gtk/WebKitWebLoaderClient.h: Ditto.
754         * UIProcess/API/gtk/WebKitWebView.h: Ditto.
755         * UIProcess/API/gtk/WebKitWebViewBase.h: Ditto.
756         * UIProcess/API/gtk/docs/GNUmakefile.am: Ignore WEBKIT_API
757         decorator in docs.
758         * UIProcess/API/gtk/webkit2.h: Include <webkit2/WebKitDefines.h>
759
760 2011-10-06  Alexis Menard  <alexis.menard@openbossa.org>
761
762         [Qt][WK2] Cursor should change when hovering links or input fields.
763         https://bugs.webkit.org/show_bug.cgi?id=69519
764
765         Reviewed by Simon Hausmann.
766
767         This is a temporary fix until Qt5 brings support for changing cursor
768         per item. This patch enforce the change of the cursor at application
769         level.
770
771         * UIProcess/API/qt/qdesktopwebview.cpp:
772         (QDesktopWebViewPrivate::didChangeCursor):
773
774 2011-10-06  Zeno Albisser  <zeno.albisser@nokia.com>
775
776         [Qt][WK2][Mac] QtWebProcess should not show up in the Dock.
777         https://bugs.webkit.org/show_bug.cgi?id=69432
778
779         We can set the environment variable QT_MAC_DISABLE_FOREGROUND_APPLICATION_TRANSFORM
780         in the WebProcess stub to disable the automatic foreground transformation.
781
782         Reviewed by Andreas Kling.
783
784         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
785         (WebKit::QtWebProcess::setupChildProcess):
786
787 2011-10-03  Andy Estes  <aestes@apple.com>
788
789         Add an option to suppress rendering until the document's load event fires.
790         https://bugs.webkit.org/show_bug.cgi?id=69298
791
792         Reviewed by Simon Fraser.
793         
794         Add a new WKPreference.
795
796         * Shared/WebPreferencesStore.h:
797         * UIProcess/API/C/WKPreferences.cpp:
798         (WKPreferencesSetSuppressRenderingWhileInitiallyLoading):
799         (WKPreferencesGetSuppressRenderingWhileInitiallyLoading):
800         * UIProcess/API/C/WKPreferences.h:
801         * WebProcess/WebPage/WebPage.cpp:
802         (WebKit::WebPage::updatePreferences):
803
804 2011-10-05  Simon Fraser  <simon.fraser@apple.com>
805
806         r96770 broke binary compatibility with Safari
807         https://bugs.webkit.org/show_bug.cgi?id=69496
808
809         Reviewed by Dan Bernstein.
810         
811         Fix binary compatibility issue by declaring the deprecated methods inside a extern "C" block.
812
813         * UIProcess/API/C/WKContext.cpp:
814
815 2011-10-05  Jer Noble  <jer.noble@apple.com>
816
817         Enable WEB_AUDIO by default in the WebKit/mac port.
818         https://bugs.webkit.org/show_bug.cgi?id=68587
819
820         Reviewed by Simon Fraser.
821
822         * Configurations/FeatureDefines.xcconfig:
823
824 2011-10-05  Simon Fraser  <simon.fraser@apple.com>
825
826         In WebKitTestRunner, text has font smoothing in pixel snapshots
827         https://bugs.webkit.org/show_bug.cgi?id=69396
828
829         Reviewed by Darin Adler.
830         
831         Plumb through a method on WKContext that controls whether font smoothing
832         is enabled. Since this is a global setting, such a method is more appropriate
833         than a preference.
834         
835         Remove leading underscores on some WKContext functions, but keep
836         exported versions of same for binary compatibility.
837
838         * Shared/WebProcessCreationParameters.cpp:
839         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
840         (WebKit::WebProcessCreationParameters::encode):
841         (WebKit::WebProcessCreationParameters::decode):
842         * Shared/WebProcessCreationParameters.h:
843         * UIProcess/API/C/WKContext.cpp:
844         (WKContextSetAlwaysUsesComplexTextCodePath):
845         (WKContextSetShouldUseFontSmoothing):
846         (WKContextSetAdditionalPluginsDirectory):
847         (WKContextRegisterURLSchemeAsEmptyDocument):
848         (WKContextSetHTTPPipeliningEnabled):
849         (_WKContextSetAdditionalPluginsDirectory):
850         (_WKContextRegisterURLSchemeAsEmptyDocument):
851         (_WKContextSetAlwaysUsesComplexTextCodePath):
852         (_WKContextSetHTTPPipeliningEnabled):
853         * UIProcess/API/C/WKContextPrivate.h:
854         * UIProcess/WebContext.cpp:
855         (WebKit::WebContext::WebContext):
856         (WebKit::WebContext::ensureWebProcess):
857         (WebKit::WebContext::setShouldUseFontSmoothing):
858         (WebKit::WebContext::httpPipeliningEnabled):
859         * UIProcess/WebContext.h:
860         * WebProcess/WebProcess.cpp:
861         (WebKit::WebProcess::initializeWebProcess):
862         (WebKit::WebProcess::setShouldUseFontSmoothing):
863         * WebProcess/WebProcess.h:
864         * WebProcess/WebProcess.messages.in:
865
866 2011-10-05  Anders Carlsson  <andersca@apple.com>
867
868         Flash of white when unminimizing windows
869         https://bugs.webkit.org/show_bug.cgi?id=69476
870         <rdar://problem/10202680>
871
872         Reviewed by Simon Fraser.
873
874         Whenever the UI process requests an immediate backing store update, make sure to resume
875         painting if it's suspended.
876
877         * WebProcess/WebPage/DrawingAreaImpl.cpp:
878         (WebKit::DrawingAreaImpl::updateBackingStoreState):
879
880 2011-10-05  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
881
882         [Qt] [WK2] Support JS alert/confirm/prompt in QDesktopWebView
883         https://bugs.webkit.org/show_bug.cgi?id=69274
884
885         Reviewed by Andreas Kling.
886
887         Use currently existing QtWidgets to provide an implementation of
888         window.alert(), window.confirm() and window.prompt().
889
890         * Shared/WebString.h:
891         (WebKit::WebString::createNull):
892         (WebKit::WebString::WebString):
893         Add a way to create a Null WebString. RunJavaScriptPrompt will differentiate
894         between empty and null strings.
895
896         * UIProcess/API/qt/qdesktopwebview.cpp:
897         (QDesktopWebViewPrivate::enableMouseEvents):
898         (QDesktopWebViewPrivate::disableMouseEvents):
899         Create helper functions to enable and disable mouse events. This is useful for
900         disabling mouse events in the WebView when we show QtWidget dialogs to avoid
901         unwanted interaction with the page.
902
903         (QDesktopWebViewPrivate::runJavaScriptAlert):
904         (QDesktopWebViewPrivate::runJavaScriptConfirm):
905         (QDesktopWebViewPrivate::runJavaScriptPrompt):
906         (QDesktopWebView::init):
907         * UIProcess/API/qt/qdesktopwebview_p.h:
908         * UIProcess/qt/ClientImpl.cpp:
909         (qt_wk_runJavaScriptAlert):
910         (qt_wk_runJavaScriptConfirm):
911         (createNullWKString):
912         (qt_wk_runJavaScriptPrompt):
913         * UIProcess/qt/ClientImpl.h:
914         * UIProcess/qt/QtWebPageProxy.cpp:
915         (QtWebPageProxy::init):
916         * UIProcess/qt/TouchViewInterface.cpp:
917         (WebKit::TouchViewInterface::runJavaScriptAlert):
918         (WebKit::TouchViewInterface::runJavaScriptConfirm):
919         (WebKit::TouchViewInterface::runJavaScriptPrompt):
920         * UIProcess/qt/TouchViewInterface.h:
921         * UIProcess/qt/ViewInterface.h:
922
923 2011-10-05  Chang Shu  <cshu@webkit.org>
924
925         [WK2] Support setMarkedText/hasMarkedText/unmarkText/insertText for WTR TextInputController
926         https://bugs.webkit.org/show_bug.cgi?id=68924
927
928         Implemented WKBundlePage private APIs to support the above functions.
929
930         Reviewed by Darin Adler.
931
932         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
933         (WKBundlePageSetComposition):
934         (WKBundlePageHasComposition):
935         (WKBundlePageConfirmComposition):
936         (WKBundlePageConfirmCompositionWithText):
937         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
938         * WebProcess/WebPage/WebPage.cpp:
939         (WebKit::WebPage::setCompositionForTesting):
940         (WebKit::WebPage::hasCompositionForTesting):
941         (WebKit::WebPage::confirmCompositionForTesting):
942         * WebProcess/WebPage/WebPage.h:
943
944 2011-10-05  Alexey Proskuryakov  <ap@apple.com>
945
946         [Mac] Make built-in PDF description localizable
947         https://bugs.webkit.org/show_bug.cgi?id=69442
948
949         Reviewed by Dan Bernstein.
950
951         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp: Use a localized string instead of a literal one.
952
953 2011-10-05  Chang Shu  <cshu@webkit.org>
954
955         [WK2] WebKitTestRunner needs LayoutTestController.dumpConfigurationForViewport
956         https://bugs.webkit.org/show_bug.cgi?id=69365
957
958         Reviewed by Darin Adler.
959
960         Implement retrieving viewport configuration as text in WebProcess.
961
962         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
963         (WKBundlePageViewportConfigurationAsText):
964         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
965         * WebProcess/WebPage/WebPage.cpp:
966         (WebKit::WebPage::viewportConfigurationAsText):
967         * WebProcess/WebPage/WebPage.h:
968
969 2011-10-05  Alexis Menard  <alexis.menard@openbossa.org>
970
971         [Qt][WK2] Default directories and paths are missing for LocalStorage, Database and IconDatabase.
972         https://bugs.webkit.org/show_bug.cgi?id=69111
973
974         Reviewed by Kenneth Rohde Christiansen.
975
976         Provide default path for LocalStorage, Database and IconDatabase using QDesktopServices.
977
978         * UIProcess/qt/WebContextQt.cpp:
979         (WebKit::defaultDataLocation):
980         (WebKit::WebContext::platformInitializeWebProcess):
981         (WebKit::WebContext::platformDefaultDatabaseDirectory):
982         (WebKit::WebContext::platformDefaultIconDatabasePath):
983         (WebKit::WebContext::platformDefaultLocalStorageDirectory):
984
985 2011-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
986
987         [GTK] Use WKRetainPtr for WK types in WebKit2 GTK+
988         https://bugs.webkit.org/show_bug.cgi?id=69404
989
990         Reviewed by Martin Robinson.
991
992         * UIProcess/API/gtk/WebKitWebContext.cpp:
993         (webkitWebContextFinalize):
994         (createDefaultWebContext):
995         (webkitWebContextGetWKContext):
996         * UIProcess/API/gtk/WebKitWebView.cpp:
997         (webkit_web_view_load_uri):
998         (webkit_web_view_load_alternate_html):
999
1000 2011-10-04  Kent Tamura  <tkent@chromium.org>
1001
1002         Introduce feature flags for incomplete input types
1003         https://bugs.webkit.org/show_bug.cgi?id=68971
1004
1005         Reviewed by Hajime Morita.
1006
1007         * Configurations/FeatureDefines.xcconfig:
1008         Add ENABLE_INPUT_TYPE_* flags. They are enabled only for iOS.
1009
1010 2011-10-04  Scott Graham  <scottmg@chromium.org>
1011
1012         Add GAMEPAD feature flag
1013         https://bugs.webkit.org/show_bug.cgi?id=66859
1014
1015         Reviewed by Darin Fisher.
1016
1017         * Configurations/FeatureDefines.xcconfig:
1018
1019 2011-10-04  Ada Chan  <adachan@apple.com>
1020
1021         toURLRef() in WKSharedAPICast.h should return null for a null string
1022         https://bugs.webkit.org/show_bug.cgi?id=69380
1023
1024         Reviewed by Jon Honeycutt.
1025
1026         * Shared/API/c/WKSharedAPICast.h:
1027         (WebKit::toURLRef): Add the missing "return" for the null string case.
1028
1029 2011-10-04  Alexey Proskuryakov  <ap@apple.com>
1030
1031         https://bugs.webkit.org/show_bug.cgi?id=67774
1032         PDF in a frameset is not displayed, always downloads
1033
1034         Reviewed by Darin Adler.
1035
1036         * WebKit2.xcodeproj/project.pbxproj:
1037         * WebProcess/Plugins/PDF: Added.
1038         Added BuiltInPDFView class. It implements ScrollableArea and Plugin, working with iframes,
1039         objects and embeds. The implementation targets Mac port only, fixing a WebKit2 regression.
1040
1041         * UIProcess/WebContext.cpp: (WebKit::WebContext::getPlugins): Tell WebCore that there is a
1042         plug-in for PDF, so that it instantiates it in a regular fashion.
1043
1044         * UIProcess/WebFrameProxy.cpp: (WebKit::WebFrameProxy::canShowMIMEType): We can now show
1045         PDF not only in main frame.
1046
1047         * WebProcess/Plugins/PDF/BuiltInPDFView.cpp: Added. This is largely an implementation of
1048         ScrollableArea now, which can render the first page of a PDF. Further improvements to come.
1049
1050         * WebProcess/Plugins/PDF/BuiltInPDFView.h: Added.
1051
1052         * WebProcess/Plugins/Plugin.cpp: (WebKit::Plugin::updateControlTints): Give Plugin a chance
1053         to invalidate its tintable controls - it's necessary for PDF because scrollbars are tintable. 
1054
1055         * WebProcess/Plugins/Plugin.h: (WebKit::Plugin::controller): Added a const version, since
1056         some ScrollableArea methods are const.
1057
1058         * WebProcess/Plugins/PluginView.cpp: (WebKit::PluginView::paint): Call updateControlTints
1059         at updatingControlTints phase.
1060
1061         * WebProcess/Plugins/PluginView.h: PDF plug-in needs to tinker with embedding FrameView to
1062         use Scrollbar class, so it needs to cast its PluginController up to PluginView. It's unfortunate
1063         that PluginView has so much NPAPI specific code, but that's how it is now.
1064
1065         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::createPlugin): If there is no real plug-in
1066         installed for PDF, instantiate built-in one.
1067
1068 2011-10-04  Jon Lee  <jonlee@apple.com>
1069
1070         REGRESSION (WK2): (Shift-)option-tabbing skips over elements when transitioning from chrome to webview
1071         https://bugs.webkit.org/show_bug.cgi?id=68412
1072         <rdar://problem/9988252>
1073
1074         Reviewed by Darin Adler.
1075
1076         In WK1 setInitialFocus() is called on FocusController with the key event that
1077         caused the web view to become first responder. In WK2 no event is sent. So if
1078         the key stroke that caused the change in first responder status contains the
1079         option modifier key, FocusController did not know that it had to switch behavior.
1080
1081         Because there are multiple ways that the WKView can becomeFirstResponder, I changed
1082         the signature to setInitialFocus to express whether the key event parameter is an
1083         actual key event.
1084
1085         * UIProcess/API/C/win/WKView.cpp:
1086         (WKViewSetInitialFocus):
1087         * UIProcess/API/mac/WKView.mm:
1088         (-[WKView becomeFirstResponder]): Take the NSApp currentEvent and pass it along if
1089         the event is a keyboard event, otherwise pass an empty event.
1090         * UIProcess/WebPageProxy.cpp:
1091         (WebKit::WebPageProxy::setInitialFocus): Change in function signature to confirm that
1092         the event that caused the initial focus was a keyboard event, and provide the keyboard
1093         event itself.
1094         * UIProcess/WebPageProxy.h:
1095         * UIProcess/win/WebView.cpp:
1096         (WebKit::WebView::setInitialFocus):
1097         * UIProcess/win/WebView.h:
1098         * WebProcess/WebPage/WebPage.cpp:
1099         (WebKit::WebPage::setInitialFocus): If we know that the cause of this was a keyboard
1100         event, we pass that event to the FocusController. Otherwise we fall back to the original
1101         behavior, which is to pass no event at all.
1102         * WebProcess/WebPage/WebPage.h:
1103         * WebProcess/WebPage/WebPage.messages.in:
1104
1105 2011-10-04  Jeff Miller  <jeffm@apple.com>
1106
1107         WKPreferences should allow control of application chrome mode
1108         https://bugs.webkit.org/show_bug.cgi?id=69344
1109
1110         Reviewed by Dan Bernstein.
1111
1112         * Shared/WebPreferencesStore.h: Add application chrome mode setting to FOR_EACH_WEBKIT_BOOL_PREFERENCE().
1113
1114         * UIProcess/API/C/WKPreferences.cpp:
1115         (WKPreferencesSetApplicationChromeModeEnabled): Added.
1116         (WKPreferencesGetApplicationChromeModeEnabled): Added.
1117
1118         * UIProcess/API/C/WKPreferencesPrivate.h: Added WKPreferencesSetApplicationChromeModeEnabled() and WKPreferencesGetApplicationChromeModeEnabled().
1119
1120         * WebProcess/WebPage/WebPage.cpp:
1121         (WebKit::WebPage::updatePreferences): Set application chrome mode setting.
1122
1123 2011-10-04  Carlos Garcia Campos  <cgarcia@igalia.com>
1124
1125         [GTK] Implement default error pages in WebKit2 GTK+ API
1126         https://bugs.webkit.org/show_bug.cgi?id=69255
1127
1128         Reviewed by Martin Robinson.
1129
1130         * UIProcess/API/gtk/WebKitError.cpp:
1131         (webkit_policy_error_quark): Add quark for policy errors.
1132         (webkit_plugin_error_quark): Add quark for plugin errors.
1133         * UIProcess/API/gtk/WebKitError.h: Add policy and plugin errors.
1134         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
1135         (webkitWebLoaderClientLoadFailed): Load a custom error page when
1136         load failed and signal has not been handled.
1137         (webkit_web_loader_client_class_init): Add default implementation
1138         for provisional_load_failed and load_failed virtual methods.
1139
1140 2011-10-04  Carlos Garcia Campos  <cgarcia@igalia.com>
1141
1142         [GTK] Add webkit_web_view_load_alternate_html() to WebKit2 GTK+ API
1143         https://bugs.webkit.org/show_bug.cgi?id=69254
1144
1145         Reviewed by Martin Robinson.
1146
1147         * UIProcess/API/gtk/WebKitWebView.cpp:
1148         (webkit_web_view_load_alternate_html):
1149         * UIProcess/API/gtk/WebKitWebView.h:
1150         * UIProcess/API/gtk/tests/testloading.c:
1151         (loadAlternateContentLoadFinished):
1152         (loadAlternateContentLoadFailed):
1153         (testLoadAlternateContent):
1154         (main):
1155
1156 2011-10-03  Jon Lee  <jonlee@apple.com>
1157
1158         Extend DOM WheelEvent to differentiate between physical and logical scroll directions
1159         https://bugs.webkit.org/show_bug.cgi?id=68959
1160         <rdar://problem/10036688>
1161
1162         Reviewed by Sam Weinig.
1163
1164         * Shared/WebEvent.h:
1165         (WebKit::WebWheelEvent::directionInvertedFromDevice):
1166         * Shared/WebEventConversion.cpp:
1167         (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
1168         * Shared/WebWheelEvent.cpp:
1169         (WebKit::WebWheelEvent::WebWheelEvent):
1170         (WebKit::WebWheelEvent::encode):
1171         (WebKit::WebWheelEvent::decode):
1172         * Shared/mac/WebEventFactory.mm:
1173         (WebKit::WebEventFactory::createWebWheelEvent): get the flag from the NSEvent.
1174         * UIProcess/WebPageProxy.cpp:
1175         (WebKit::coalesce):
1176
1177 2011-10-04  Nayan Kumar K  <nayankk@motorola.com>
1178
1179         [WebKit2][gtk] Generate gtk-doc for WebKit2-GTK.
1180         https://bugs.webkit.org/show_bug.cgi?id=69325
1181
1182         Reviewed by Gustavo Noronha Silva.
1183
1184         Documentation generation for WebKit2-GTK+ APIs
1185         using gtk-doc.
1186
1187         * GNUmakefile.am: Added doc generation files to EXTRA_DIST.
1188         * UIProcess/API/gtk/docs/GNUmakefile.am: Makefile for doc generation.
1189         * UIProcess/API/gtk/docs/version.xml.in: Version information.
1190         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Document template.
1191         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Document sections added.
1192         * UIProcess/API/gtk/docs/webkit2gtk.types: Added GObjects types.
1193
1194 2011-10-04  Nayan Kumar K  <nayankk@motorola.com>
1195
1196         [WebKit2][gtk] Fix warnings while generating documentation using gtk-doc.
1197         https://bugs.webkit.org/show_bug.cgi?id=69329
1198
1199         Reviewed by Martin Robinson.
1200
1201         Added documentation for WebKitNetworkError enum and corrected few other
1202         minor issues in WebKit2-GTK+ API documentation.
1203
1204         * UIProcess/API/gtk/WebKitError.h: Added documentation for WebKitNetworkError.
1205         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
1206         (webkit_web_loader_client_class_init): Corrected parameter name.
1207         * UIProcess/API/gtk/WebKitWebView.cpp: Corrected annotation.
1208
1209 2011-10-04  Vsevolod Vlasov  <vsevik@chromium.org>
1210
1211         Web Inspector: Remove http/tests/inspector/network/disabled-cache-crash.html.
1212         https://bugs.webkit.org/show_bug.cgi?id=69332
1213
1214         Reviewed by Pavel Feldman.
1215
1216         * win/WebKit2.def:
1217         * win/WebKit2CFLite.def:
1218
1219 2011-10-03  Anders Carlsson  <andersca@apple.com>
1220
1221         Content area does not return to the correct position after rubberbanding
1222         https://bugs.webkit.org/show_bug.cgi?id=69302
1223         <rdar://problem/10102886>
1224
1225         Reviewed by Sam Weinig.
1226
1227         Make sure to schedule a display after adding to the dirty region.
1228
1229         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1230         (WebKit::DrawingAreaImpl::scroll):
1231
1232 2011-10-03  Anders Carlsson  <andersca@apple.com>
1233
1234         Remove custom scrollbar painting hooks
1235         https://bugs.webkit.org/show_bug.cgi?id=69163
1236
1237         Remove overridden ChromeClient member functions.
1238
1239         Reviewed by Alexey Proskuryakov.
1240
1241         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1242         * WebProcess/WebCoreSupport/WebChromeClient.h:
1243
1244 2011-10-03  Jer Noble  <jer.noble@apple.com>
1245
1246         Unreviewed, rolling out r96526.
1247         http://trac.webkit.org/changeset/96526
1248         https://bugs.webkit.org/show_bug.cgi?id=68587
1249
1250         WEB_AUDIO has numerous 64->32 bit casting warnings, causing
1251         build breakages where -Wall is enabled.
1252
1253         * Configurations/FeatureDefines.xcconfig:
1254
1255 2011-10-03  Jer Noble  <jer.noble@apple.com>
1256
1257         Enable WEB_AUDIO by default in the WebKit/mac port.
1258         https://bugs.webkit.org/show_bug.cgi?id=68587
1259
1260         Reviewed by Simon Fraser.
1261
1262         * Configurations/FeatureDefines.xcconfig:
1263
1264 2011-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1265
1266         [GTK] Add failing uri parameter to provisional-load-failed and load-failed signals
1267         https://bugs.webkit.org/show_bug.cgi?id=69252
1268
1269         Reviewed by Martin Robinson.
1270
1271         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
1272         (didFailProvisionalLoadWithErrorForFrame): Pass failing URL to
1273         signal handler.
1274         (didFailLoadWithErrorForFrame): Ditto.
1275         (webkit_web_loader_client_class_init): Add failing URL parameter
1276         to provisional-load-failed and load-failed signals.
1277         * UIProcess/API/gtk/WebKitWebLoaderClient.h:
1278         * UIProcess/API/gtk/tests/testloading.c:
1279         (loadStatusProvisionalLoadFailed): Update to API changes.
1280         (loadStatusLoadFailed): Ditto.
1281         (loadErrorProvisionalLoadFailed): Ditto.
1282         * UIProcess/API/gtk/webkit2marshal.list:
1283
1284 2011-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1285
1286         [GTK] Fix memory leak when loading url
1287         https://bugs.webkit.org/show_bug.cgi?id=69247
1288
1289         Reviewed by Martin Robinson.
1290
1291         Release URL created with WKURLCreateWithUTF8CString().
1292
1293         * UIProcess/API/gtk/WebKitWebView.cpp:
1294         (webkit_web_view_load_uri):
1295
1296 2011-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1297
1298         [UNIX] Rename NetscapePluginModule::pluginInfo to NetscapePluginModule::getPluginInfoForLoadedPlugin()
1299         https://bugs.webkit.org/show_bug.cgi?id=69147
1300
1301         Reviewed by Martin Robinson.
1302
1303         * Shared/Plugins/Netscape/NetscapePluginModule.h:
1304         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
1305         (WebKit::NetscapePluginModule::getPluginInfoForLoadedPlugin):
1306         (WebKit::NetscapePluginModule::getPluginInfo):
1307
1308 2011-10-03  Zeno Albisser  <zeno.albisser@nokia.com>
1309
1310         [Qt][WebKit2][Mac] WebProcess should exit automatically when UIProcess dies.
1311         https://bugs.webkit.org/show_bug.cgi?id=68439
1312
1313         We use a dispatch queue and a dispatch source in the WebProcess
1314         to receive a notification when the UI Process dies.
1315         The WebProcess then commits suicide.
1316
1317         Reviewed by Andreas Kling.
1318
1319         * WebProcess/qt/WebProcessQt.cpp:
1320         (WebKit::parentProcessDiedCallback):
1321         (WebKit::WebProcess::platformInitializeWebProcess):
1322
1323 2011-10-02  Zeno Albisser  <zeno.albisser@nokia.com>
1324
1325         [Qt][WK2][Mac] WebKit2 does not build on mac after merge of Qt5 refactor branch.
1326         https://bugs.webkit.org/show_bug.cgi?id=69223
1327
1328         After the merge of the Qt5 refactor branch, networking stuff has been
1329         extracted into a separate library. The qmlplugin needs to link to that
1330         library to get QNetworkReply defined.
1331
1332         Reviewed by Noam Rosenthal.
1333
1334         * UIProcess/API/qt/qmlplugin/qmlplugin.pro:
1335
1336 2011-10-01  Geoffrey Garen  <ggaren@apple.com>
1337
1338         Removed redundant helper functions for allocating Strong handles
1339         https://bugs.webkit.org/show_bug.cgi?id=69218
1340
1341         Reviewed by Sam Weinig.
1342
1343         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
1344         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1345
1346 2011-09-30  Sam Weinig  <sam@webkit.org>
1347
1348         Add support for eventSender.mouseScrollBy in WTR
1349         https://bugs.webkit.org/show_bug.cgi?id=69189
1350
1351         Reviewed by Simon Fraser.
1352
1353         * UIProcess/WebPageProxy.cpp:
1354         (WebKit::WebPageProxy::handleWheelEvent):
1355         * WebProcess/WebPage/WebPage.cpp:
1356         (WebKit::WebPage::wheelEventSyncForTesting):
1357         * WebProcess/WebPage/WebPage.h:
1358         * WebProcess/WebPage/WebPage.messages.in:
1359         Add sync version of wheel event handling for use in testing.
1360
1361 2011-09-30  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1362
1363         [Qt] Add missing include for QMimeData
1364         https://bugs.webkit.org/show_bug.cgi?id=69178
1365
1366         Reviewed by Tor Arne Vestbø.
1367
1368         This was implicitly included by other headers, but due to changes in
1369         Qt5 we need to include explicitly.
1370
1371         * UIProcess/qt/QtWebPageProxy.cpp:
1372         * WebProcess/WebPage/WebPage.cpp:
1373
1374 2011-09-30  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1375
1376         [Qt] Prevent qDebug() output from DRT and WTR unless --verbose
1377
1378         For DRT we didn't install the message handler early enough to
1379         catch output while constructing the QApplication. For WTR we
1380         didn't even install a message handler.
1381
1382         Since the UI process will forward any output from the web process
1383         we set an environment variable QT_WEBKIT_SUPPRESS_WEB_PROCESS_OUTPUT
1384         in WTR before the web process is started. This is picked up by the
1385         web process which installs its own message handler.
1386
1387         The environment variable can be overriden on the command line if you
1388         want to see output from the web process, or you can pass --verbose to
1389         WTR to see output from both processes.
1390
1391         https://bugs.webkit.org/show_bug.cgi?id=69132
1392
1393         Reviewed by Andreas Kling.
1394
1395         * WebProcess/qt/WebProcessMainQt.cpp:
1396
1397 2011-09-30  Anders Carlsson  <andersca@apple.com>
1398
1399         Remove didCompleteRubberBandForMainFrame UIClient callback
1400         https://bugs.webkit.org/show_bug.cgi?id=69161
1401
1402         Reviewed by Adam Roben.
1403
1404         * UIProcess/API/C/WKPage.h:
1405         * UIProcess/WebPageProxy.cpp:
1406         * UIProcess/WebPageProxy.h:
1407         * UIProcess/WebPageProxy.messages.in:
1408         * UIProcess/WebUIClient.cpp:
1409         * UIProcess/WebUIClient.h:
1410         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1411         (WebKit::WebChromeClient::didCompleteRubberBandForFrame):
1412
1413 2011-09-30  Qi Zhang  <qi.2.zhang@nokia.com>
1414
1415         WebKitTestRunner needs layoutTestController.setAppCacheMaximumSize
1416         https://bugs.webkit.org/show_bug.cgi?id=42698
1417
1418         Reviewed by Andreas Kling.
1419
1420         Implemented layoutTestController.setAppCacheMaximumSize and layoutTestController.clearApplicationCache,
1421         and call clearApplicationCache when layoutTest start up.
1422
1423         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
1424         (WebKit::WebApplicationCacheManager::setAppCacheMaximumSize):
1425         * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
1426         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1427         (WKBundleClearApplicationCache):
1428         (WKBundleSetAppCacheMaximumSize):
1429         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1430         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1431         (WebKit::InjectedBundle::clearApplicationCache):
1432         (WebKit::InjectedBundle::setAppCacheMaximumSize):
1433         * WebProcess/InjectedBundle/InjectedBundle.h:
1434
1435 2011-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
1436
1437         [UNIX] Add a method to get information for an already loaded plugin module
1438         https://bugs.webkit.org/show_bug.cgi?id=69139
1439
1440         Reviewed by Martin Robinson.
1441
1442         * Shared/Plugins/Netscape/NetscapePluginModule.h: Add pluginInfo().
1443         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
1444         (WebKit::NetscapePluginModule::pluginInfo): Private method to get
1445         the plugin information from the module, it must be called when the
1446         module has been already initialized.
1447         (WebKit::NetscapePluginModule::getPluginInfo): Use pluginInfo() to
1448         get information of the plugin module for the given path.
1449
1450 2011-09-30  Zeno Albisser  <zeno.albisser@nokia.com>
1451
1452         [Qt][WK2] Event delivery in QDesktopWebView is broken after merge of Qt5 refactor
1453         https://bugs.webkit.org/show_bug.cgi?id=69105
1454
1455         This changes QDesktopWebView and QDesktopWebPageProxy to use QMouseEvent instead
1456         of QGraphicsSceneMouseEvent.
1457         Further it removes an endless loop introduced by the QSGItem::event() function
1458         delivering inputMethodEvents but no other events.
1459
1460         Reviewed by Andreas Kling.
1461
1462         * Shared/NativeWebMouseEvent.h:
1463         (WebKit::NativeWebMouseEvent::nativeEvent):
1464         * Shared/NativeWebWheelEvent.h:
1465         (WebKit::NativeWebWheelEvent::nativeEvent):
1466         * Shared/qt/NativeWebMouseEventQt.cpp:
1467         (WebKit::NativeWebMouseEvent::NativeWebMouseEvent):
1468         * Shared/qt/NativeWebWheelEventQt.cpp:
1469         (WebKit::NativeWebWheelEvent::NativeWebWheelEvent):
1470         * Shared/qt/WebEventFactoryQt.cpp:
1471         (WebKit::mouseButtonForEvent):
1472         (WebKit::webEventTypeForEvent):
1473         (WebKit::WebEventFactory::createWebMouseEvent):
1474         (WebKit::WebEventFactory::createWebWheelEvent):
1475         * Shared/qt/WebEventFactoryQt.h:
1476         * UIProcess/API/qt/qdesktopwebview.cpp:
1477         (QDesktopWebView::mousePressEvent):
1478         (QDesktopWebView::mouseMoveEvent):
1479         (QDesktopWebView::mouseReleaseEvent):
1480         (QDesktopWebView::mouseDoubleClickEvent):
1481         (QDesktopWebView::wheelEvent):
1482         (QDesktopWebView::event):
1483         * UIProcess/API/qt/qdesktopwebview.h:
1484         * UIProcess/qt/qdesktopwebpageproxy.cpp:
1485         (QDesktopWebPageProxy::handleEvent):
1486         (QDesktopWebPageProxy::handleMouseMoveEvent):
1487         (QDesktopWebPageProxy::handleMousePressEvent):
1488         (QDesktopWebPageProxy::handleMouseReleaseEvent):
1489         (QDesktopWebPageProxy::handleMouseDoubleClickEvent):
1490         (QDesktopWebPageProxy::handleWheelEvent):
1491         (QDesktopWebPageProxy::handleHoverMoveEvent):
1492         * UIProcess/qt/qdesktopwebpageproxy.h:
1493
1494 2011-09-29  Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com>
1495
1496         Initial implementation of WebInspector for WebKit2 GTK port.
1497         https://bugs.webkit.org/show_bug.cgi?id=68235
1498
1499         Reviewed by Martin Robinson.
1500
1501         * UIProcess/WebInspectorProxy.cpp:
1502         (WebKit::WebInspectorProxy::WebInspectorProxy): Initialize the native window handles of GTK.
1503         * UIProcess/WebInspectorProxy.h: Add native window handle for inspector window.
1504         * UIProcess/gtk/WebInspectorGtk.cpp:
1505         (WebKit::inspectorFilesBasePath): Base folder for inspector resources.
1506         (WebKit::inspectorWindowDestroyed): Invoked when inspector window is closed by user.
1507         (WebKit::WebInspectorProxy::windowDestroyed): Resets the native handles to 0 when user closes the window.
1508         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Create the WebView for inspector.
1509         (WebKit::WebInspectorProxy::platformOpen): Create the window for inspector.
1510         (WebKit::WebInspectorProxy::platformDidClose): Close both WebView & window of inspector.
1511         (WebKit::WebInspectorProxy::platformInspectedURLChanged): Update the title of inspector window.
1512         (WebKit::WebInspectorProxy::inspectorPageURL): Return the absolute URL of inspector.html.
1513         (WebKit::WebInspectorProxy::inspectorBaseURL): Return the location where inspector resources are present.
1514         WebProcess is given read access to this folder only for loading file URLs by sandboxed extension.
1515
1516 2011-09-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1517
1518         [Qt] Fix build against Qt5 after refactor of widgets out of QtGUi
1519
1520         QWidget and friends now live in the QtWidgets library. We update
1521         includes in implementation files and private headers to us the
1522         non-module-prefixed path, and leave the lookup for the include
1523         path. For public headers we have to ifdef the includes as the
1524         user might now have the modules we need in his QT config.
1525
1526         Finally, QSGCanvas is no longer a QWidget but a QWindow, so we
1527         have to update our code and use windowHandle() for setting the
1528         parent relationships.
1529
1530         https://bugs.webkit.org/show_bug.cgi?id=68687
1531
1532         Reviewed by Andreas Kling.
1533
1534         * UIProcess/API/qt/qdesktopwebview.cpp:
1535         * UIProcess/API/qt/qdesktopwebview.h:
1536         * UIProcess/API/qt/tests/tests.pro:
1537         * UIProcess/qt/ViewInterface.h:
1538         * UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:
1539
1540 2011-09-29  Carlos Garcia Campos  <cgarcia@igalia.com>
1541
1542         [GTK] Force single header include in WebKit2 GTK+ API
1543         https://bugs.webkit.org/show_bug.cgi?id=69084
1544
1545         Reviewed by Martin Robinson.
1546
1547         Only <webkit2/webkit2.h> will be allowed for API users.
1548
1549         * GNUmakefile.am:
1550         * UIProcess/API/gtk/WebKitError.h:
1551         * UIProcess/API/gtk/WebKitWebContext.h:
1552         * UIProcess/API/gtk/WebKitWebLoaderClient.h:
1553         * UIProcess/API/gtk/WebKitWebView.h:
1554         * UIProcess/API/gtk/WebKitWebViewBase.h:
1555         * UIProcess/API/gtk/webkit2.h:
1556
1557 2011-09-29  Carlos Garcia Campos  <cgarcia@igalia.com>
1558
1559         [GTK] Explicitly call destructors for objects initialized with placement new syntax
1560         https://bugs.webkit.org/show_bug.cgi?id=69079
1561
1562         Reviewed by Xan Lopez.
1563
1564         * UIProcess/API/gtk/WebKitWebContext.cpp:
1565         (webkitWebContextFinalize): Call ~WebKitWebContextPrivate().
1566         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp:
1567         (webkitWebLoaderClientFinalize): Call ~WebKitWebLoaderClient().
1568         (webkit_web_loader_client_class_init):
1569         * UIProcess/API/gtk/WebKitWebView.cpp:
1570         (webkitWebViewFinalize): Call ~WebKitWebViewPrivate().
1571         (webkit_web_view_class_init):
1572
1573 2011-09-28  Martin Robinson  <mrobinson@igalia.com>
1574
1575         Fix the WebGL build on WebKit2 GTK+.
1576
1577         * GNUmakefile.am: Add OPENGL_LIBS to WebKit2 targets.
1578
1579 2011-09-28  Brent Fulgham  <bfulgham@webkit.org>
1580
1581         WinCairo build fix.
1582
1583         * WebProcess/WebPage/WebFrame.h: Add include of <wtc/RetainPtr.h>
1584
1585 2011-09-28  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1586
1587         One more shot at fixing GTK+, this seems to make the dependencies
1588         work.
1589
1590         * GNUmakefile.am:
1591
1592 2011-09-28  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1593
1594         GTK+ build fix 3 - the return of the marshal.
1595
1596         * GNUmakefile.am:
1597
1598 2011-09-28  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1599
1600         Second try at fixing the GTK+ build.
1601
1602         * GNUmakefile.am:
1603
1604 2011-09-28  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1605
1606         Try to fix GTK+ build.
1607
1608         * GNUmakefile.am:
1609
1610 2011-09-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1611
1612         [GTK] Fix webkit2 unit tests in debug builds
1613         https://bugs.webkit.org/show_bug.cgi?id=69006
1614
1615         Reviewed by Martin Robinson.
1616
1617         We are currently using the WorQueue name as thread name which in
1618         this moment can be com.apple.WebKit.ProcessLauncher or
1619         com.apple.CoreIPC.ReceiveQueue. Both names are longer than 31
1620         characters which is the limit of Visual Studio for thread
1621         names. When log is enabled createThread() will assert instead of
1622         truncate the name, so we need to make sure we don't use a name
1623         longer than 31 characters.
1624
1625         * Platform/gtk/WorkQueueGtk.cpp:
1626         (WorkQueue::platformInitialize):
1627
1628 2011-09-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1629
1630         [GTK] Loader client implementation for WebKit2 GTK+ API
1631         https://bugs.webkit.org/show_bug.cgi?id=68085
1632
1633         Reviewed by Martin Robinson.
1634
1635         Adds a new object, WebKitWebLoaderClient, that emits signals for
1636         every page loader callback.
1637
1638         * GNUmakefile.am: Add new files to compilation.
1639         * UIProcess/API/gtk/WebKitWebLoaderClient.cpp: Added.
1640         (didStartProvisionalLoadForFrame):
1641         (didReceiveServerRedirectForProvisionalLoadForFrame):
1642         (didFailProvisionalLoadWithErrorForFrame):
1643         (didCommitLoadForFrame):
1644         (didFinishLoadForFrame):
1645         (didFailLoadWithErrorForFrame):
1646         (webkitWebLoaderClientConstructed):
1647         (webkitWebLoaderClientSetProperty):
1648         (webkitWebLoaderClientGetProperty):
1649         (webkit_web_loader_client_init):
1650         (webkit_web_loader_client_class_init):
1651         * UIProcess/API/gtk/WebKitWebLoaderClient.h: Added.
1652         * UIProcess/API/gtk/WebKitWebView.cpp:
1653         (webkitWebViewConstructed): Create the loader client for the view.
1654         (webkit_web_view_init):
1655         (webkit_web_view_get_loader_client): Get the current loader client.
1656         (webkit_web_view_set_loader_client): Set a new loader client.
1657         * UIProcess/API/gtk/WebKitWebView.h:
1658         * UIProcess/API/gtk/tests/testloading.c: Added.
1659         (serverCallback):
1660         (webLoadingFixtureSetup):
1661         (webLoadingFixtureTeardown):
1662         (getURIForPath):
1663         (loadStatusProvisionalLoadStarted):
1664         (loadStatusProvisionalLoadReceivedServerRedirect):
1665         (loadStatusProvisionalLoadFailed):
1666         (loadStatusLoadCommitted):
1667         (loadStatusLoadFinished):
1668         (loadStatusLoadFailed):
1669         (testLoadingStatus):
1670         (loadErrorProvisionalLoadStarted):
1671         (loadErrorProvisionalLoadFailed):
1672         (loadErrorLoadFinished):
1673         (testLoadingError):
1674         (main):
1675         * UIProcess/API/gtk/webkit2marshal.list: Added.
1676
1677 2011-09-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1678
1679         [GTK] Add WebKitError to GTK+ WebKit2 API
1680         https://bugs.webkit.org/show_bug.cgi?id=68508
1681
1682         Reviewed by Martin Robinson.
1683
1684         Add WebKitNetworkError enum to define network errors.
1685
1686         * GNUmakefile.am: Add new files to compilation.
1687         * UIProcess/API/gtk/WebKitError.cpp: Added.
1688         (webkit_network_error_quark):
1689         * UIProcess/API/gtk/WebKitError.h:
1690         * UIProcess/API/gtk/WebKitPrivate.h: Add
1691         COMPILE_ASSERT_MATCHING_ENUM macro.
1692         * UIProcess/API/gtk/webkit2.h: Add WebKitError.h and
1693         WebKitEnumTypes.h
1694
1695 2011-09-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1696
1697         [GTK] Fix Programs/unittests/webkit2/testwebview
1698         https://bugs.webkit.org/show_bug.cgi?id=68993
1699
1700         Reviewed by Philippe Normand.
1701
1702         * GNUmakefile.am: Add -DWEBKIT_EXEC_PATH.
1703         * UIProcess/API/gtk/tests/testwebview.c:
1704         (main): Get WebProcess path from WEBKIT_EXEC_PATH environment
1705         variable.
1706
1707 2011-09-27  Mark Hahnenberg  <mhahnenberg@apple.com>
1708
1709         Add static version of JSCell::getCallData
1710         https://bugs.webkit.org/show_bug.cgi?id=68741
1711
1712         Reviewed by Darin Adler.
1713
1714         In this patch we just extract the bodies of the virtual getCallData methods
1715         throughout the JSCell inheritance hierarchy out into static methods, which are 
1716         now called from the virtual methods.  This is an intermediate step in trying to 
1717         move the virtual-ness of getCallData into our own method table stored in 
1718         ClassInfo.  We need to convert the methods to static methods because static methods 
1719         can be represented as function pointers rather than pointers to member functions, and
1720         function pointers are smaller and faster to call than pointers to member functions.
1721
1722         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
1723         (WebKit::JSNPMethod::getCallDataVirtual):
1724         (WebKit::JSNPMethod::getCallData):
1725         * WebProcess/Plugins/Netscape/JSNPMethod.h:
1726         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1727         (WebKit::JSNPObject::getCallDataVirtual):
1728         (WebKit::JSNPObject::getCallData):
1729         * WebProcess/Plugins/Netscape/JSNPObject.h:
1730
1731 2011-09-27  Gopal Raghavan  <gopal.1.raghavan@nokia.com>
1732
1733         [Qt] QDesktopWebView load zero size view test missing
1734         https://bugs.webkit.org/show_bug.cgi?id=68655
1735
1736         Reviewed by Chang Shu.
1737
1738         Added test case to check load behavior with zero size view.
1739
1740         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadZeroSizeView.qml: Added.
1741         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
1742
1743 2011-09-27  Carlos Garcia Campos  <cgarcia@igalia.com>
1744
1745         [GTK] Use WebKitWebContext in WebKitWebView
1746         https://bugs.webkit.org/show_bug.cgi?id=67990
1747
1748         Reviewed by Martin Robinson.
1749
1750         Use webkit_web_context_get_default() instead of
1751         WKContextGetSharedProcessContext() and add API to create a view
1752         with a given web context and to return the current context
1753         associated to the view.
1754
1755         * GNUmakefile.am: Add new files to compilation.
1756         * UIProcess/API/gtk/WebKitPrivate.h: Added.
1757         * UIProcess/API/gtk/WebKitWebContext.cpp:
1758         (webkitWebContextGetWKContext): Private API to get the WKContext
1759         wrapped by the WebKitWebContext.
1760         * UIProcess/API/gtk/WebKitWebContextPrivate.h: Added.
1761         * UIProcess/API/gtk/WebKitWebView.cpp:
1762         (webkitWebViewConstructed): Create the webpage using the web
1763         context of the view.
1764         (webkitWebViewSetProperty):
1765         (webkitWebViewGetProperty):
1766         (webkit_web_view_init):
1767         (webkit_web_view_class_init):
1768         (webkit_web_view_new): Create a new view with the default context.
1769         (webkit_web_view_new_with_context): Create a new view with the
1770         given context.
1771         (webkit_web_view_get_context): Return the context.
1772         * UIProcess/API/gtk/WebKitWebView.h:
1773         * UIProcess/API/gtk/tests/testwebview.c: Added.
1774         (testWebViewDefaultContext):
1775         (main):
1776
1777 2011-09-27  Carlos Garcia Campos  <cgarcia@igalia.com>
1778
1779
1780         [GTK] Add WebKitWebContext to GTK API
1781         https://bugs.webkit.org/show_bug.cgi?id=67931
1782
1783         Reviewed by Philippe Normand.
1784
1785         Initial implementation of WebKitWebContext for WebKit2 GTK API.
1786
1787         * GNUmakefile.am: Add new files to compilation.
1788         * UIProcess/API/gtk/WebKitWebContext.cpp: Added.
1789         (webkitWebContextFinalize):
1790         (webkit_web_context_init):
1791         (webkit_web_context_class_init):
1792         (createDefaultWebContext):
1793         (webkit_web_context_get_default):
1794         * UIProcess/API/gtk/WebKitWebContext.h: Added.
1795         * UIProcess/API/gtk/tests/testwebcontext.c:
1796         (testWebContextDefault):
1797         (main):
1798         * UIProcess/API/gtk/webkit2.h: Add <webkit2/WebKitWebContext.h>.
1799
1800 2011-09-27  Sheriff Bot  <webkit.review.bot@gmail.com>
1801
1802         Unreviewed, rolling out r96108, r96111, r96113, and r96116.
1803         http://trac.webkit.org/changeset/96108
1804         http://trac.webkit.org/changeset/96111
1805         http://trac.webkit.org/changeset/96113
1806         http://trac.webkit.org/changeset/96116
1807         https://bugs.webkit.org/show_bug.cgi?id=68913
1808
1809         Wait for working Qt5 (Requested by ossy on #webkit).
1810
1811         * UIProcess/API/qt/qdesktopwebview.cpp:
1812         (QDesktopWebViewPrivate::startDrag):
1813         (QDesktopWebViewPrivate::didChangeToolTip):
1814         (QDesktopWebViewPrivate::didChangeCursor):
1815         (QDesktopWebViewPrivate::showContextMenu):
1816         (QDesktopWebViewPrivate::chooseFiles):
1817         * UIProcess/API/qt/qdesktopwebview.h:
1818         * UIProcess/API/qt/tests/tests.pri:
1819         * UIProcess/API/qt/tests/tests.pro:
1820         * UIProcess/qt/ViewInterface.h:
1821         * UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:
1822         (WebKit::WebPopupMenuProxyQtDesktop::WebPopupMenuProxyQtDesktop):
1823
1824 2011-09-27  Carlos Garcia Campos  <cgarcia@igalia.com>
1825
1826         [GTK] Rename WebKit2 GTK+ API main header as webkit2.h
1827         https://bugs.webkit.org/show_bug.cgi?id=65178
1828
1829         Reviewed by Martin Robinson.
1830
1831         * GNUmakefile.am: Add webkit2.h.
1832         * UIProcess/API/gtk/WebKitWebView.h:
1833         * UIProcess/API/gtk/webkit2.h: Renamed from Source/WebKit2/UIProcess/API/gtk/webkit/webkit.h.
1834         * webkit2gtk.pc.in: Use webkitgtk-<api-version> as include dir.
1835
1836 2011-09-27  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1837
1838         [Qt] Fix build of WebKit2 unit-tests after r96108
1839
1840         Reviewed by Andreas Kling.
1841
1842         * UIProcess/API/qt/tests/tests.pri:
1843
1844 2011-09-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1845
1846         [Qt] Fix build against Qt5 after refactor of widgets out of QtGUi
1847
1848         QWidget and friends now live in the QtWidgets library. We update
1849         includes in implementation files and private headers to us the
1850         non-module-prefixed path, and leave the lookup for the include
1851         path. For public headers we have to ifdef the includes as the
1852         user might now have the modules we need in his QT config.
1853
1854         Finally, QSGCanvas is no longer a QWidget but a QWindow, so we
1855         have to update our code and use windowHandle() for setting the
1856         parent relationships.
1857
1858         https://bugs.webkit.org/show_bug.cgi?id=68687
1859
1860         Reviewed by Andreas Kling.
1861
1862         * UIProcess/API/qt/qdesktopwebview.cpp:
1863         * UIProcess/API/qt/qdesktopwebview.h:
1864         * UIProcess/API/qt/tests/tests.pro:
1865         * UIProcess/qt/ViewInterface.h:
1866         * UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:
1867
1868 2011-09-26  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1869
1870         [Qt][WK2] Add support for hover API in Qt WebKit2
1871         https://bugs.webkit.org/show_bug.cgi?id=68369
1872
1873         Reviewed by Andreas Kling.
1874
1875         Based on the patch from Igor Oliveira in the same bug.
1876
1877         Expose a linkHovered() signal in QDesktopWebView, that passes the QUrl and the
1878         QString corresponding to the link title. I left textContent out because was
1879         unsure of its use case.
1880
1881         In QDesktopWebView we store the last URL and title emitted to make sure we send
1882         the signal only if either value changes. Tests were added to the QML element to
1883         check: if values are correctly emitted and if we don't emit more signals than
1884         necessary.
1885
1886         * UIProcess/API/qt/qdesktopwebview.cpp:
1887         (QDesktopWebViewPrivate::didMouseMoveOverElement):
1888         * UIProcess/API/qt/qdesktopwebview.h:
1889         * UIProcess/API/qt/qdesktopwebview_p.h:
1890         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_linkHovered.qml: Added.
1891         * UIProcess/API/qt/tests/qmltests/common/test2.html:
1892         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
1893         * UIProcess/qt/ClientImpl.cpp:
1894         (qt_wk_mouseDidMoveOverElement):
1895         * UIProcess/qt/ClientImpl.h:
1896         * UIProcess/qt/QtWebPageProxy.cpp:
1897         (QtWebPageProxy::init):
1898         * UIProcess/qt/TouchViewInterface.h:
1899         (WebKit::TouchViewInterface::didMouseMoveOverElement):
1900         * UIProcess/qt/ViewInterface.h:
1901
1902 2011-09-27  Alexis Menard  <alexis.menard@openbossa.org>
1903
1904         [Qt][WK2] API fixes for QML, the signal parameters needs to be named.
1905         https://bugs.webkit.org/show_bug.cgi?id=68889
1906
1907         Reviewed by Andreas Kling.
1908
1909         Signal parameters needs to be explicitly named in QML to be accessible.
1910         This patch fix this problem.
1911
1912         * UIProcess/API/qt/qdesktopwebview.h:
1913         * UIProcess/API/qt/qtouchwebpage.h:
1914
1915 2011-09-27  Alexis Menard  <alexis.menard@openbossa.org>
1916
1917         [Qt][WK2] Mark FINAL properties which can't be overridden by a subclass.
1918         https://bugs.webkit.org/show_bug.cgi?id=68848
1919
1920         Reviewed by Andreas Kling.
1921
1922         The presence of the FINAL attribute indicates that the property will not be 
1923         overridden by a derived class. This can be used for performance optimizations
1924         by QML.
1925
1926         * UIProcess/API/qt/qdesktopwebview.h:
1927         * UIProcess/API/qt/qtouchwebpage.h:
1928         * UIProcess/API/qt/qtouchwebview.h:
1929         * UIProcess/API/qt/qwebnavigationcontroller.h:
1930
1931 2011-09-26  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1932
1933         [Qt] Fix WK2 build after r96014
1934         https://bugs.webkit.org/show_bug.cgi?id=68856
1935
1936         Reviewed by Gustavo Noronha Silva.
1937
1938         Commit r96014 added inspectorBaseURL for Qt but removed
1939         inspectorPageURL, adding it back.
1940
1941         * UIProcess/qt/WebInspectorProxyQt.cpp:
1942         (WebKit::WebInspectorProxy::inspectorPageURL):
1943
1944 2011-09-26  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1945
1946         [Qt] [WK2] Fix build after r95982
1947         https://bugs.webkit.org/show_bug.cgi?id=68842
1948
1949         Reviewed by Anders Carlsson.
1950
1951         The patch in r95982 removed the paint() function, because it was doing
1952         nothing (in both implementations). This patch remove the call we had
1953         for it to fix the build.
1954
1955         * UIProcess/qt/qtouchwebpageproxy.cpp:
1956         (QTouchWebPageProxy::paintContent):
1957
1958 2011-09-26  Alexey Proskuryakov  <ap@apple.com>
1959
1960         REGRESSION (r95747): Activating the web inspector causes the web process to be killed
1961         https://bugs.webkit.org/show_bug.cgi?id=68762
1962
1963         Reviewed by Anders Carlsson.
1964
1965         * UIProcess/WebInspectorProxy.cpp: (WebKit::WebInspectorProxy::createInspectorPage):
1966         Tell Web process that loading resources from WebCore resources directory is OK.
1967
1968         * UIProcess/WebPageProxy.cpp:
1969         (WebKit::WebPageProxy::loadHTMLString):
1970         (WebKit::WebPageProxy::loadAlternateHTMLString):
1971         * UIProcess/WebProcessProxy.cpp:
1972         (WebKit::WebProcessProxy::assumeReadAccessToBaseURL):
1973         * UIProcess/WebProcessProxy.h:
1974         Renamed willLoadHTMLStringWithBaseURL to more generic assumeReadAccessToBaseURL.
1975
1976         * UIProcess/WebInspectorProxy.h:
1977         * UIProcess/efl/WebInspectorEfl.cpp:
1978         (WebKit::WebInspectorProxy::inspectorBaseURL):
1979         * UIProcess/gtk/WebInspectorGtk.cpp:
1980         (WebKit::WebInspectorProxy::inspectorBaseURL):
1981         * UIProcess/mac/WebInspectorProxyMac.mm:
1982         (WebKit::WebInspectorProxy::inspectorBaseURL):
1983         * UIProcess/qt/WebInspectorProxyQt.cpp:
1984         (WebKit::WebInspectorProxy::inspectorBaseURL):
1985         * UIProcess/win/WebInspectorProxyWin.cpp:
1986         (WebKit::WebInspectorProxy::inspectorBaseURL):
1987         Report what base directory Inspector has access to.
1988
1989 2011-09-26  Nayan Kumar K  <nayankk@motorola.com>
1990
1991         Added WKHitTestResult API's.
1992
1993         WKHitTestResult API's are added. These API's can be used to
1994         get the hover'ed link/image/media URL as well as link lable and
1995         title.
1996         https://bugs.webkit.org/show_bug.cgi?id=68426
1997
1998         Reviewed by Anders Carlsson.
1999
2000         * CMakeLists.txt:
2001         * GNUmakefile.am:
2002         * UIProcess/API/C/WKHitTestResult.cpp: Added.
2003         (WKHitTestResultGetTypeID):
2004         (WKHitTestResultCopyAbsoluteImageURL):
2005         (WKHitTestResultCopyAbsoluteLinkURL):
2006         (WKHitTestResultCopyAbsoluteMediaURL):
2007         (WKHitTestResultCopyLinkLabel):
2008         (WKHitTestResultCopyLinkTitle):
2009         * UIProcess/API/C/WKHitTestResult.h: Added.
2010         * UIProcess/API/C/WebKit2.h:
2011         * WebKit2.xcodeproj/project.pbxproj:
2012         * WebKit2API.pri:
2013         * win/WebKit2.vcproj:
2014         * win/WebKit2Generated.make:
2015
2016 2011-09-26  Csaba Osztrogonác  <ossy@webkit.org>
2017
2018         [Qt][WK2]Unreviewed speculative buildfix after r95968.
2019
2020         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2021         (WebKit::WebChromeClient::contentsSizeChanged):
2022
2023 2011-09-26  Anders Carlsson  <andersca@apple.com>
2024
2025         Remove an old DrawingAreaProxy::paint member function
2026         https://bugs.webkit.org/show_bug.cgi?id=68825
2027
2028         Reviewed by Dan Bernstein.
2029
2030         * UIProcess/DrawingAreaProxy.h:
2031         * UIProcess/DrawingAreaProxyImpl.cpp:
2032         * UIProcess/DrawingAreaProxyImpl.h:
2033         * UIProcess/TiledDrawingAreaProxy.cpp:
2034         * UIProcess/TiledDrawingAreaProxy.h:
2035
2036 2011-09-26  Jer Noble  <jer.noble@apple.com>
2037
2038         White flash when entering full-screen using element.webkitRequestFullScreen()
2039         https://bugs.webkit.org/show_bug.cgi?id=68481
2040
2041         Reviewed by Simon Fraser.
2042
2043         Do not re-enable screen updates after exiting compositing mode until a repaint has completed.
2044
2045         * UIProcess/mac/WKFullScreenWindowController.mm:
2046         (-[WKFullScreenWindowController exitAcceleratedCompositingMode]):
2047         (continueExitCompositingModeAfterRepaintCallback):
2048         (-[WKFullScreenWindowController _continueExitCompositingModeAfterRepaint]):
2049
2050 2011-09-23  Simon Fraser  <simon.fraser@apple.com>
2051
2052         Repaint tests don't work in WebKit2
2053         https://bugs.webkit.org/show_bug.cgi?id=68453
2054
2055         Reviewed by Sam Weinig.
2056         
2057         Expose WKBundlePage methods to turn on repaint rect tracking
2058         in WebKit2, for WebKitTestRunner.
2059         
2060         As part of the change, expose utility methods on WebPage
2061         to get the main Frame and FrameView, which required renaming
2062         the exisiting method that returns a WebFrame. Fix callers
2063         of that method to handle null when necessary.
2064
2065         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2066         (WKBundlePageGetMainFrame):
2067         (WKBundlePageSetTracksRepaints):
2068         (WKBundlePageIsTrackingRepaints):
2069         (WKBundlePageResetTrackedRepaints):
2070         (WKBundlePageCopyTrackedRepaintRects):
2071         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
2072         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2073         (WebKit::findLargestFrameInFrameSet):
2074         (WebKit::WebChromeClient::closeWindowSoon):
2075         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2076         (WebKit::WebFrameLoaderClient::dispatchDidFirstLayout):
2077         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
2078         (WebKit::WebFrameLoaderClient::frameLoadCompleted):
2079         (WebKit::WebFrameLoaderClient::restoreViewState):
2080         (WebKit::WebFrameLoaderClient::provisionalLoadStarted):
2081         (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
2082         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
2083         (WebKit::WebFrameLoaderClient::createPlugin):
2084         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
2085         (WebKit::WebEditorClient::documentFragmentFromAttributedString):
2086         * WebProcess/WebPage/WebFrame.cpp:
2087         (WebKit::WebFrame::isMainFrame):
2088         * WebProcess/WebPage/WebPage.cpp:
2089         (WebKit::WebPage::setTracksRepaints):
2090         (WebKit::WebPage::isTrackingRepaints):
2091         (WebKit::WebPage::resetTrackedRepaints):
2092         (WebKit::WebPage::trackedRepaintRects):
2093         (WebKit::WebPage::clearMainFrameName):
2094         (WebKit::WebPage::layoutIfNeeded):
2095         (WebKit::WebPage::mainFrameHasCustomRepresentation):
2096         (WebKit::WebPage::mainFrame):
2097         (WebKit::WebPage::mainFrameView):
2098         * WebProcess/WebPage/WebPage.h:
2099         (WebKit::WebPage::mainWebFrame):
2100         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
2101         (-[WKAccessibilityWebPageObject accessibilityHitTest:]):
2102
2103 2011-09-25  Mark Hahnenberg  <mhahnenberg@apple.com>
2104
2105         Add custom vtable struct to ClassInfo struct
2106         https://bugs.webkit.org/show_bug.cgi?id=68567
2107
2108         Reviewed by Oliver Hunt.
2109
2110         Added CREATE_METHOD_TABLE macro to generate the custom vtable for the 
2111         specified class in its ClassInfo.  Also added to it the first function to use 
2112         this macro, visitChildren.  This is part of the process of getting rid of all 
2113         C++ virtual methods in JSCell.  Eventually all virtual functions in JSCell 
2114         that can't easily be converted to non-virtual functions will be put into 
2115         this custom vtable structure.
2116
2117         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
2118         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2119
2120 2011-09-25  Adam Barth  <abarth@webkit.org>
2121
2122         Finish removing PLATFORM(BREWMP) by removing associated code
2123         https://bugs.webkit.org/show_bug.cgi?id=68779
2124
2125         Reviewed by Sam Weinig.
2126
2127         * Scripts/generate-forwarding-headers.pl:
2128
2129 2011-09-25  Adam Barth  <abarth@webkit.org>
2130
2131         Remove PLATFORM(HAIKU) and associated code
2132         https://bugs.webkit.org/show_bug.cgi?id=68774
2133
2134         Reviewed by Sam Weinig.
2135
2136         * Scripts/generate-forwarding-headers.pl:
2137
2138 2011-09-24  Adam Barth  <abarth@webkit.org>
2139
2140         Always enable ENABLE(OFFLINE_WEB_APPLICATIONS)
2141         https://bugs.webkit.org/show_bug.cgi?id=68767
2142
2143         Reviewed by Eric Seidel.
2144
2145         * Configurations/FeatureDefines.xcconfig:
2146         * UIProcess/qt/WebContextQt.cpp:
2147         (WebKit::WebContext::applicationCacheDirectory):
2148         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
2149         (WebKit::WebApplicationCacheManager::getApplicationCacheOrigins):
2150         (WebKit::WebApplicationCacheManager::deleteEntriesForOrigin):
2151         (WebKit::WebApplicationCacheManager::deleteAllEntries):
2152         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2153         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
2154         * WebProcess/WebCoreSupport/WebChromeClient.h:
2155         * WebProcess/WebProcess.cpp:
2156         (WebKit::WebProcess::initializeWebProcess):
2157         (WebKit::WebProcess::clearApplicationCache):
2158         * WebProcess/WebProcess.h:
2159
2160 2011-09-23  Adam Klein  <adamk@chromium.org>
2161
2162         Add ENABLE_MUTATION_OBSERVERS feature flag
2163         https://bugs.webkit.org/show_bug.cgi?id=68732
2164
2165         Reviewed by Ojan Vafai.
2166
2167         This flag will guard an implementation of the "Mutation Observers" proposed in
2168         http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html
2169
2170         * Configurations/FeatureDefines.xcconfig:
2171
2172 2011-09-23  Varun Jain  <varunjain@google.com>
2173
2174         Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests 
2175         https://bugs.webkit.org/show_bug.cgi?id=68198
2176
2177         Reviewed by Dimitri Glazkov.
2178
2179         * win/WebKit2.def:
2180         * win/WebKit2CFLite.def:
2181
2182 2011-09-23  Chang Shu  <cshu@webkit.org>
2183
2184         [WK2] [Qt] Implement MouseDown/MouseUp/MouseMoveTo functions for WebKit2 EventSender
2185         https://bugs.webkit.org/show_bug.cgi?id=68556
2186
2187         Implement the MouseDown/MouseUp/MouseMoveTo functions on Qt platform.
2188
2189         Reviewed by Darin Adler.
2190
2191         * Shared/API/c/WKGeometry.h:
2192         (operator==):
2193         * WebProcess/WebPage/WebPage.cpp:
2194         (WebKit::WebPage::mouseEventSyncForTesting): initialize "handled"
2195
2196 2011-09-23  Anders Carlsson  <andersca@apple.com>
2197
2198         Move WebHitTestResult files to Shared/ in the Xcode project
2199         https://bugs.webkit.org/show_bug.cgi?id=68718
2200
2201         Reviewed by Sam Weinig.
2202
2203         * WebKit2.xcodeproj/project.pbxproj:
2204
2205 2011-09-23  Anders Carlsson  <andersca@apple.com>
2206
2207         Add OVERRIDE to overrides of virtual member functions in client classes
2208         https://bugs.webkit.org/show_bug.cgi?id=68702
2209
2210         Reviewed by Darin Adler.
2211
2212         Disable the warning in Xcode and VS2005 for using override and final when compiling as C++98,
2213         and remove WebEditorClient::isEditable, WebChromeClient::formDidFocus,
2214         WebChromeClient::formDidBlur and WebFrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest since
2215         they have been removed from their respective base classes.
2216         
2217         * Configurations/Base.xcconfig:
2218         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2219         * WebProcess/WebCoreSupport/WebChromeClient.h:
2220         * WebProcess/WebCoreSupport/WebContextMenuClient.h:
2221         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
2222         * WebProcess/WebCoreSupport/WebDragClient.h:
2223         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2224         * WebProcess/WebCoreSupport/WebEditorClient.h:
2225         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2226         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2227         * WebProcess/WebCoreSupport/WebGeolocationClient.h:
2228         * WebProcess/WebCoreSupport/WebInspectorClient.h:
2229         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
2230         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2231         * WebProcess/WebCoreSupport/WebPopupMenu.h:
2232         * WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
2233         * win/WebKit2Common.vsprops:
2234
2235 2011-09-23  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2236
2237         [Qt][WK2] QtFileDownloader ctor shouldn't call QtFileDownloader::onReadyRead()
2238         https://bugs.webkit.org/show_bug.cgi?id=68696
2239
2240         Reviewed by Andreas Kling.
2241
2242         Instead of connecting signals and calling QtFileDownloader::onReadyRead()
2243         on its constructor, QtFileDownloader will now handle this in start().
2244
2245         * WebProcess/Downloads/qt/DownloadQt.cpp:
2246         (WebKit::Download::start):
2247         * WebProcess/Downloads/qt/QtFileDownloader.cpp:
2248         (WebKit::QtFileDownloader::QtFileDownloader):
2249         (WebKit::QtFileDownloader::start):
2250         * WebProcess/Downloads/qt/QtFileDownloader.h:
2251
2252 2011-09-22  Gopal Raghavan  <gopal.1.raghavan@nokia.com>
2253
2254         [Qt] TouchWebView load test not running
2255         https://bugs.webkit.org/show_bug.cgi?id=68620
2256
2257         Reviewed by Chang Shu.
2258
2259         Load test was not executed since it was missing in pro file. Added tst_load.qml to qmltests.pro
2260
2261         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2262
2263 2011-09-22  Dean Jackson  <dino@apple.com>
2264
2265         Add ENABLE_CSS_FILTERS
2266         https://bugs.webkit.org/show_bug.cgi?id=68652
2267
2268         Reviewed by Simon Fraser.
2269
2270         * Configurations/FeatureDefines.xcconfig:
2271
2272 2011-09-22  Simon Fraser  <simon.fraser@apple.com>
2273
2274         Add APIObjects for Size, Point, Rect
2275         https://bugs.webkit.org/show_bug.cgi?id=68644
2276
2277         Reviewed by Sam Weinig.
2278         
2279         Make APIObjects for size, point and rect so that they can be
2280         used in WKArrayRefs.
2281         
2282         Make some inline helper methods to create WKSize, WKPoint and WKRect
2283         types.
2284
2285         * GNUmakefile.am:
2286         * Shared/API/c/WKBase.h:
2287         * Shared/API/c/WKGeometry.cpp: Copied from Source/WebKit2/Shared/API/c/WKGeometry.h.
2288         (WKSizeGetTypeID):
2289         (WKPointGetTypeID):
2290         (WKRectGetTypeID):
2291         (WKPointCreate):
2292         (WKSizeCreate):
2293         (WKRectCreate):
2294         (WKSizeGetValue):
2295         (WKPointGetValue):
2296         (WKRectGetValue):
2297         * Shared/API/c/WKGeometry.h:
2298         (WKPoint::WKPointMake):
2299         (WKPoint::WKSizeMake):
2300         (WKPoint::WKRectMake):
2301         * Shared/API/c/WKSharedAPICast.h:
2302         * Shared/APIObject.h:
2303         * Shared/UserMessageCoders.h:
2304         (WebKit::UserMessageEncoder::baseEncode):
2305         (WebKit::UserMessageDecoder::baseDecode):
2306         * Shared/WebGeometry.h: Added.
2307         (WebKit::WebSize::create):
2308         (WebKit::WebSize::size):
2309         (WebKit::WebSize::WebSize):
2310         (WebKit::WebSize::type):
2311         (WebKit::WebPoint::create):
2312         (WebKit::WebPoint::point):
2313         (WebKit::WebPoint::WebPoint):
2314         (WebKit::WebPoint::type):
2315         (WebKit::WebRect::create):
2316         (WebKit::WebRect::rect):
2317         (WebKit::WebRect::WebRect):
2318         (WebKit::WebRect::type):
2319         * WebKit2.pro:
2320         * WebKit2.xcodeproj/project.pbxproj:
2321         * WebKit2API.pri:
2322         * win/WebKit2.vcproj:
2323
2324 2011-09-22  Alexey Proskuryakov  <ap@apple.com>
2325
2326         [WK2] UIProcess should check that WebProcess isn't sending unexpected file: URLs to it
2327         https://bugs.webkit.org/show_bug.cgi?id=68573
2328
2329         Reviewed by Anders Carlsson.
2330
2331         Re-landing with a slightly less aggressive check.
2332
2333         * UIProcess/API/mac/WKView.mm:
2334         (maybeCreateSandboxExtensionFromPasteboard): Return a boolean, telling the caller whether
2335         an extension actually needed to be created
2336         (-[WKView performDragOperation:]): Tell process proxy when the process is going to get
2337         universal file read sandbox extension.
2338
2339         * UIProcess/WebContext.cpp:
2340         (WebKit::WebContext::didPerformClientRedirect): Check the URLs.
2341         (WebKit::WebContext::didPerformServerRedirect): Ditto.
2342         (WebKit::WebContext::didUpdateHistoryTitle): Ditto.
2343         (WebKit::WebContext::getPluginPath): Ditto. Also, properly parse the URL - we can never
2344         assume that a string coming from WebProcess is a ParsedURLString.
2345
2346         * UIProcess/WebPageProxy.cpp:
2347         (WebKit::WebPageProxy::reattachToWebProcessWithItem): Tell process proxy when the process
2348         is going to get universal file read sandbox extension.
2349         (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle): Changed to return a boolean,
2350         telling the caller whether an extension actually needed to be created.
2351         (WebKit::WebPageProxy::loadURL): Tell process proxy about extension.
2352         (WebKit::WebPageProxy::loadURLRequest): Ditto.
2353         (WebKit::WebPageProxy::loadHTMLString): Tell process proxy if a file URL was used as a base
2354         one for a string. In this case, WebKit2 assumes that WebProcess has access to a subdirectory,
2355         (typically, one where error page resources live), and can load from it.
2356         (WebKit::WebPageProxy::loadAlternateHTMLString): Ditto.
2357         (WebKit::WebPageProxy::goForward): Tell process proxy about extension.
2358         (WebKit::WebPageProxy::goBack): Tell process proxy about extension.
2359         (WebKit::WebPageProxy::goToBackForwardItem): Tell process proxy about extension.
2360         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame): Check the URL.
2361         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame): Ditto.
2362         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame): Ditto.
2363         (WebKit::WebPageProxy::decidePolicyForNavigationAction): Ditto.
2364         (WebKit::WebPageProxy::decidePolicyForNewWindowAction): Ditto.
2365         (WebKit::WebPageProxy::decidePolicyForResponse): Ditto.
2366         (WebKit::WebPageProxy::didInitiateLoadForResource): Ditto.
2367         (WebKit::WebPageProxy::didSendRequestForResource): Ditto.
2368         (WebKit::WebPageProxy::didReceiveResponseForResource): Ditto.
2369         (WebKit::WebPageProxy::missingPluginButtonClicked): Ditto.
2370
2371         * UIProcess/WebPageProxy.h: Changed initializeSandboxExtensionHandle() to return a bool,
2372         and renamed to maybeInitializeSandboxExtensionHandle (matching WKView counterpart).
2373
2374         * UIProcess/WebProcessProxy.cpp:
2375         (WebKit::WebProcessProxy::WebProcessProxy): Initialize m_mayHaveUniversalFileReadSandboxExtension.
2376         It's going to be true if we ever granted an extension for "/".
2377         (WebKit::WebProcessProxy::willLoadHTMLStringWithBaseURL): Remember the path, we should expect
2378         that WebProcess will load subresources from it.
2379         (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess): Check that it's reasonable to expect
2380         WebProcess send us a URL like this.
2381         (WebKit::WebProcessProxy::addBackForwardItem): Check the URLs.
2382
2383         * UIProcess/WebProcessProxy.h: Added data members remembering what to expect from this process.
2384
2385         * UIProcess/cf/WebPageProxyCF.cpp: (WebKit::WebPageProxy::restoreFromSessionStateData):
2386         Tell process proxy when the process is going to get universal file read sandbox extension.
2387
2388 2011-09-22  Alpha Lam  <hclam@chromium.org>
2389
2390         https://bugs.webkit.org/show_bug.cgi?id=68081
2391         Fix scroll in page scaling mode.
2392
2393         Reviewed by Simon Fraser.
2394
2395         * WebProcess/Plugins/PluginView.cpp: Rename pageScaleFactor to frameScaleFactor.
2396         (WebKit::PluginView::handleEvent):
2397         (WebKit::PluginView::viewGeometryDidChange):
2398         (WebKit::PluginView::clipRectInWindowCoordinates):
2399
2400 2011-09-22  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2401
2402         [Qt] Redirection overflow errors have wrong error domain
2403         https://bugs.webkit.org/show_bug.cgi?id=68612
2404
2405         Reviewed by Andreas Kling.
2406
2407         Redirection overflow currently puts the URL hostname in the errorDomain field
2408         and therefore are treated as a QWebError::EngineError. From now on they
2409         will be treated as QWebError::HttpError, since their error domain was modified
2410         to "HTTP" in QNetworkReplyHandler::redirect().
2411
2412         * UIProcess/API/qt/qweberror.cpp:
2413         (QWebError::type):
2414
2415 2011-09-22  Csaba Osztrogonác  <ossy@webkit.org>
2416
2417         REGRESSION(r95679): It broke everything.
2418         https://bugs.webkit.org/show_bug.cgi?id=68611
2419
2420         Unreviewed rolling out r95679 and r95690, because it broke everything.
2421
2422         * UIProcess/API/mac/WKView.mm:
2423         (maybeCreateSandboxExtensionFromPasteboard):
2424         (-[WKView performDragOperation:]):
2425         * UIProcess/WebContext.cpp:
2426         (WebKit::WebContext::didPerformClientRedirect):
2427         (WebKit::WebContext::didPerformServerRedirect):
2428         (WebKit::WebContext::didUpdateHistoryTitle):
2429         (WebKit::WebContext::getPluginPath):
2430         * UIProcess/WebPageProxy.cpp:
2431         (WebKit::WebPageProxy::reattachToWebProcessWithItem):
2432         (WebKit::WebPageProxy::initializeSandboxExtensionHandle):
2433         (WebKit::WebPageProxy::loadURL):
2434         (WebKit::WebPageProxy::loadURLRequest):
2435         (WebKit::WebPageProxy::loadHTMLString):
2436         (WebKit::WebPageProxy::loadAlternateHTMLString):
2437         (WebKit::WebPageProxy::goForward):
2438         (WebKit::WebPageProxy::goBack):
2439         (WebKit::WebPageProxy::goToBackForwardItem):
2440         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
2441         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
2442         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
2443         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
2444         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
2445         (WebKit::WebPageProxy::decidePolicyForResponse):
2446         (WebKit::WebPageProxy::didInitiateLoadForResource):
2447         (WebKit::WebPageProxy::didSendRequestForResource):
2448         (WebKit::WebPageProxy::didReceiveResponseForResource):
2449         (WebKit::WebPageProxy::missingPluginButtonClicked):
2450         * UIProcess/WebPageProxy.h:
2451         * UIProcess/WebProcessProxy.cpp:
2452         (WebKit::WebProcessProxy::WebProcessProxy):
2453         (WebKit::WebProcessProxy::addBackForwardItem):
2454         * UIProcess/WebProcessProxy.h:
2455         * UIProcess/cf/WebPageProxyCF.cpp:
2456         (WebKit::WebPageProxy::restoreFromSessionStateData):
2457
2458 2011-09-21  Alexey Proskuryakov  <ap@apple.com>
2459
2460         [WK2] UIProcess should check that WebProcess isn't sending unexpected file: URLs to it
2461         https://bugs.webkit.org/show_bug.cgi?id=68573
2462
2463         Unreviewed follow-up fix.
2464
2465         * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
2466         Just like we allow null URLs, also allow empty strings.
2467
2468 2011-09-21  Julien Chaffraix  <jchaffraix@webkit.org>
2469
2470         Crash in RenderBox::paintMaskImages when GraphicsContext's painting is disabled
2471         https://bugs.webkit.org/show_bug.cgi?id=68133
2472
2473         Reviewed by Darin Adler.
2474
2475         * win/WebKit2.def:
2476         * win/WebKit2CFLite.def:
2477         Exported the new FrameView::paintControlTints function.
2478
2479 2011-09-21  Alexey Proskuryakov  <ap@apple.com>
2480
2481         [WK2] UIProcess should check that WebProcess isn't sending unexpected file: URLs to it
2482         https://bugs.webkit.org/show_bug.cgi?id=68573
2483
2484         Reviewed by Anders Carlsson.
2485
2486         * UIProcess/API/mac/WKView.mm:
2487         (maybeCreateSandboxExtensionFromPasteboard): Return a boolean, telling the caller whether
2488         an extension actually needed to be created
2489         (-[WKView performDragOperation:]): Tell process proxy when the process is going to get
2490         universal file read sandbox extension.
2491
2492         * UIProcess/WebContext.cpp:
2493         (WebKit::WebContext::didPerformClientRedirect): Check the URLs.
2494         (WebKit::WebContext::didPerformServerRedirect): Ditto.
2495         (WebKit::WebContext::didUpdateHistoryTitle): Ditto.
2496         (WebKit::WebContext::getPluginPath): Ditto. Also, properly parse the URL - we can never
2497         assume that a string coming from WebProcess is a ParsedURLString.
2498
2499         * UIProcess/WebPageProxy.cpp:
2500         (WebKit::WebPageProxy::reattachToWebProcessWithItem): Tell process proxy when the process
2501         is going to get universal file read sandbox extension.
2502         (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle): Changed to return a boolean,
2503         telling the caller whether an extension actually needed to be created.
2504         (WebKit::WebPageProxy::loadURL): Tell process proxy about extension.
2505         (WebKit::WebPageProxy::loadURLRequest): Ditto.
2506         (WebKit::WebPageProxy::loadHTMLString): Tell process proxy if a file URL was used as a base
2507         one for a string. In this case, WebKit2 assumes that WebProcess has access to a subdirectory,
2508         (typically, one where error page resources live), and can load from it.
2509         (WebKit::WebPageProxy::loadAlternateHTMLString): Ditto.
2510         (WebKit::WebPageProxy::goForward): Tell process proxy about extension.
2511         (WebKit::WebPageProxy::goBack): Tell process proxy about extension.
2512         (WebKit::WebPageProxy::goToBackForwardItem): Tell process proxy about extension.
2513         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame): Check the URL.
2514         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame): Ditto.
2515         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame): Ditto.
2516         (WebKit::WebPageProxy::decidePolicyForNavigationAction): Ditto.
2517         (WebKit::WebPageProxy::decidePolicyForNewWindowAction): Ditto.
2518         (WebKit::WebPageProxy::decidePolicyForResponse): Ditto.
2519         (WebKit::WebPageProxy::didInitiateLoadForResource): Ditto.
2520         (WebKit::WebPageProxy::didSendRequestForResource): Ditto.
2521         (WebKit::WebPageProxy::didReceiveResponseForResource): Ditto.
2522         (WebKit::WebPageProxy::missingPluginButtonClicked): Ditto.
2523
2524         * UIProcess/WebPageProxy.h: Changed initializeSandboxExtensionHandle() to return a bool,
2525         and renamed to maybeInitializeSandboxExtensionHandle (matching WKView counterpart).
2526
2527         * UIProcess/WebProcessProxy.cpp:
2528         (WebKit::WebProcessProxy::WebProcessProxy): Initialize m_mayHaveUniversalFileReadSandboxExtension.
2529         It's going to be true if we ever granted an extension for "/".
2530         (WebKit::WebProcessProxy::willLoadHTMLStringWithBaseURL): Remember the path, we should expect
2531         that WebProcess will load subresources from it.
2532         (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess): Check that it's reasonable to expect
2533         WebProcess send us a URL like this.
2534         (WebKit::WebProcessProxy::addBackForwardItem): Check the URLs.
2535
2536         * UIProcess/WebProcessProxy.h: Added data members remembering what to expect from this process.
2537
2538         * UIProcess/cf/WebPageProxyCF.cpp: (WebKit::WebPageProxy::restoreFromSessionStateData):
2539         Tell process proxy when the process is going to get universal file read sandbox extension.
2540
2541 2011-09-19  Jer Noble  <jer.noble@apple.com>
2542
2543         Add settings to control the availability of the Web Audio API to WebKit and WebKit2.
2544         https://bugs.webkit.org/show_bug.cgi?id=68382
2545
2546         Add support for the webAudioEnabled preference in WebKit2.
2547
2548         Reviewed by Darin Adler.
2549
2550         * Shared/WebPreferencesStore.h: Add WebAudioEnabled getter and setter macro.
2551         * UIProcess/API/C/WKPreferences.cpp:
2552         (WKPreferencesSetWebAudioEnabled): Added.
2553         (WKPreferencesGetWebAudioEnabled): Added.
2554         * UIProcess/API/C/WKPreferences.h:
2555         * WebProcess/WebPage/WebPage.cpp:
2556         (WebKit::WebPage::updatePreferences): Update the webAudioEnabled preference.
2557
2558 2011-09-21  Dan Bernstein  <mitz@apple.com>
2559
2560         Use the prefix "WK" instead of "Web" for Objective-C classes defined in WebKit2.
2561
2562         Reviewed by Anders Carlsson.
2563
2564         Renamed WebInspectorProxyObjCAdapter to WKWebInspectorProxyObjCAdapter.
2565         Renamed WebInspectorWKView to WKWebInspectorWKView.
2566         Renamed WebFindIndicatorWindowAnimation to WKFindIndicatorWindowAnimation.
2567         Renamed WebFindIndicatorView to WKFindIndicatorView.
2568         Renamed WebUserDataWrapper to WKUserDataWrapper.
2569
2570         Updated the build phase checking for inappropriate Objective-C class names to disallow the prefix
2571         "Web" and only allow "WK".
2572
2573         * UIProcess/API/mac/FindIndicatorWindow.h:
2574         * UIProcess/API/mac/FindIndicatorWindow.mm:
2575         (WebKit::FindIndicatorWindow::setFindIndicator):
2576         (WebKit::FindIndicatorWindow::startFadeOutTimerFired):
2577         * UIProcess/WebInspectorProxy.h:
2578         * UIProcess/mac/WebContextMenuProxyMac.mm:
2579         (-[WKMenuTarget forwardContextMenuAction:]):
2580         (WebKit::nsMenuItemVector):
2581         * UIProcess/mac/WebInspectorProxyMac.mm:
2582         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2583         (WebKit::WebInspectorProxy::platformOpen):
2584         * WebKit2.xcodeproj/project.pbxproj:
2585         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:
2586         (WebKit::WebFullScreenManagerMac::WebFullScreenManagerMac):
2587
2588 2011-09-21  Chang Shu  <cshu@webkit.org>
2589
2590         [WK2] [Mac] Implement a more-complete MouseDown/MouseUp/MouseMoveTo functions for WebKit2 EventSender
2591         https://bugs.webkit.org/show_bug.cgi?id=68108
2592
2593         This patch implements the event sender mouse events through WebKit2 UIProcess which is
2594         closer to the real simulation than a WebProcess-only approach. The patch only supports Mac
2595         platform as the first step so the existing code is still kept for other platforms.
2596
2597         Reviewed by Darin Adler.
2598
2599         * UIProcess/API/C/WKPage.cpp:
2600         (WKPageSetShouldSendEventsSynchronously):
2601         * UIProcess/API/C/WKPagePrivate.h:
2602         * UIProcess/WebPageProxy.cpp:
2603         (WebKit::WebPageProxy::WebPageProxy):
2604         (WebKit::WebPageProxy::handleMouseEvent):
2605         (WebKit::WebPageProxy::handleKeyboardEvent):
2606         * UIProcess/WebPageProxy.h:
2607         (WebKit::WebPageProxy::setShouldSendEventsSynchronously):
2608         * WebProcess/WebPage/WebPage.cpp:
2609         (WebKit::WebPage::mouseEventSyncForTesting):
2610         * WebProcess/WebPage/WebPage.h:
2611         * WebProcess/WebPage/WebPage.messages.in:
2612
2613 2011-09-21  Dan Bernstein  <mitz@apple.com>
2614
2615         WebKit2 part of: Prevent the WebKit frameworks from defining inappropriately-named Objective-C classes
2616         https://bugs.webkit.org/show_bug.cgi?id=68451
2617
2618         Reviewed by Darin Adler.
2619
2620         * WebKit2.xcodeproj/project.pbxproj: Added a script build phase that invokes
2621         check-for-inappropriate-objc-class-names, allowing only class names prefixed with "WK" or "Web".
2622
2623 2011-09-21  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2624
2625         [Qt][WK2] Implement Download support in WebProcess
2626         https://bugs.webkit.org/show_bug.cgi?id=68153
2627
2628         Reviewed by Andreas Kling.
2629
2630         We implement the necessary functions of Download.h, and our QtFileDownloader
2631         to handle all network communication and call the necessary functions of Download.
2632
2633         We use the download policy for any MIME type not supported by WebKit. This
2634         behaves like Qt non-WebKit2 except that we don't force download when
2635         we encounter Content-Disposition: attachment. We still use the "filename="
2636         field for file name suggestion though.
2637
2638         Based on original patches by: Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>,
2639         Jocelyn Turcotte <jocelyn.turcotte@nokia.com>, Simon Hausmann <simon.hausmann@nokia.com>
2640         and Zalan Bujtas <zalan.bujtas@nokia.com>.
2641
2642         * UIProcess/API/qt/qweberror.cpp: Adding DownloadError
2643         (QWebError::type):
2644         * UIProcess/API/qt/qweberror.h: Adding DownloadError
2645         * WebKit2.pro:
2646         * WebProcess/Downloads/Download.cpp: Adding QtFileDownloader, Qt platform specific
2647         (WebKit::Download::Download):
2648         * WebProcess/Downloads/Download.h: Adding QtFileDownloader, Qt platform specific
2649         * WebProcess/Downloads/qt/DownloadQt.cpp:
2650         (WebKit::Download::start):
2651         (WebKit::Download::startWithHandle):
2652         (WebKit::Download::cancel):
2653         (WebKit::Download::platformInvalidate):
2654         (WebKit::Download::didDecideDestination):
2655         * WebProcess/Downloads/qt/QtFileDownloader.cpp: Added.
2656         (WebKit::QtFileDownloader::QtFileDownloader):
2657         (WebKit::QtFileDownloader::~QtFileDownloader):
2658         (WebKit::QtFileDownloader::determineFilename):
2659         (WebKit::QtFileDownloader::decidedDestination):
2660         (WebKit::QtFileDownloader::abortDownloadWritingAndEmitError):
2661         (WebKit::QtFileDownloader::onReadyRead):
2662         (WebKit::QtFileDownloader::onFinished):
2663         (WebKit::QtFileDownloader::onError):
2664         (WebKit::QtFileDownloader::cancel):
2665         * WebProcess/Downloads/qt/QtFileDownloader.h: Added.
2666
2667 2011-09-21  Mark Rowe  <mrowe@apple.com>
2668
2669         <rdar://problem/9890932> "Open PDF in Preview" on two PDFs of the same name does nothing the second time
2670
2671         The logic in PDFViewController::pathToPDFOnDisk that deals with constructing a unique
2672         file name if a file of the suggested name already exists was incorrect. It was appending
2673         the template used by mkstemps to the directory name component of the path rather than
2674         using it as a prefix on the filename portion of the path. This resulted in a template path
2675         like WebKitPDFs-ABCDEFXXXXXX-/foo.pdf where WebKitPDFs-ABCDEF/XXXXXX-foo.pdf was expected.
2676
2677         Reviewed by Jon Honeycutt.
2678
2679         * UIProcess/API/mac/PDFViewController.mm:
2680         (WebKit::PDFViewController::pathToPDFOnDisk): Append the template as a new path component,
2681         then append the suggested file name to that component.
2682
2683 2011-09-21  Andras Becsi  <andras.becsi@nokia.com>
2684
2685         [Qt] Remove Qt specific code from css/SelectorChecker.cpp
2686         https://bugs.webkit.org/show_bug.cgi?id=67702
2687
2688         Reviewed by Csaba Osztrogonác.
2689
2690         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Modify to match new prototype.
2691         (WebKit::WebPlatformStrategies::isLinkVisited):
2692         (WebKit::WebPlatformStrategies::addVisitedLink):
2693         * WebProcess/WebCoreSupport/WebPlatformStrategies.h: Ditto.
2694
2695 2011-09-20  Anders Carlsson  <andersca@apple.com>
2696
2697         Get rid of PluginView::setBoundsSize from WebKit2
2698         https://bugs.webkit.org/show_bug.cgi?id=68489
2699
2700         Reviewed by Dan Bernstein.
2701
2702         Remove m_boundsSize and the setter since they aren't used anywhere.
2703
2704         * WebProcess/Plugins/PluginView.cpp:
2705         * WebProcess/Plugins/PluginView.h:
2706
2707 2011-09-20  Gopal Raghavan  <gopal.1.raghavan@nokia.com>
2708
2709         [Qt] QTouchWebView missing signal tests for loadProgress
2710         https://bugs.webkit.org/show_bug.cgi?id=68442
2711
2712         Reviewed by Chang Shu.
2713
2714         Added test case to check load progress signal for QTouchWebView
2715
2716         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgressSignal.qml: Added.
2717         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2718
2719 2011-09-20  Sheriff Bot  <webkit.review.bot@gmail.com>
2720
2721         Unreviewed, rolling out r95565.
2722         http://trac.webkit.org/changeset/95565
2723         https://bugs.webkit.org/show_bug.cgi?id=68470
2724
2725         Broke builds (Requested by andersca on #webkit).
2726
2727         * GNUmakefile.am:
2728         * Shared/API/c/WKHitTestResult.cpp: Removed.
2729         * Shared/API/c/WKHitTestResult.h: Removed.
2730         * UIProcess/API/C/WebKit2.h:
2731
2732 2011-09-20  Alexis Menard  <alexis.menard@openbossa.org>
2733
2734         [Qt] [WK2] Implement a persistent cookie storage.
2735         https://bugs.webkit.org/show_bug.cgi?id=65309
2736
2737         Reviewed by Chang Shu.
2738
2739         Add parameter to the WebProcess creation to specify where cookies should be saved.
2740         It also use the new cookie storage implementation and set it to our network stack
2741         so cookies are used when using it.
2742
2743         * Shared/WebProcessCreationParameters.cpp:
2744         (WebKit::WebProcessCreationParameters::encode):
2745         (WebKit::WebProcessCreationParameters::decode):
2746         * Shared/WebProcessCreationParameters.h:
2747         * UIProcess/qt/WebContextQt.cpp:
2748         (WebKit::WebContext::platformInitializeWebProcess):
2749         * WebProcess/qt/WebProcessQt.cpp:
2750         (WebKit::WebProcess::platformInitializeWebProcess):
2751         (WebKit::WebProcess::platformTerminate):
2752
2753 2011-09-20  Nayan Kumar K  <nayankk@motorola.com>
2754
2755         Added WKHitTestResult API's.
2756
2757         WKHitTestResult API's are added. These API's can be used to
2758         get the hover'ed link/image/media URL as well as link lable and
2759         title.
2760         https://bugs.webkit.org/show_bug.cgi?id=68426
2761
2762         Reviewed by Anders Carlsson.
2763
2764         * GNUmakefile.am:
2765         * Shared/API/c/WKHitTestResult.cpp: Copied from Source/WebKit2/UIProcess/API/C/WebKit2.h.
2766         (WKHitTestResultGetTypeID):
2767         (WKHitTestResultCopyAbsoluteImageURL):
2768         (WKHitTestResultCopyAbsoluteLinkURL):
2769         (WKHitTestResultCopyAbsoluteMediaURL):
2770         (WKHitTestResultCopyLinkLabel):
2771         (WKHitTestResultCopyLinkTitle):
2772         * Shared/API/c/WKHitTestResult.h: Copied from Source/WebKit2/UIProcess/API/C/WebKit2.h.
2773         * UIProcess/API/C/WebKit2.h:
2774
2775 2011-09-20  Alexis Menard  <alexis.menard@openbossa.org>
2776
2777         [Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
2778         https://bugs.webkit.org/show_bug.cgi?id=68444
2779
2780         Reviewed by Andreas Kling.
2781
2782         Create all the stubs necessary for enabling FULLSCREEN_API on the Qt port.
2783
2784         * UIProcess/qt/WebFullScreenManagerProxyQt.cpp: Added.
2785         (WebKit::WebFullScreenManagerProxy::invalidate):
2786         (WebKit::WebFullScreenManagerProxy::enterFullScreen):
2787         (WebKit::WebFullScreenManagerProxy::exitFullScreen):
2788         (WebKit::WebFullScreenManagerProxy::beganEnterFullScreenAnimation):
2789         (WebKit::WebFullScreenManagerProxy::finishedEnterFullScreenAnimation):
2790         (WebKit::WebFullScreenManagerProxy::beganExitFullScreenAnimation):
2791         (WebKit::WebFullScreenManagerProxy::finishedExitFullScreenAnimation):
2792         (WebKit::WebFullScreenManagerProxy::enterAcceleratedCompositingMode):
2793         (WebKit::WebFullScreenManagerProxy::exitAcceleratedCompositingMode):
2794         (WebKit::WebFullScreenManagerProxy::getFullScreenRect):
2795         * WebKit2.pro:
2796         * WebProcess/FullScreen/qt: Added.
2797         * WebProcess/FullScreen/qt/WebFullScreenManagerQt.cpp: Added.
2798         (WebKit::WebFullScreenManagerQt::WebFullScreenManagerQt):
2799         (WebKit::WebFullScreenManager::create):
2800         (WebKit::WebFullScreenManagerQt::setRootFullScreenLayer):
2801         (WebKit::WebFullScreenManagerQt::beginEnterFullScreenAnimation):
2802         (WebKit::WebFullScreenManagerQt::beginExitFullScreenAnimation):
2803         * WebProcess/FullScreen/qt/WebFullScreenManagerQt.h: Added.
2804
2805 2011-09-20  Alexis Menard  <alexis.menard@openbossa.org>
2806
2807         [Qt][WK2] Export QNetworkReply in the QtWebKit QML module.
2808         https://bugs.webkit.org/show_bug.cgi?id=68401
2809
2810         Reviewed by Simon Hausmann.
2811
2812         Add QNetworkReply in the QtWebKit module. We use the enum QNetworkReply::NetworkError
2813         as the error code when the load fails. It is not used in the QtQuick module therefore
2814         the QML team thinks it should belong here. Also added some auto-tests to cover the
2815         loading errors.
2816
2817         * UIProcess/API/qt/qmlplugin/plugin.cpp:
2818         (WebKit2QmlPlugin::registerTypes):
2819         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadFail.qml: Added.
2820         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadFail.qml: Added.
2821
2822 2011-09-20  Csaba Osztrogonác  <ossy@webkit.org>
2823
2824         [Qt][Mac] Buildfix after r95513.
2825
2826         Rubber-stamped by Andras Becsi.
2827
2828         * Scripts/generate-forwarding-headers.pl: Add mm file supporting.
2829
2830 2011-09-20  Gopal Raghavan  <gopal.1.raghavan@nokia.com>
2831
2832         [Qt] QDesktopWebView missing loadProgress tests
2833         https://bugs.webkit.org/show_bug.cgi?id=68280
2834
2835         Reviewed by Andreas Kling.
2836
2837         Added test case to check load progress property and signal for QDesktopWebView
2838
2839         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgress.qml: Added.
2840         * UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgressSignal.qml: Added.
2841         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
2842
2843 2011-09-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2844
2845         [GTK] WebProcess shouldn't use the GTK+ API
2846         https://bugs.webkit.org/show_bug.cgi?id=68062
2847
2848         Reviewed by Martin Robinson.
2849
2850         Use WebCore API to create errors in WebProcess.
2851
2852         * GNUmakefile.am: Don't use webkit/webkierror.h.
2853         * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
2854         (WebKit::cancelledError):
2855         (WebKit::blockedError):
2856         (WebKit::cannotShowURLError):
2857         (WebKit::interruptedForPolicyChangeError):
2858         (WebKit::cannotShowMIMETypeError):
2859         (WebKit::fileDoesNotExistError):
2860         (WebKit::pluginWillHandleLoadError):
2861
2862 2011-09-19  Mark Rowe  <mrowe@apple.com>
2863
2864         <http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect
2865
2866         On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
2867         in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
2868         a NoIdleSleep assertion as the latter is implied by the former.
2869
2870         Adopt the DisplaySleepDisabler class that was added to WebCore and remove all of duplicated logic from WKFullScreenWindowController.
2871
2872         Reviewed by Dan Bernstein.
2873
2874         * UIProcess/mac/WKFullScreenWindowController.h:
2875         * UIProcess/mac/WKFullScreenWindowController.mm:
2876         (-[WKFullScreenWindowController _updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
2877         display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
2878         disabler that we own. Also adds a FIXME about an error that was noticed while working in this code.
2879
2880 2011-09-19  Adam Barth  <abarth@webkit.org>
2881
2882         Always enable ENABLE(EVENTSOURCE)
2883         https://bugs.webkit.org/show_bug.cgi?id=68414
2884
2885         Reviewed by Eric Seidel.
2886
2887         * Configurations/FeatureDefines.xcconfig:
2888
2889 2011-09-19  Alexis Menard  <alexis.menard@openbossa.org>
2890
2891         [Qt] Unreviewed coding style fix.
2892
2893         * UIProcess/API/qt/qdesktopwebview.h:
2894         * UIProcess/API/qt/qtouchwebpage.h:
2895         * UIProcess/API/qt/qweberror.h:
2896
2897 2011-09-19  Alexis Menard  <alexis.menard@openbossa.org>
2898
2899         [Qt][WK2] Make loading errors API easier to use.
2900         https://bugs.webkit.org/show_bug.cgi?id=68357
2901
2902         Reviewed by Tor Arne Vestbø.
2903
2904         Make the API to get loading errors easier to use. 95197 introduced
2905         a QJSValue API that is a bit opaque for the client code. Rather than
2906         using a dedicated object, we can just pass the needed information as
2907         parameters of the slot.
2908
2909         * UIProcess/API/qt/qdesktopwebview.cpp:
2910         (QDesktopWebViewPrivate::loadDidFail):
2911         * UIProcess/API/qt/qdesktopwebview.h:
2912         * UIProcess/API/qt/qdesktopwebview_p.h:
2913         * UIProcess/API/qt/qtouchwebpage.h:
2914         * UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp:
2915         (tst_CommonViewTests::loadNonexistentFileUrl):
2916         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
2917         (WebViewAbstraction::WebViewAbstraction):
2918         (WebViewAbstraction::touchViewLoadFailed):
2919         (WebViewAbstraction::desktopViewLoadFailed):
2920         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h:
2921         * UIProcess/qt/QtWebPageProxy.cpp:
2922         (QtWebPageProxy::loadDidFail):
2923         * UIProcess/qt/TouchViewInterface.cpp:
2924         (WebKit::TouchViewInterface::loadDidFail):
2925         * UIProcess/qt/TouchViewInterface.h:
2926         * UIProcess/qt/ViewInterface.h:
2927
2928 2011-09-19  Dan Bernstein  <mitz@apple.com>
2929
2930         WebKit2 part of [mac] WebKit contains Objective-C classes that are not prefixed with its standard prefixes
2931         https://bugs.webkit.org/show_bug.cgi?id=68323
2932
2933         Reviewed by Sam Weinig.
2934
2935         Renamed FullKeyboardAccessWatcher to WKFullKeyboardAccessWatcher.
2936         Renamed AccessibilityWebPageObject to WKAccessibilityWebPageObject.
2937
2938         * WebKit2.xcodeproj/project.pbxproj:
2939         * WebProcess/WebPage/WebPage.h:
2940         * WebProcess/WebPage/mac/AccessibilityWebPageObject.h: Removed.
2941         * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm: Removed.
2942         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.h: Copied from Source/WebKit2/WebProcess/WebPage/mac/AccessibilityWebPageObject.h.
2943         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm: Copied from Source/WebKit2/WebProcess/WebPage/mac/AccessibilityWebPageObject.mm.
2944         * WebProcess/WebPage/mac/WebPageMac.mm:
2945         (WebKit::WebPage::platformInitialize):
2946         (WebKit::WebPage::accessibilityRemoteObject):
2947         * WebProcess/mac/FullKeyboardAccessWatcher.h: Removed.
2948         * WebProcess/mac/FullKeyboardAccessWatcher.mm: Removed.
2949         * WebProcess/mac/WKFullKeyboardAccessWatcher.h: Copied from Source/WebKit2/WebProcess/mac/FullKeyboardAccessWatcher.h.
2950         * WebProcess/mac/WKFullKeyboardAccessWatcher.mm: Copied from Source/WebKit2/WebProcess/mac/FullKeyboardAccessWatcher.mm.
2951         (+[WKFullKeyboardAccessWatcher fullKeyboardAccessEnabled]):
2952         * WebProcess/mac/WebProcessMac.mm:
2953         (WebKit::WebProcess::fullKeyboardAccessEnabled):
2954
2955 2011-09-14  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2956
2957         [Qt] [WK2] Implement popup menus in QDesktopWebView using QComboBox
2958         https://bugs.webkit.org/show_bug.cgi?id=67938
2959
2960         Reviewed by Andreas Kling.
2961
2962         Implement a WebPopupMenuProxy that uses QtWebComboBox (a QComboBox subclass we
2963         have for WK1). Then use this WebPopupMenuProxy in QDesktopWebView. The implementation
2964         explicitly avoids running a nested mainloop.
2965
2966         * UIProcess/WebPageProxy.cpp:
2967         (WebKit::WebPageProxy::showPopupMenu):
2968         Since we don't run a nested mainloop, we need to keep the client pointer to call
2969         valueChangedForPopupMenu().
2970
2971         * UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp: Added.
2972         (WebKit::WebPopupMenuProxyQtDesktop::WebPopupMenuProxyQtDesktop):
2973         (WebKit::WebPopupMenuProxyQtDesktop::~WebPopupMenuProxyQtDesktop):
2974         (WebKit::WebPopupMenuProxyQtDesktop::showPopupMenu):
2975         (WebKit::WebPopupMenuProxyQtDesktop::hidePopupMenu):
2976         (WebKit::WebPopupMenuProxyQtDesktop::setSelectedIndex):
2977         (WebKit::WebPopupMenuProxyQtDesktop::onPopupMenuHidden):
2978         (WebKit::WebPopupMenuProxyQtDesktop::populate):
2979         * UIProcess/qt/WebPopupMenuProxyQtDesktop.h: Added.
2980         (WebKit::WebPopupMenuProxyQtDesktop::create):
2981         * UIProcess/qt/qdesktopwebpageproxy.cpp:
2982         (QDesktopWebPageProxy::createPopupMenuProxy):
2983         * UIProcess/qt/qdesktopwebpageproxy.h:
2984         * WebKit2.pro:
2985
2986 2011-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
2987
2988         [GTK] Fix distcheck build
2989         https://bugs.webkit.org/show_bug.cgi?id=68241
2990
2991         Reviewed by Martin Robinson.
2992
2993         * GNUmakefile.am:
2994
2995 2011-09-17  Mihai Parparita  <mihaip@chromium.org>
2996
2997         FrameLoaderClient BackForwardList-related methods are unsued
2998         https://bugs.webkit.org/show_bug.cgi?id=68293
2999
3000         Reviewed by Darin Adler.
3001
3002         Remove FrameLoaderClient methods that were added by r51629, since only        
3003         the old (since-deleted) Android port needed them.
3004
3005         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3006         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3007
3008 2011-09-16  Gopal Raghavan  <gopal.1.raghavan@nokia.com>
3009         [Qt] QTouchWebView missing loadProgress tests
3010         https://bugs.webkit.org/show_bug.cgi?id=68183
3011
3012         Reviewed by Chang Shu.
3013
3014         Added test case to check load progress for QTouchWebView
3015
3016         * UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgress.qml: Added.
3017         * UIProcess/API/qt/tests/qmltests/qmltests.pro:
3018
3019 2011-09-16  Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com>
3020
3021         Removed unwanted NotImplemented.h inclusion in WebKit2 GTK port & platform independent files
3022         https://bugs.webkit.org/show_bug.cgi?id=68249
3023
3024         Reviewed by Martin Robinson.
3025
3026         * Shared/Plugins/NPIdentifierData.cpp: Removed NotImplemented.h inclusion.
3027         * Shared/Plugins/NPRemoteObjectMap.cpp: Removed NotImplemented.h inclusion.
3028         * Shared/Plugins/NPVariantData.cpp: Removed NotImplemented.h inclusion.
3029         * UIProcess/gtk/WebContextGtk.cpp: Removed NotImplemented.h inclusion.
3030         * WebProcess/Cookies/WebCookieManager.cpp: Removed NotImplemented.h inclusion.
3031         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: Removed NotImplemented.h inclusion.
3032         * WebProcess/Plugins/Netscape/JSNPMethod.cpp: Removed NotImplemented.h inclusion.
3033         * WebProcess/Plugins/Netscape/NPJSObject.cpp: Removed NotImplemented.h inclusion.
3034         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: Removed NotImplemented.h inclusion.
3035         * WebProcess/WebCoreSupport/WebInspectorClient.cpp: Removed NotImplemented.h inclusion.
3036
3037 2011-09-16  Simon Fraser  <simon.fraser@apple.com>
3038
3039         Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
3040         https://bugs.webkit.org/show_bug.cgi?id=68134
3041
3042         Reviewed by Sam Weinig.
3043
3044         Hook up a private preference that enables the mock scrollbar theme.
3045
3046         * Shared/WebPreferencesStore.h:
3047         * UIProcess/API/C/WKPreferences.cpp:
3048         (WKPreferencesSetMockScrollbarsEnabled):
3049         (WKPreferencesGetMockScrollbarsEnabled):
3050         * UIProcess/API/C/WKPreferencesPrivate.h:
3051         * WebProcess/WebPage/WebPage.cpp:
3052         (WebKit::WebPage::updatePreferences):
3053
3054 2011-09-16  Mark Rowe  <mrowe@apple.com>
3055
3056         Stop installing source and header files in to WebKit2.framework after r95303.
3057
3058         * WebKit2.xcodeproj/project.pbxproj:
3059
3060 2011-09-16  Anders Carlsson  <andersca@apple.com>
3061
3062         Add back the WKHitTestResultRef parameter to mouseDidMoveOverElement in an ABI preserving way
3063         https://bugs.webkit.org/show_bug.cgi?id=68269
3064
3065         Reviewed by Geoffrey Garen.
3066
3067         Add back WKPageMouseDidMoveOverElementCallback last and deprecate the current callback.
3068
3069         * UIProcess/API/C/WKPage.h:
3070         * UIProcess/WebUIClient.cpp:
3071         (WebKit::WebUIClient::mouseDidMoveOverElement):
3072
3073 2011-09-16  Alexey Proskuryakov  <ap@apple.com>
3074
3075         Give local builds of WebProcess different icon to distinguish them from built-in Safari’s WebProcess
3076         https://bugs.webkit.org/show_bug.cgi?id=68268
3077
3078         Reviewed by Darin Adler.
3079
3080         * Configurations/WebProcess.xcconfig: Add an icon in Debug and Release builds.  The empty
3081         value for production resulted in WebKit not adding the key to plist at all, which is what
3082         we want (but I don't know if it's a supported feature).
3083         Also, don't copy the icon file to built framework in production builds.
3084
3085         * WebKit2.xcodeproj/project.pbxproj: Added WebKit.icns.
3086
3087         * WebProcess/Info.plist: Added a key for the icon.
3088
3089         * WebProcess/mac/WebKit.icns: Copied from Websites/webkit.org/images/surfin-safari.icns.
3090
3091 2011-09-16  Anders Carlsson  <andersca@apple.com>
3092
3093         Temporarily remove the WKHitTestResultRef parameter to avoid breaking the WK2 ABI/API
3094         https://bugs.webkit.org/show_bug.cgi?id=68266
3095
3096         Reviewed by John Sullivan.
3097
3098         * UIProcess/API/C/WKPage.h:
3099         * UIProcess/WebUIClient.cpp:
3100         (WebKit::WebUIClient::mouseDidMoveOverElement):
3101
3102 2011-09-16  Filip Pizlo  <fpizlo@apple.com>
3103
3104         DFG JIT should inline Math.abs
3105         https://bugs.webkit.org/show_bug.cgi?id=68227
3106
3107         Reviewed by Oliver Hunt.
3108
3109         Added JavaScriptCore/dfg to include path path.
3110
3111         * CMakeLists.txt:
3112
3113 2011-09-16  Igor Oliveira  <igor.oliveira@openbossa.org>
3114
3115         [WK2] mouseDidMoveOverElement needs to send more information about hovered element to UiProcess.
3116         https://bugs.webkit.org/show_bug.cgi?id=68125
3117
3118         This patch implements support for the UiProcess to know what is the link url of a hovered element.
3119
3120         Reviewed by Anders Carlsson.
3121
3122         * CMakeLists.txt:
3123         * GNUmakefile.am:
3124         * Shared/API/c/WKBase.h:
3125         * Shared/APIObject.h:
3126         * Shared/WebHitTestResult.cpp: Added.
3127
3128         WebHitTestResult has hovered element information.
3129
3130         (WebKit::WebHitTestResult::create):
3131         (WebKit::WebHitTestResult::Data::encode):
3132         (WebKit::WebHitTestResult::Data::decode):
3133         * Shared/WebHitTestResult.h: Added.
3134         (WebKit::WebHitTestResult::absoluteImageURL):
3135         (WebKit::WebHitTestResult::absoluteLinkURL):
3136         (WebKit::WebHitTestResult::absoluteMediaURL):
3137         (WebKit::WebHitTestResult::linkLabel):
3138         (WebKit::WebHitTestResult::linkTitle):
3139         (WebKit::WebHitTestResult::WebHitTestResult):
3140         (WebKit::WebHitTestResult::type):
3141         * UIProcess/API/C/WKAPICast.h:
3142         * UIProcess/API/C/WKPage.h:
3143         * UIProcess/WebPageProxy.cpp:
3144         (WebKit::WebPageProxy::mouseDidMoveOverElement):
3145         * UIProcess/WebPageProxy.h:
3146         * UIProcess/WebPageProxy.messages.in:
3147         * UIProcess/WebUIClient.cpp:
3148         (WebKit::WebUIClient::mouseDidMoveOverElement):
3149         * UIProcess/WebUIClient.h:
3150         * WebKit2.pro:
3151         * WebKit2.xcodeproj/project.pbxproj:
3152         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3153         (WebKit::WebChromeClient::mouseDidMoveOverElement):
3154         * win/WebKit2.vcproj:
3155
3156 2011-09-15  Adam Roben  <aroben@apple.com>
3157
3158         Add support for attributes on message parameters
3159
3160         Parameter attributes are specified as a space-separated list inside square brackets before
3161         the parameter's type. WebKit2 doesn't use this, but other projects that use these scripts
3162         would like to.
3163
3164         Fixes <http://webkit.org/b/68219> Would like a way to specify attributes on message
3165         parameters
3166
3167         Reviewed by Sam Weinig.
3168
3169         * Scripts/webkit2/messages_unittest.py: Added tests for parameter attributes.
3170
3171         * Scripts/webkit2/model.py:
3172         (Parameter.__init__): Added a new attributes parameter, which is stored in the self.attributes
3173         property.
3174         (Parameter.has_attribute): Added. Returns true if this parameter has the given attribute.
3175
3176         * Scripts/webkit2/parser.py:
3177         (parse): Moved attributes-parsing code from here...
3178         (parse_attributes_string): ...to here.
3179         (parse_parameters_string): Renamed from parse_parameter_string. Now also parses parameter
3180         attributes.
3181
3182 2011-09-15  Adam Roben  <aroben@apple.com>
3183
3184         Make WebKit2's message-generation model and parser scripts accessible to other projects
3185
3186         We copy them into the build products directory so other projects can find them.
3187
3188         Fixes <http://webkit.org/b/68169> Would like to be able to use WebKit2's message-generation
3189         scripts in other projects
3190
3191         Reviewed by Darin Adler.
3192
3193         * WebKit2.xcodeproj/project.pbxproj: Copy the scripts to PrivateHeaders.
3194
3195         * win/WebKit2.make: Copy the scripts from obj/WebKit2/scripts to
3196         tools/scripts, like WebCore does.
3197
3198         * win/WebKit2Generated.make: Copy the scripts to obj/WebKit2/scripts, which is similar to what
3199         WebCore does for its bindings scripts.
3200
3201 2011-09-15  Adam Roben  <aroben@apple.com>
3202
3203         Split some of the message-generation code into separate modules
3204
3205         This is in preparation for making these modules scripts usable by other projects.
3206
3207         Fixes <http://webkit.org/b/68217> Model and parsing functionality for WebKit2's
3208         message-generation scripts is trapped inside a much larger module
3209
3210         Reviewed by Darin Adler.
3211
3212         * DerivedSources.make:
3213         * DerivedSources.pro:
3214         * GNUmakefile.am:
3215         * WebKit2.xcodeproj/project.pbxproj:
3216         * win/WebKit2.vcproj:
3217         * win/WebKit2Generated.vcproj:
3218         Added new files.
3219
3220         * Scripts/webkit2/messages.py: Moved some code from here...
3221
3222         * Scripts/webkit2/model.py: Added.
3223         * Scripts/webkit2/parser.py: Added.
3224         ...to here. MessageReceiver.parse was split out into a function in the new parser module.
3225
3226         * Scripts/webkit2/messages_unittest.py: Updated for renames.
3227
3228 2011-09-16  Martin Robinson  <mrobinson@igalia.com>
3229
3230         [GTK] Disable WebKit2 by default in configure.ac, but enable it with build-webkit
3231         https://bugs.webkit.org/show_bug.cgi?id=68178
3232
3233         Reviewed by Xan Lopez.
3234
3235         * GNUmakefile.am: Do not build WebKit2 by default. Re-add pkgconfig support
3236         for WebKit2.
3237
3238 2011-09-15  Adam Barth  <abarth@webkit.org>
3239
3240         Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
3241         https://bugs.webkit.org/show_bug.cgi?id=68205
3242
3243         Reviewed by Eric Seidel.
3244
3245         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3246         * WebProcess/WebCoreSupport/WebChromeClient.h:
3247         * WebProcess/WebPage/WebPage.cpp:
3248         (WebKit::WebPage::updatePreferences):
3249         * WebProcess/WebProcess.cpp:
3250         (WebKit::WebProcess::initializeWebProcess):
3251
3252 2011-09-15  Eric Seidel  <eric@webkit.org>
3253
3254         Remove ENABLE(SVG_AS_IMAGE) since all major ports have it on by default
3255         https://bugs.webkit.org/show_bug.cgi?id=68182
3256
3257         Reviewed by Adam Barth.
3258
3259         * Configurations/FeatureDefines.xcconfig:
3260
3261 2011-09-15  Eric Seidel  <eric@webkit.org>
3262
3263         Remove ENABLE_SVG_ANIMATION as all major ports have it on by default
3264         https://bugs.webkit.org/show_bug.cgi?id=68022
3265
3266         Reviewed by Ryosuke Niwa.
3267
3268         * Configurations/FeatureDefines.xcconfig:
3269
3270 2011-09-15  Alexis Menard  <alexis.menard@openbossa.org>
3271
3272         [Qt][WK2] Make QWebError more friendly to QML.
3273         https://bugs.webkit.org/show_bug.cgi?id=67785
3274
3275         Reviewed by Simon Hausmann.
3276
3277         Make sure that we can use the loading errors in QML. We send it via a QJSValue which
3278         has the properties needed to get the error code, the url and the type of error.
3279
3280         * UIProcess/API/qt/qdesktopwebview.cpp:
3281         (QDesktopWebViewPrivate::loadDidFail):
3282         (QDesktopWebViewPrivate::engine):
3283         * UIProcess/API/qt/qdesktopwebview.h:
3284         * UIProcess/API/qt/qdesktopwebview_p.h:
3285         * UIProcess/API/qt/qtouchwebpage.h:
3286         * UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp:
3287         (tst_CommonViewTests::loadNonexistentFileUrl):
3288         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
3289         (WebViewAbstraction::WebViewAbstraction):
3290         (WebViewAbstraction::touchViewLoadFailed):
3291         (WebViewAbstraction::desktopViewLoadFailed):
3292         * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h:
3293         * UIProcess/API/qt/tests/testwindow.h:
3294         * UIProcess/qt/QtWebPageProxy.cpp:
3295         (QtWebPageProxy::loadDidFail):
3296         * UIProcess/qt/QtWebPageProxy.h:
3297         * UIProcess/qt/TouchViewInterface.cpp:
3298         (WebKit::TouchViewInterface::loadDidFail):
3299         (WebKit::TouchViewInterface::engine):
3300         * UIProcess/qt/TouchViewInterface.h:
3301         * UIProcess/qt/ViewInterface.h:
3302
3303 2011-09-15  Adam Roben  <aroben@apple.com>
3304
3305         Remove WebKit2-specific knowledge from the Message class
3306
3307         This is in preparation for making some of our message-generations scripts usable by other
3308         projects.
3309
3310         Fixes <http://webkit.org/b/68170> Model classes in WebKit2's message-generation scripts know
3311         too much about WebKit2 details
3312
3313         Reviewed by Anders Carlsson.
3314
3315         * Scripts/webkit2/messages.py: Added constants for the message attributes we support.
3316         (MessageReceiver.parse): Instead of recognizing individual attributes, just stick the
3317         attributes into a set and pass it to the Message constructor.
3318         (Message.__init__): Changed to take a generic set of attributes instead of individual
3319         attributes.
3320         (Message.has_attribute): Added. Returns true if the message has an attribute.
3321         (message_is_variadic): Renamed from parameter_type_is_variadic. Code came from
3322         Message.__init__, which set the old message.is_variadic property.
3323
3324         (decode_type):
3325         (message_to_struct_declaration):
3326         (forward_declarations_and_headers):
3327         (async_case_statement):
3328         (sync_case_statement):
3329         (generate_message_handler):
3330         Updated to use Message.has_attribute and message_is_variadic.
3331
3332 2011-09-14  Wajahat Siddiqui  <mdwajahatali.siddiqui@motorola.com>
3333
3334         Eliminate WebKit2 compilation warnings.
3335         https://bugs.webkit.org/show_bug.cgi?id=65025
3336
3337         Warnings found with gcc on linux.
3338
3339         Reviewed by Sam Weinig.
3340
3341         * Platform/CoreIPC/ArgumentEncoder.cpp:
3342         (CoreIPC::ArgumentEncoder::~ArgumentEncoder):
3343         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3344         (WebKit::WebFrameLoaderClient::createPlugin):
3345
3346 2011-09-14  Ada Chan  <adachan@apple.com>
3347
3348         Implement WKBundleFrameCopyWebArchive().
3349         http://bugs.webkit.org/show_bug.cgi?id=67857
3350
3351         Reviewed by Anders Carlsson.
3352
3353         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
3354         (WKBundleFrameCopyWebArchive): Call WebFrame::webArchiveData() and create a WKDataRef from the returned CFDataRef.
3355         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
3356         * WebProcess/WebPage/WebFrame.cpp:
3357         (WebKit::WebFrame::webArchiveData): Add WebFrame::webArchiveData().
3358         * WebProcess/WebPage/WebFrame.h:
3359         * WebProcess/WebPage/WebPage.cpp:
3360         (WebKit::WebPage::getWebArchiveOfFrame): Move the logic to WebFrame::webArchiveData() and call that method here.
3361
3362 2011-09-14  Alexey Proskuryakov  <ap@apple.com>
3363
3364         Web Process doesn't need a permission to look up WebProcess service any more
3365         https://bugs.webkit.org/show_bug.cgi?id=68101
3366
3367         Reviewed by Anders Carlsson.
3368
3369         * WebProcess/com.apple.WebProcess.sb:
3370
3371 2011-09-14  Mark Hahnenberg  <mhahnenberg@apple.com>
3372
3373         Unzip initialization lists and constructors in JSCell hierarchy (6/7)
3374         https://bugs.webkit.org/show_bug.cgi?id=67692
3375
3376         Reviewed by Geoffrey Garen.
3377
3378         Completed the sixth level of the refactoring to add finishCreation() 
3379         methods to all classes within the JSCell hierarchy with non-trivial 
3380         constructor bodies.
3381
3382         This primarily consists of pushing the calls to finishCreation() down 
3383         into the constructors of the subclasses of the fifth level of the hierarchy 
3384         as well as pulling the finishCreation() calls out into the class's corresponding
3385         create() method if it has one.  Doing both simultaneously allows us to 
3386         maintain the invariant that the finishCreation() method chain is called exactly 
3387         once during the creation of an object, since calling it any other number of 
3388         times (0, 2, or more) will cause an assertion failure.
3389
3390         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
3391         (WebKit::JSNPMethod::JSNPMethod):
3392         * WebProcess/Plugins/Netscape/JSNPMethod.h:
3393         (WebKit::JSNPMethod::create):
3394
3395 2011-09-13  Eric Seidel  <eric@webkit.org>
3396
3397         Remove ENABLE_SVG_USE as <use> is required by HTML5
3398         https://bugs.webkit.org/show_bug.cgi?id=68019
3399
3400         Reviewed by Ryosuke Niwa.
3401
3402         * Configurations/FeatureDefines.xcconfig:
3403
3404 2011-09-13  Anders Carlsson  <andersca@apple.com>
3405
3406         Disable C++ exceptions when building with clang
3407         https://bugs.webkit.org/show_bug.cgi?id=68031
3408         <rdar://problem/9556880>
3409
3410         Reviewed by Mark Rowe.
3411
3412         * Configurations/Base.xcconfig:
3413
3414 2011-09-13  Eric Seidel  <eric@webkit.org>
3415
3416         Remove ENABLE_SVG_FOREIGN_OBJECT as it is a required part of HTML5
3417         https://bugs.webkit.org/show_bug.cgi?id=68018
3418
3419         Reviewed by Ryosuke Niwa.
3420
3421         * Configurations/FeatureDefines.xcconfig:
3422
3423 2011-09-13  Chang Shu  <cshu@webkit.org>
3424
3425         [WK2] [Mac] Implement KeyDown function for WebKit2 EventSender.
3426         https://bugs.webkit.org/show_bug.cgi?id=57515
3427
3428         The code change in WebKit2 allows key events being sent to WebProcess from UIProcess synchronously.
3429
3430         Reviewed by Darin Adler.
3431
3432         * UIProcess/API/C/WKPage.cpp:
3433         (WKPageSetShouldSendKeyboardEventSynchronously):
3434         * UIProcess/API/C/WKPagePrivate.h:
3435         * UIProcess/WebPageProxy.cpp:
3436         (WebKit::WebPageProxy::WebPageProxy):
3437         (WebKit::WebPageProxy::handleKeyboardEvent):
3438         * UIProcess/WebPageProxy.h:
3439         (WebKit::WebPageProxy::setShouldSendKeyboardEventSynchronously):
3440         * WebProcess/WebPage/WebPage.cpp:
3441         (WebKit::WebPage::keyEventSyncForTesting):
3442         * WebProcess/WebPage/WebPage.h:
3443         * WebProcess/WebPage/WebPage.messages.in:
3444
3445 2011-09-12  Ryuan Choi  <ryuan.choi@samsung.com>
3446
3447         Reviewed by Eric Seidel.
3448
3449         [CMAKE][WK2] include cmakeconfig.h in WebKit2/config.h
3450         https://bugs.webkit.org/show_bug.cgi?id=62692
3451
3452         * CMakeLists.txt: define WTF_USE_JSC=1.
3453         * config.h: add cmakeconfig.h and define necessary macros for CMake build.
3454
3455 2011-09-12  Igor Oliveira  <igor.oliveira@openbossa.org>
3456
3457         [Qt] [WK2] implement support to upload files in Qt WebKit2
3458         https://bugs.webkit.org/show_bug.cgi?id=67228
3459
3460         This patch implements support to upload files in the Desktop Qt WebKit2 implementation.
3461
3462         Reviewed by Andreas Kling.
3463
3464         * Shared/WebOpenPanelParameters.h:
3465         (WebKit::WebOpenPanelParameters::selectedFileNames):
3466         * UIProcess/API/qt/qdesktopwebview.cpp:
3467         (QDesktopWebViewPrivate::chooseFiles):
3468         (QDesktopWebViewPrivate::onOpenPanelFilesSelected):
3469         (QDesktopWebViewPrivate::onOpenPanelFinished):
3470         * UIProcess/API/qt/qdesktopwebview_p.h:
3471         * UIProcess/qt/ClientImpl.cpp:
3472
3473         qt_wk_runOpenPanel supports single and multiple files selection.
3474
3475         (qt_wk_runOpenPanel):
3476         * UIProcess/qt/ClientImpl.h:
3477         * UIProcess/qt/QtWebPageProxy.cpp:
3478         (QtWebPageProxy::init):
3479         * UIProcess/qt/TouchViewInterface.h:
3480         (WebKit::TouchViewInterface::chooseFiles):
3481         * UIProcess/qt/ViewInterface.h:
3482
3483 2011-09-12  Alexis Menard  <alexis.menard@openbossa.org>
3484
3485         [Qt]Style error fix.
3486
3487         Reviewed by Andreas Kling.
3488
3489         * UIProcess/qt/QtWebPageProxy.cpp:
3490
3491 2011-09-11  Mark Rowe  <mrowe@apple.com>
3492
3493         <rdar://problem/9878268> Pressing caps lock after closing a showModalDialog window results in WebProcess exiting
3494
3495         It's incorrect to try and use -[NSApplication run] to run nested runloops as it is not possible to
3496         interrupt a nested invocation of -run without also causing outer invocations to exit after processing
3497         their next event. We can avoid this issue by using -[NSApplication run] for the outermost invocation
3498         of the main runloop, while using CFRunLoopRun for any nested invocations.
3499
3500         Reviewed by Anders Carlsson.
3501
3502         * Platform/RunLoop.h:
3503         * Platform/mac/RunLoopMac.mm:
3504         (RunLoop::RunLoop): Initialize the nesting level to 0.
3505         (RunLoop::run): Bump the nesting level, and only use -[NSApplication run] for the outermost invocation of the
3506         runloop. We also switch from -[NSRunloop run] to CFRunLoopRun as the former will only exit when it has no sources
3507         left to process, while CFRunLoopRun will return immediately after CFRunLoopStop is called on it.
3508         (RunLoop::stop): Only go down the NSApp path for the outermost invocation of the runloop.
3509