Unify Windows version checks.
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2011-03-09  Peter Kasting  <pkasting@google.com>
2
3         Reviewed by Mihai Parparita.
4
5         Unify Windows version checks.
6         https://bugs.webkit.org/show_bug.cgi?id=55979
7
8         * UIProcess/win/WebPageProxyWin.cpp:
9         (WebKit::WebPageProxy::standardUserAgent):
10
11 2011-03-09  Adele Peterson  <adele@apple.com>
12
13         Reviewed by Anders Carlsson.
14
15         Fix for https://bugs.webkit.org/show_bug.cgi?id=56068
16         <rdar://problem/9058245> WebKit2: Can't uncheck 'Spelling and Grammar' contextual items
17
18         * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::contextMenuItemSelected):
19         Add cases for ContextMenuItemTagCorrectSpellingAutomatically, ContextMenuItemTagCheckSpellingWhileTyping, 
20         and ContextMenuItemTagCheckGrammarWithSpelling
21
22 2011-03-09  Alexey Proskuryakov  <ap@apple.com>
23
24         Reviewed by Dan Bernstein.
25
26         Frequent crashes when printing in WebPageProxy::setAutodisplay
27         https://bugs.webkit.org/show_bug.cgi?id=56057
28         <rdar://problem/9053290>
29
30         * UIProcess/API/mac/WKPrintingView.mm: (-[WKPrintingView _delayedResumeAutodisplayTimerFired]):
31         Null check the page, there is no reason for it to still exist.
32
33 2011-03-09  Brent Fulgham  <bfulgham@webkit.org>
34
35         Unreviewed build correction.
36
37         * UIProcess/DrawingAreaProxy.messages.in: Exclude the other
38           method using LayerTreeContext for non-accelerated composition case.
39
40 2011-03-09  Sam Weinig  <sam@webkit.org>
41
42         Reviewed by Anders Carlsson.
43
44         Change plugins to use their own executable on Mac OS X
45         https://bugs.webkit.org/show_bug.cgi?id=55991
46
47         * Configurations/PluginProcess.xcconfig: Copied from Source/WebKit2/Configurations/WebProcess.xcconfig.
48         * PluginProcess/Info.plist: Copied from Source/WebKit2/WebProcess/Info.plist.
49         Add files necessary for adding PluginProcess.app.
50
51         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
52         (WebKit::ProcessLauncher::launchProcess):
53         Launch the PluginProcess.app when launching a plugin process.
54
55         * WebKit2.xcodeproj/project.pbxproj:
56         Add new executable and new files, removes some unneeded copying
57         and duplicate compiling of files.
58
59         * WebProcess/Info.plist:
60         Sorted.
61
62 2011-03-09  Jessie Berlin  <jberlin@apple.com>
63
64         Reviewed by Adam Roben.
65
66         Use the Cookie Storage from the Private Browsing Storage Session directly
67         https://bugs.webkit.org/show_bug.cgi?id=55986
68
69         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
70         (InitWebCoreSystemInterface):
71
72 2011-03-09  Alejandro G. Castro  <alex@igalia.com>
73
74         Fix compilation after r80596, add soup Download stubs.
75
76         * GNUmakefile.am:
77         * WebProcess/Downloads/soup/DownloadSoup.cpp: Added.
78         (WebKit::Download::start):
79         (WebKit::Download::startWithHandle):
80         (WebKit::Download::cancel):
81         (WebKit::Download::platformInvalidate):
82         (WebKit::Download::didDecideDestination):
83         (WebKit::Download::platformDidFinish):
84
85 2011-03-09  Alejandro G. Castro  <alex@igalia.com>
86
87         Fix GTK+ compilation after r80619. Add WebFullScreenManager.
88
89         * GNUmakefile.am:
90
91 2011-03-08  Jer Noble  <jer.noble@apple.com>
92
93         Reviewed by Sam Weinig.
94
95         WebKit2: Plumb through the FULLSCREEN_API Chrome client calls
96         https://bugs.webkit.org/show_bug.cgi?id=55273
97
98         The FULLSCREEN_API Chrome client calls need to be plumbed through from the 
99         WebProcess to the UIProcess.  To do this, WebFullScreenManager (and Proxy)
100         classes have been added to WebPage.
101
102         * DerivedSources.make: Added rules necessary to build DerivedSources for new .in files.
103         * DerivedSources.pro: Ditto.
104         * Platform/CoreIPC/MessageID.h: Added message types for WebFullScreenManager.
105         * Shared/API/c/WKBase.h: Added WKFullScreenManagerRef.
106         * Shared/APIObject.h: Added APIType for WebFullScreenManager.
107         * UIProcess/WebFullScreenManagerProxy.cpp: Added.
108         * UIProcess/WebFullScreenManagerProxy.h: Added.
109         * UIProcess/WebFullScreenManagerProxy.messages.in: Added.
110         * UIProcess/WebPageProxy.cpp:
111         (WebKit::WebPageProxy::close): Invalidate and clear m_fullScreenManager.
112         (WebKit::WebPageProxy::processDidCrash): Ditto.
113         (WebKit::WebPageProxy::didReceiveMessage): Pass messages on to WebFullScreenManagerProxy.
114         (WebKit::WebPageProxy::didReceiveSyncMessage): Ditto.
115         (WebKit::WebPageProxy::fullScreenManager): Added. Lazy instantiation of m_fullScreenManager.
116         * UIProcess/WebPageProxy.h:
117         * UIProcess/WebPageProxy.messages.in:
118         * UIProcess/WebUIClient.cpp:
119         * UIProcess/WebUIClient.h:
120         * WebKit2.xcodeproj/project.pbxproj: Added references to new classes in project file.
121         * WebKit2.pro: Ditto.
122         * win/WebKit2.vcproj: Ditto.
123         * WebKit2.pri: Added new directories to include file path.
124         * win/WebKit2Common.vsprops: Ditto.
125         * WebProcess/FullScreen/WebFullScreenManager.cpp: Added.
126         * WebProcess/FullScreen/WebFullScreenManager.h: Added.
127         * WebProcess/FullScreen/WebFullScreenManager.messages.in: Added.
128         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
129         (WebKit::WebChromeClient::supportsFullScreenForElement): Pass through to WebFullScreenManager.
130         (WebKit::WebChromeClient::enterFullScreenForElement): Ditto.
131         (WebKit::WebChromeClient::exitFullScreenForElement): Ditto.
132         * WebProcess/WebPage/WebPage.cpp:
133         (WebKit::WebPage::close): Invalidate and clear m_fullScreenManager.
134         (WebKit::WebPage::fullScreenManager): Lazy instantiation of m_fullScreenManager.
135         (WebKit::WebPage::didReceiveMessage): Pass messages through to WebFullScreenManager.
136         * WebProcess/WebPage/WebPage.h:
137
138 2011-03-08  Jer Noble  <jer.noble@apple.com>
139
140         Reviewed by Sam Weinig.
141
142         WebKit2: Plumb through the "supportsFullScreen" preference.
143         https://bugs.webkit.org/show_bug.cgi?id=55261
144
145         The "supportsFullScreen" preference needs to be plumbed through from
146         the UIProcess to the WebProcess.
147
148         * Shared/WebPreferencesStore.h: Add a new macro entry.
149         * UIProcess/API/C/WKPreferences.cpp: Implement preferences getter and setter.
150         (WKPreferencesSetFullScreenEnabled):
151         (WKPreferencesGetFullScreenEnabled):
152         * UIProcess/API/C/WKPreferences.h:
153         * WebProcess/WebPage/WebPage.cpp:
154         (WebKit::WebPage::updatePreferences): Sync the fullScreenEnabled setting through to
155             the settings object.
156
157 2011-03-08  Jeff Miller  <jeffm@apple.com>
158
159         Reviewed by Adele Peterson.
160
161         WebKit2: Implement Windows glue for Undo/Redo
162         https://bugs.webkit.org/show_bug.cgi?id=55961
163         
164         Expose Undo/Redo infrastructure through WKView on Windows by
165         adding an undo client as well as APIs to reapply and unapply
166         an edit command.
167
168         * UIProcess/API/C/win/WKView.cpp:
169         (WKViewSetViewUndoClient): Added.
170         (WKViewReapplyEditCommand): Added.
171         (WKViewUnapplyEditCommand): Added.
172         * UIProcess/API/C/win/WKView.h: Added WKViewUndoClient, WKViewSetViewUndoClient(), and WKViewUnapplyEditCommand().
173         * UIProcess/WebPageProxy.cpp:
174         (WebKit::WebPageProxy::isValidEditCommand): Added, used to validated an edit command from a WKView API.
175         * UIProcess/WebPageProxy.h: Added isValidEditCommand().
176         * UIProcess/win/WebUndoClient.cpp: Added, APIClient for WKViewUndoClient. 
177         (WebKit::WebUndoClient::registerEditCommand): Added.
178         (WebKit::WebUndoClient::clearAllEditCommands): Added.
179         * UIProcess/win/WebUndoClient.h: Added, APIClient for WKViewUndoClient.
180         * UIProcess/win/WebView.cpp:
181         (WebKit::WebView::initializeUndoClient): Added.
182         (WebKit::WebView::close): Clear out undo client.
183         (WebKit::WebView::registerEditCommand): Implemented to call through to WKViewUndoClient.
184         (WebKit::WebView::clearAllEditCommands): Implmented to call through to WKViewUndoClient.
185         (WebKit::WebView::reapplyEditCommand): Added.
186         (WebKit::WebView::unapplyEditCommand): Added.
187         * UIProcess/win/WebView.h: Added undo client support.
188         * win/WebKit2.vcproj: Added WebUndoClient.cpp and WebUndoClient.h.
189
190 2011-03-08  Jeff Miller  <jeffm@apple.com>
191
192         Reviewed by Sam Weinig.
193
194         WebKit2: Expose WebEditCommandProxy in the C API on Windows
195         https://bugs.webkit.org/show_bug.cgi?id=55962
196         
197         Make WebEditCommandProxy a subclass of APIObject, and define
198         WKEditCommandRef as the type that will be exposed through the C API.
199
200         * Shared/API/c/win/WKBaseWin.h: Add WKEditCommandRef.
201         * Shared/APIObject.h: Add platform-specific TypeEditCommandProxy.
202         * UIProcess/API/C/win/WKAPICastWin.h: Add API mapping for WKEditCommandRef.
203         * UIProcess/WebEditCommandProxy.h: Subclass WebEditCommandProxy from APIObject.
204         (WebKit::WebEditCommandProxy::type): Added.
205
206 2011-03-08  Jeff Miller  <jeffm@apple.com>
207
208         Reviewed by Oliver Hunt.
209
210         WebKit2: Redo is broken
211         https://bugs.webkit.org/show_bug.cgi?id=55978
212         
213         WebEditCommandProxy::unapply() and WebEditCommandProxy::reapply() were registering the wrong edit command when an undo or redo happens.
214         For example, when we unapply(), we should register a Redo command, not an Undo command.
215
216         * UIProcess/WebEditCommandProxy.cpp:
217         (WebKit::WebEditCommandProxy::unapply): Register a Redo command, not an Undo command.
218         (WebKit::WebEditCommandProxy::reapply): Register an Undo command, not a Redo command.
219
220 2011-03-08  Brent Fulgham  <bfulgham@webkit.org>
221
222         Reviewed by Adam Roben.
223
224         https://bugs.webkit.org/show_bug.cgi?id=55977
225         Refine CF/CFNet distinctions for better code sharing.
226         1. Rename Downloads/cf/win/DownloadCFNetWin.cpp to DownloadCFWin.cpp
227            since it does not use any CFNETWORK features.
228         2. Create new cfnet directory.
229         3. Move Downloads/cf/DownloadCFNet.cpp to Downloads/cfnet
230         4. Update project file.
231
232         * WebProcess/Downloads/cf/DownloadCFNet.cpp: Removed.
233         * WebProcess/Downloads/cf/win/DownloadCFNetWin.cpp: Removed.
234         * WebProcess/Downloads/cf/win/DownloadCFWin.cpp: Copied from WebProcess/Downloads/cf/win/DownloadCFNetWin.cpp.
235         * WebProcess/Downloads/cfnet: Added.
236         * WebProcess/Downloads/cfnet/DownloadCFNet.cpp: Copied from WebProcess/Downloads/cf/DownloadCFNet.cpp.
237         * win/WebKit2.vcproj:
238
239 2011-03-08  Mark Rowe  <mrowe@apple.com>
240
241         Reviewed by Brady Eidson.
242
243         <http://webkit.org/b/55976> Provisional URL should be loaded when restoring session state even if there are back / forward list entries.
244
245         * UIProcess/cf/WebPageProxyCF.cpp:
246         (WebKit::WebPageProxy::restoreFromSessionStateData): If there's a provisional URL that we will load then restore the session state
247         without navigating to the current item.
248         * WebProcess/WebPage/WebPage.messages.in: Expose the ability to restore the session state without navigating to the current item.
249
250 2011-03-08  Brent Fulgham  <bfulgham@webkit.org>
251
252         Reviewed by Anders Carlsson.
253
254         https://bugs.webkit.org/show_bug.cgi?id=55956
255         WebKit2 Changes to correct WinCairo port build
256
257         * Shared/LayerTreeContext.h: Don't exclude CoreIPC declarations for non-accelerated
258           compositing case.
259         * UIProcess/DrawingAreaProxy.h: Add "stdint.h" include needed for Cairo build.
260         * UIProcess/DrawingAreaProxyImpl.cpp: Exclude accelerated compositing code for
261           WinCairo build.
262         (WebKit::DrawingAreaProxyImpl::~DrawingAreaProxyImpl):
263         (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):
264         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
265         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
266         (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState):
267         (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
268         * UIProcess/DrawingAreaProxyImpl.h: Exclude declarations for code only used when
269           accelerated compositing is enabled.
270         (WebKit::DrawingAreaProxyImpl::isInAcceleratedCompositingMode):
271         * UIProcess/win/WebView.cpp: Protect CG-specific drawing code.
272         (WebKit::WebView::setFindIndicator):
273         * WebProcess/Downloads/Download.h: Allow CFLite implentation to share overwrite flag,
274           as well as destination and bundle paths.
275         * WebProcess/Downloads/curl/DownloadCurl.cpp: Remove stub (to share CFNet implementation
276           of file handling.  This will be moved to a common area in a future patch.)
277         * WebProcess/WebPage/DrawingAreaImpl.cpp: Exclude accelerated-compositing paths.
278         (WebKit::DrawingAreaImpl::layerHostDidFlushLayers):
279         (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState):
280         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
281         * WebProcess/WebPage/WebPage.cpp: Protect CG-specific drawing code.
282         (WebKit::WebPage::drawRectToPDF):
283         (WebKit::WebPage::drawPagesToPDF):
284         * win/WebKit2.vcproj: Exclude unused LayerTreeContext from WinCairo
285
286 2011-03-08  Ivan Krstić  <ike@apple.com>
287
288         Reviewed by Sam Weinig.
289
290         Re-fix: can't paste from 3rd party text editor into WebKit2 window
291         <rdar://problem/8978624>
292
293         * WebProcess/com.apple.WebProcess.sb:
294
295 2011-03-08  Martin Robinson  <mrobinson@igalia.com>
296
297         Fix the WebKit2 compilation after r80578.
298
299         * UIProcess/gtk/WebView.cpp:
300         (WebKit::WebView::setFocus): Added.
301         * UIProcess/gtk/WebView.h:
302
303 2011-03-08  Jessie Berlin  <jberlin@apple.com>
304
305         Reviewed by Anders Carlsson.
306
307         Crash in CFNetwork visiting google.com
308         https://bugs.webkit.org/show_bug.cgi?id=55958
309
310         * Shared/API/c/cf/WKURLResponseCF.cpp:
311         (WKURLResponseCopyCFURLResponse):
312         If the response to copy is null, return 0;
313
314 2011-03-08  John Sullivan  <sullivan@apple.com>
315
316         Reverted the patch for https://bugs.webkit.org/show_bug.cgi?id=55940
317         
318         The patch was insufficient, and it wasn't useful for the intended client use either.
319
320         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
321         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
322         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
323
324 2011-03-08  Alejandro G. Castro  <alex@igalia.com>
325
326         Unreviewed, fixed GTK+ compilation after r80569.
327
328         * UIProcess/gtk/WebView.cpp:
329         (WebKit::WebView::windowToScreen):
330         * UIProcess/gtk/WebView.h:
331
332 2011-03-08  Chris Fleizach  <cfleizach@apple.com>
333
334         Reviewed by Sam Weinig.
335
336         WK2: Cannot set focus on an element when focus is outside of WKView
337         https://bugs.webkit.org/show_bug.cgi?id=55281
338
339         * UIProcess/API/mac/PageClientImpl.h:
340         * UIProcess/API/mac/PageClientImpl.mm:
341         (WebKit::PageClientImpl::setFocus):
342         * UIProcess/API/qt/qwkpage_p.h:
343         (QWKPagePrivate::setFocus):
344         * UIProcess/PageClient.h:
345         * UIProcess/WebPageProxy.cpp:
346         (WebKit::WebPageProxy::setFocus):
347         * UIProcess/WebPageProxy.h:
348         * UIProcess/WebPageProxy.messages.in:
349         * UIProcess/win/WebView.h:
350         (WebKit::WebView::setFocus):
351         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
352         (WebKit::WebChromeClient::focus):
353         (WebKit::WebChromeClient::unfocus):
354
355 2011-03-08  Jeff Miller  <jeffm@apple.com>
356
357         Unreviewed, fix last change so WKBaseWin.h is in alphabetical order in the project XML.
358
359         * win/WebKit2.vcproj: Move WKBaseWin.h to be in alphabetical order.
360
361 2011-03-08  Jeff Miller  <jeffm@apple.com>
362
363         Reviewed by Darin Adler.
364
365         Remove Source/WebKit2/UIProcess/API/C/win/WKBaseWin.h
366         https://bugs.webkit.org/show_bug.cgi?id=55952
367
368         * UIProcess/API/C/win/WKBaseWin.h: Removed.
369         * win/WebKit2.vcproj: Refer to the Shared version of WKBaseWin.h instead of the one in UIProcess.
370
371 2011-03-08  Alejandro G. Castro  <alex@igalia.com>
372
373         Reviewed by Martin Robinson.
374
375         [GTK] Add new files to compilation after r77974
376         https://bugs.webkit.org/show_bug.cgi?id=54076
377
378         The commit added new code to allow passing context to policy
379         delegate methods, we also added dummy ResourceRequest and
380         ResourceResponse decoders until we implement them.
381
382         * GNUmakefile.am:
383         * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
384         (CoreIPC::decodeResourceRequest):
385         (CoreIPC::decodeResourceResponse):
386
387 2011-03-08  Chris Fleizach  <cfleizach@apple.com>
388
389         Reviewed by Darin Adler.
390
391         AX: Webkit2 not sending UAZoomFocusChanged notifications
392         https://bugs.webkit.org/show_bug.cgi?id=55916
393
394         Needed to implement the windowToScreen() method so that the right frame
395         could be calculated to send for zoom focus changes.
396
397         * UIProcess/API/mac/PageClientImpl.h:
398         * UIProcess/API/mac/PageClientImpl.mm:
399         (WebKit::PageClientImpl::windowToScreen):
400         * UIProcess/API/qt/qwkpage.cpp:
401         (QWKPagePrivate::windowToScreen):
402         * UIProcess/API/qt/qwkpage_p.h:
403         * UIProcess/PageClient.h:
404         * UIProcess/WebPageProxy.cpp:
405         (WebKit::WebPageProxy::windowToScreen):
406         * UIProcess/WebPageProxy.h:
407         * UIProcess/WebPageProxy.messages.in:
408         * UIProcess/win/WebView.cpp:
409         (WebKit::WebView::windowToScreen):
410         * UIProcess/win/WebView.h:
411         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
412         (WebKit::WebChromeClient::windowToScreen):
413         * WebProcess/WebPage/WebPage.cpp:
414         (WebKit::WebPage::windowToScreen):
415         * WebProcess/WebPage/WebPage.h:
416
417 2011-03-08  John Sullivan  <sullivan@apple.com>
418
419         Reviewed by Darin Adler.
420
421         https://bugs.webkit.org/show_bug.cgi?id=55940
422         WebKit2 should support Ignore policy from injected bundle client
423
424         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
425         Added WKBundlePagePolicyActionIgnore.
426         
427         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
428         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
429         If the injected bundle client returns WKBundlePagePolicyActionIgnore, convert it
430         to the loader's PolicyIgnore.
431
432 2011-03-08  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
433
434         Reviewed by Kenneth Rohde Christiansen.
435
436         [Qt] [Symbian] [WK2] Fix building WebKit 2 API tests
437         https://bugs.webkit.org/show_bug.cgi?id=55876
438
439         Make sure TESTS_SOURCE_DIR is set for Symbian the same way
440         as it is for WK1.
441
442         * UIProcess/API/qt/tests/qgraphicswkview/tst_qgraphicswkview.cpp:
443         (tst_QGraphicsWKView::loadEmptyPage):
444         * UIProcess/API/qt/tests/tests.pri:
445
446 2011-03-07  Damian Kaleta  <dkaleta@apple.com>
447
448         Reviewed by Anders Carlsson.
449
450         QuickTime plugin should opt in to a 32-bit non-executable heap
451         https://bugs.webkit.org/show_bug.cgi?id=55704
452         <rdar://problem/8105706>
453
454         * UIProcess/Plugins/PluginProcessProxy.cpp:
455         (WebKit::pluginNeedsExecutableHeap): Decides per plugin if it should opt-in to a 32-bit non-executable heap.
456         By default it should opt-out.
457         (WebKit::PluginProcessProxy::PluginProcessProxy):
458
459 2011-03-07  Sam Weinig  <sam@webkit.org>
460
461         Reviewed by Anders Carlsson.
462
463         Add unableToImplementPolicy callback for WebKit2 policy client
464         <rdar://problem/9071902>
465         https://bugs.webkit.org/show_bug.cgi?id=55884
466
467         * UIProcess/API/C/WKPage.h:
468         * UIProcess/WebPageProxy.cpp:
469         (WebKit::WebPageProxy::unableToImplementPolicy):
470         * UIProcess/WebPageProxy.h:
471         * UIProcess/WebPageProxy.messages.in:
472         * UIProcess/WebPolicyClient.cpp:
473         (WebKit::WebPolicyClient::unableToImplementPolicy):
474         * UIProcess/WebPolicyClient.h:
475         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
476         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
477         (WebKit::InjectedBundlePagePolicyClient::unableToImplementPolicy):
478         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
479         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
480         (WebKit::WebFrameLoaderClient::dispatchUnableToImplementPolicy):
481         Pipe unableToImplementPolicy through both the bundle and the main WebKit2 API.
482
483 2011-03-07  Sam Weinig  <sam@webkit.org>
484
485         Reviewed by Anders Carlsson.
486
487         Replace WebKit2's decidePolicyForMIMEType with decidePolicyForResponse
488         https://bugs.webkit.org/show_bug.cgi?id=55827
489
490         - Renamed FrameLoaderClient::dispatchDecidePolicyForMIMEType to dispatchDecidePolicyForResponse
491           and pass the entire response, instead of just the MIMEType.
492         - Updated both UIProcess API and bundle API to also be based on the whole response, not just the
493           MIMEType.
494
495         * UIProcess/API/C/WKPage.h:
496         * UIProcess/WebPageProxy.cpp:
497         (WebKit::WebPageProxy::decidePolicyForResponse):
498         * UIProcess/WebPageProxy.h:
499         * UIProcess/WebPageProxy.messages.in:
500         * UIProcess/WebPolicyClient.cpp:
501         (WebKit::WebPolicyClient::decidePolicyForResponse):
502         * UIProcess/WebPolicyClient.h:
503         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
504         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
505         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):
506         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
507         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
508         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
509         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
510
511 2011-03-06  Jessie Berlin  <jberlin@apple.com>
512
513         Reviewed by Sam Weinig.
514
515         WebKit2: Use CFNetwork Sessions API.
516         https://bugs.webkit.org/show_bug.cgi?id=55435.
517
518         When Private Browsing is enabled, use cookies from a in-memory cookie storage based on the
519         Private Browsing Storage Session.
520
521         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
522         (InitWebCoreSystemInterface):
523         Add support for using the new WKSI functions in WebCore.
524
525 2011-03-06  Oleg Romashin  <romaxa@gmail.com>
526
527         Reviewed by Kenneth Rohde Christiansen.
528
529         [Qt][WK2] Make Qt port compiling with ENABLE_PLUGIN_PROCESS=1, part1
530         Adding dummy Qt files for Plugin Process implementation,
531         Adding missing sources into Qt pro files
532         https://bugs.webkit.org/show_bug.cgi?id=55719
533
534         * DerivedSources.pro:
535         * PluginProcess/qt: Added.
536         * PluginProcess/qt/PluginControllerProxyQt.cpp: Added.
537         (WebKit::PluginControllerProxy::platformInitialize):
538         (WebKit::PluginControllerProxy::platformDestroy):
539         (WebKit::PluginControllerProxy::platformGeometryDidChange):
540         * PluginProcess/qt/PluginProcessMainQt.cpp: Added.
541         (WebKit::PluginProcessMain):
542         * PluginProcess/qt/PluginProcessQt.cpp: Added.
543         (WebKit::PluginProcess::platformInitialize):
544         * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp: Added.
545         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
546         * WebKit2.pri:
547         * WebKit2.pro:
548         * WebKit2API.pri:
549         * WebProcess/Plugins/Netscape/qt/PluginProxyQt.cpp: Added.
550         (WebKit::PluginProxy::needsBackingStore):
551
552 2011-03-05  Sam Weinig  <sam@webkit.org>
553
554         Reviewed by Dan Bernstein.
555
556         Remove unneeded onPageClose function from DrawingArea
557         https://bugs.webkit.org/show_bug.cgi?id=55836
558
559         * WebProcess/WebPage/DrawingArea.h:
560         Remove empty function.
561
562         * WebProcess/WebPage/WebPage.cpp:
563         (WebKit::WebPage::close):
564         Remove only called
565
566 2011-03-04  Jon Honeycutt  <jhoneycutt@apple.com>
567
568         WK2 Mac build fix.
569
570         * UIProcess/API/C/WKPage.cpp:
571         (WKPageComputePagesForPrinting):
572         (WKPageBeginPrinting):
573
574         * UIProcess/API/C/WKPagePrivate.h:
575
576 2011-03-04  Jon Honeycutt  <jhoneycutt@apple.com>
577
578         WK2 Mac build fix.
579
580         * UIProcess/API/C/WKPagePrivate.h:
581
582 2011-03-04  Jon Honeycutt  <jhoneycutt@apple.com>
583
584         WK2 needs printing support on Windows
585         https://bugs.webkit.org/show_bug.cgi?id=55800
586         <rdar://problem/8903808>
587
588         Reviewed by Darin Adler.
589
590         * UIProcess/API/C/WKPage.cpp:
591         (ComputedPagesContext::ComputedPagesContext):
592         (computedPagesCallback):
593         From the Vector of WebCore::IntRects, build up a Vector of WKRects.
594         Call the callback, passing these rects and the scale factor.
595         (printInfoFromWKPrintInfo):
596         Return a PrintInfo structure from the WKPrintInfo.
597         (WKPageComputePagesForPrinting):
598         Call WebPageProxy::computePagesForPrinting(). Pass
599         computedPagesCallback as the callback function, so that we can
600         translate the WebCore rect type to WKRect before calling the caller's
601         callback function.
602         (WKPageBeginPrinting):
603         Call WebPageProxy::beginPrinting().
604         (WKPageDrawPagesToPDF):
605         Call WebPageProxy::drawPagesToPDF().
606
607         * UIProcess/API/C/WKPagePrivate.h:
608         Declare the WKPrintInfo type and new functions.
609
610         * UIProcess/WebPageProxy.cpp:
611         Compile this code on Windows.
612
613         * UIProcess/WebPageProxy.h:
614         Ditto.
615
616         * UIProcess/win/WebView.cpp:
617         (WebKit::WebView::paint):
618         We're painting the window; leave printing mode.
619
620         * WebProcess/WebPage/WebPage.cpp:
621         Compile this code on Windows.
622
623         * WebProcess/WebPage/WebPage.h:
624         Ditto.
625
626         * WebProcess/WebPage/WebPage.messages.in:
627         Ditto.
628
629 2011-03-04  Steve Falkenburg  <sfalken@apple.com>
630
631         Reviewed by Darin Adler.
632
633         Adopt VersionStamper tool for Windows WebKit DLLs
634         https://bugs.webkit.org/show_bug.cgi?id=55784
635         <rdar://problem/9021320>
636
637         We now use a tool to stamp the version number onto the Apple WebKit DLLs
638         during the post-build step.
639
640         Fetch the WebKit version from a string resource instead of the version resource.
641
642         * UIProcess/win/WebPageProxyWin.cpp:
643         (WebKit::userVisibleWebKitVersionString): Fetch version from a string resource.
644         * win/WebKit2.rc: Removed version, added stringtable.
645         * win/WebKit2WebProcess.rc: Removed.
646         * win/WebKit2WebProcess.vcproj:
647         * win/WebKit2WebProcessPostBuild.cmd: Don't run autoversion script. It isn't used in this project.
648         * win/WebKit2WebProcessPreBuild.cmd: Stamp version.
649         * win/WebKitPostBuild.cmd: Stamp version.
650
651 2011-03-04  Jeff Miller  <jeffm@apple.com>
652
653         Reviewed by Darin Adler.
654
655         Add WKPageValidateCommand()
656         https://bugs.webkit.org/show_bug.cgi?id=55793
657         
658         On the Mac, validation of edit menu commands is handled within WebKit2 in WKView.mm.
659         However, on Windows we need to do this in the client, so expose this functionality
660         in the API via WKPageValidateCommand().
661         
662         Change the Mac implementation to call WebPageProxy::validateCommand() with a callback
663         to match this new API, so it no longer has to go through PageClient to get notified
664         when a command is validated.  This makes PageClient::setEditCommandState() obsolete,
665         so I removed the stub implementations in qt and gtk as well.
666
667         * UIProcess/API/C/WKPage.cpp:
668         (WKPageValidateCommand): Added.
669         * UIProcess/API/C/WKPage.h: Added WKPageValidateCommand().
670         * UIProcess/API/mac/PageClientImpl.h: Removed setEditCommandState().
671         * UIProcess/API/mac/PageClientImpl.mm: Removed setEditCommandState().
672         * UIProcess/API/mac/WKView.mm:
673         (validateCommandCallback): Added.
674         (-[WKView validateUserInterfaceItem:]): Pass callback to validateCommand().
675         * UIProcess/API/qt/qwkpage.cpp: Removed setEditCommandState().
676         * UIProcess/API/qt/qwkpage_p.h: Removed setEditCommandState().
677         * UIProcess/PageClient.h: Removed setEditCommandState().
678         * UIProcess/WebPageProxy.cpp: Removed didValidateCommand().
679         (WebKit::WebPageProxy::validateCommand): This now takes a callback.
680         (WebKit::WebPageProxy::validateCommandCallback): Added.
681         (WebKit::WebPageProxy::processDidCrash): Invalidate m_validateCommandCallbacks.
682         * UIProcess/WebPageProxy.h: Removed didValidateCommand(), validateCommand() now takes a callback.
683         (WebKit::ValidateCommandCallback::create): Added.
684         (WebKit::ValidateCommandCallback::~ValidateCommandCallback): Added.
685         (WebKit::ValidateCommandCallback::performCallbackWithReturnValue): Added.
686         (WebKit::ValidateCommandCallback::invalidate): Added.
687         (WebKit::ValidateCommandCallback::ValidateCommandCallback): Added.
688         * UIProcess/WebPageProxy.messages.in: Removed DidValidateCommand, added ValidateCommandCallback.
689         * UIProcess/gtk/WebView.cpp: Removed setEditCommandState().
690         * UIProcess/gtk/WebView.h: Removed setEditCommandState().
691         * UIProcess/win/WebView.cpp: Removed setEditCommandState().
692         * UIProcess/win/WebView.h: Removed setEditCommandState().
693         * WebProcess/WebPage/WebPage.cpp:
694         (WebKit::WebPage::validateCommand): This now takes a callbackID.
695         * WebProcess/WebPage/WebPage.h: validateCommand now takes a callbackID.
696         * WebProcess/WebPage/WebPage.messages.in: ValidateCommand now takes a callbackID.
697
698 2011-03-04  Brian Weinstein  <bweinstein@apple.com>
699
700         Reviewed by Darin Adler.
701
702         Reference-counting for WKBundlePageResourceLoadClient::willSendRequestForFrame seems unclear/wrong
703         https://bugs.webkit.org/show_bug.cgi?id=53919
704         <rdar://problem/8966020>
705         
706         Adopt the result of m_client.willSendRequestForFrame (which will be leaked by the client).
707
708         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
709         (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
710
711 2011-03-04  Darin Adler  <darin@apple.com>
712
713         Reviewed by Mark Rowe.
714
715         WebKit2 session state should include even loads too new to be in the back/forward list
716         https://bugs.webkit.org/show_bug.cgi?id=55781
717         part of <rdar://problem/8968847>
718
719         * UIProcess/cf/WebPageProxyCF.cpp:
720         (WebKit::WebPageProxy::sessionStateData): Save URLs that are early enough in the loading
721         process to not be included in the back/forward list yet: The pending API request URL and
722         the provisional URL.
723         (WebKit::WebPageProxy::restoreFromSessionStateData): Call loadURL if the back/forward
724         list is not restored and a URL is present. Later we can improve the way we handle the
725         case where we have both a back/forward list and a URL.
726
727 2011-03-04  Jessie Berlin  <jberlin@apple.com>
728
729         Reviewed by Darin Adler.
730
731         WebKit2: Use CFNetwork Sessions API.
732         https://bugs.webkit.org/show_bug.cgi?id=55435.
733
734         Add in the CFURLSTORAGESESSIONS guards that I incorrectly left out because the code was
735         contained within guards that made USE(CFURLSTORAGESESSIONS) always be true.
736
737         * UIProcess/mac/WebContextMac.mm:
738         (WebKit::WebContext::platformInitializeWebProcess):
739         * UIProcess/win/WebContextWin.cpp:
740         (WebKit::WebContext::platformInitializeWebProcess):
741
742 2011-03-04  Jessie Berlin  <jberlin@apple.com>
743
744         Reviewed by Maciej Stachowiak.
745
746         WebKit2: Use CFNetwork Sessions API.
747         https://bugs.webkit.org/show_bug.cgi?id=55435.
748
749         When Private Browsing is enabled, get the cached url response from the cache associated with
750         the Private Browsing Storage Session.
751
752         * WebProcess/WebPage/mac/WebPageMac.mm:
753         (WebKit::WebPage::platformHasLocalDataForURL):
754         If Private Browsing is enabled, call into WKSI to get the response.
755         (WebKit::WebPage::cachedResponseMIMETypeForURL):
756         Ditto.
757         * WebProcess/WebPage/win/WebPageWin.cpp:
758         (WebKit::WebPage::platformHasLocalDataForURL):
759         If Private Browsing is enabled, call into WKSI to get the CFURLCacheRef.
760         (WebKit::WebPage::cachedResponseMIMETypeForURL):
761         Ditto.
762
763 2011-03-04  Jeff Miller  <jeffm@apple.com>
764
765         Reviewed by Darin Adler.
766
767         Move WKViewExecuteCommand() to WKPageExecuteCommand()
768         https://bugs.webkit.org/show_bug.cgi?id=55744
769         
770         Executing a command operates on a page, so it makes more sense for it to be in WKPage.
771         This also makes it available on all platforms, not just Windows.
772
773         * UIProcess/API/C/WKPage.cpp:
774         (WKPageExecuteCommand): Added.
775         * UIProcess/API/C/WKPage.h: Add WKPageExecuteCommand().
776         * UIProcess/API/C/win/WKView.cpp: Remove WKViewExecuteCommand().
777         * UIProcess/API/C/win/WKView.h: Remove WKViewExecuteCommand().
778
779 2011-03-04  Dan Bernstein  <mitz@apple.com>
780
781         LLVM Compiler build fix.
782
783         * WebProcess/WebPage/WebPage.cpp:
784         (WebKit::WebPage::runJavaScriptInMainFrame):
785
786 2011-03-03  Timothy Hatcher  <timothy@apple.com>
787
788         Make the WKPageRunJavaScriptFunction callback take a WKSerializedScriptValueRef.
789
790         https://webkit.org/b/55623
791
792         Reviewed by Darin Adler.
793
794         * UIProcess/API/C/WKPage.cpp:
795         (WKPageRunJavaScriptInMainFrame): Use ScriptValueCallback.
796         (callRunJavaScriptBlockAndRelease): Use WKSerializedScriptValueRef.
797         * UIProcess/API/C/WKPage.h: Use WKSerializedScriptValueRef.
798         * UIProcess/WebPageProxy.cpp:
799         (WebKit::WebPageProxy::close): Call invalidateCallbackMap for m_scriptValueCallbacks.
800         (WebKit::WebPageProxy::runJavaScriptInMainFrame): Take a ScriptValueCallback.
801         (WebKit::WebPageProxy::scriptValueCallback): Added. Create a WebSerializedScriptValue
802         from the DataReference before calling the callback.
803         (WebKit::WebPageProxy::processDidCrash): Call invalidateCallbackMap for m_scriptValueCallbacks.
804         * UIProcess/WebPageProxy.h: Added ScriptValueCallback and m_scriptValueCallbacks.
805         * UIProcess/WebPageProxy.messages.in: Added ScriptValueCallback.
806         * WebProcess/WebPage/WebPage.cpp:
807         (WebKit::WebPage::runJavaScriptInMainFrame): Create a DataReference from a WebCore::SerializedScriptValue.
808         And use ScriptValueCallback to send the message back.
809
810 2011-03-03  Brian Weinstein  <bweinstein@apple.com>
811
812         Reviewed by Adam Roben.
813
814         Cleanup from https://bugs.webkit.org/show_bug.cgi?id=55427.
815         
816         Call WebCore::startObservingCookieChanges and WebCore::stopObservingCookieChanges
817         on all platforms, and stub the functions on platforms that don't implement them.
818
819         * WebProcess/Cookies/WebCookieManager.cpp:
820         (WebKit::WebCookieManager::startObservingCookieChanges):
821         (WebKit::WebCookieManager::stopObservingCookieChanges):
822
823 2011-03-03  Jeff Miller  <jeffm@apple.com>
824
825         Reviewed by Darin Adler.
826
827         Refactor classes in GenericCallback.h
828         https://bugs.webkit.org/show_bug.cgi?id=55732
829         
830         Since we're going to need to add additional callback classes, make a CallbackBase class that manages
831         the context and the callback ID.  The existing callback classes (VoidCallback, GenericCallback, and
832         ComputedPagesCallback) now all derive from CallbackBase.
833         
834         Fix bug in VoidCallback where we meant to implement the destructor, but we were implementing the default
835         constructor instead (we forgot the leading ~).
836  
837         * UIProcess/GenericCallback.h:
838         (WebKit::CallbackBase::~CallbackBase):
839         (WebKit::CallbackBase::callbackID):
840         (WebKit::CallbackBase::CallbackBase):
841         (WebKit::CallbackBase::context):
842         (WebKit::CallbackBase::generateCallbackID):
843         (WebKit::VoidCallback::~VoidCallback):
844         (WebKit::VoidCallback::performCallback):
845         (WebKit::VoidCallback::invalidate):
846         (WebKit::VoidCallback::VoidCallback):
847         (WebKit::GenericCallback::create):
848         (WebKit::GenericCallback::~GenericCallback):
849         (WebKit::GenericCallback::performCallbackWithReturnValue):
850         (WebKit::GenericCallback::invalidate):
851         (WebKit::GenericCallback::GenericCallback):
852         (WebKit::ComputedPagesCallback::create):
853         (WebKit::ComputedPagesCallback::~ComputedPagesCallback):
854         (WebKit::ComputedPagesCallback::performCallbackWithReturnValue):
855         (WebKit::ComputedPagesCallback::invalidate):
856         (WebKit::ComputedPagesCallback::ComputedPagesCallback):
857
858 2011-03-03  Adam Roben  <aroben@apple.com>
859
860         Don't assume the web process has had a chance to paint before the view has to paint
861
862         Fixes <http://webkit.org/b/55739> REGRESSION (r80307): Lots of tests crashing in
863         BackingStore::paint
864
865         Reviewed by Anders Carlsson.
866
867         * UIProcess/DrawingAreaProxyImpl.cpp:
868         (WebKit::DrawingAreaProxyImpl::paint): Bail if the web process hasn't had a chance to paint
869         yet.
870
871 2011-03-03  Adam Roben  <aroben@apple.com>
872
873         Throw away DrawingAreaProxyImpl's backing store after not painting for 5 seconds
874
875         The intent is to save memory for views that aren't painting.
876
877         Fixes <http://webkit.org/b/51262> <rdar://problem/8782537> WebPageProxy should delete its
878         backing store after not painting for a while
879
880         Reviewed by Anders Carlsson.
881
882         * UIProcess/DrawingAreaProxyImpl.cpp:
883         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): Initialize our timer.
884         (WebKit::DrawingAreaProxyImpl::paint): Don't bail if we don't have a backing store (but do
885         bail if we're in accelerated compositing mode); we might have thrown it away to save memory
886         but now are being asked to paint by the view. The existing code in this function will handle
887         getting a new backing store if possible by blocking for a little while to try to receive a
888         DidUpdateBackingStoreState message. Added an assertion that we do have a backing store if we
889         don't have any outstanding UpdateBackingStoreState requests. After painting, call
890         discardBackingStoreSoon to update our timer.
891         (WebKit::DrawingAreaProxyImpl::discardBackingStoreSoon): Set the timer for 5 seconds in the
892         future.
893         (WebKit::DrawingAreaProxyImpl::discardBackingStore): Throw away the backing store, and tell
894         the web process we'll need a full backing store update on the next paint.
895
896         * UIProcess/DrawingAreaProxyImpl.h: Added m_discardBackingStoreTimer.
897
898 2011-03-03  Adam Roben  <aroben@apple.com>
899
900         Add a way to tell the web process to perform a full backing store update on its next paint
901
902         Messages::DrawingArea::UpdateBackingStoreState now takes a boolean specifying whether the
903         full backing store update should happen immediately or should be deferred until the next
904         paint or compositing mode change occurs. The deferred update isn't used yet, but will be
905         used when we start throwing away backing stores to save memory.
906
907         Fixes <http://webkit.org/b/55730> UI process needs a way to tell the web process its backing
908         store needs a full update on the next paint
909
910         Reviewed by Anders Carlsson.
911
912         * UIProcess/DrawingAreaProxyImpl.cpp:
913         (WebKit::DrawingAreaProxyImpl::paint): If we have an outstanding backing store state change
914         request, tell the web process to perform the backing store update right away, in case we
915         previously told it it could defer the update.
916         (WebKit::DrawingAreaProxyImpl::sizeDidChange): Specify that we need an immediate backing
917         store update.
918         (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState): We can no longer assert that we
919         were waiting for a DidUpdateBackingStoreState message when we receive one, as it's possible
920         for the web process to decide to send us this message on its own (if we asked it to do a
921         deferred backing store update and then it needed to paint some part of the page). Specify
922         that we need an immediate backing store update if the web process hasn't updated to our
923         latest state, as we're about to draw potentially out-of-date bits to the screen and want to
924         get the right bits as soon as possible. Also added a FIXME about a potential optimization.
925         (WebKit::DrawingAreaProxyImpl::backingStoreStateDidChange): Added a RespondImmediatelyOrNot
926         parameter, which is just passed through to sendUpdateBackingStoreState.
927         (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState): Added a RespondImmediatelyOrNot
928         parameter that is used to specify to the web process whether to perform the full backing
929         store update immediately. We now only wait for a DidUpdateBackingStoreState message (and
930         thus suppress any more UpdateBackingStoreState messages until one is received) when we ask
931         the web process for an immediate response; otherwise we could end up accidentally calling
932         waitForAndDispatchDidUpdateBackingStoreState when the web process hasn't been told to send
933         us such a message.
934
935         * UIProcess/DrawingAreaProxyImpl.h: Added RespondImmediatelyOrNot.
936
937         * WebProcess/WebPage/DrawingArea.h:
938         (WebKit::DrawingArea::updateBackingStoreState): Added respondImmediately argument.
939
940         * WebProcess/WebPage/DrawingArea.messages.in: Added respondImmediately argument to
941         UpdateBackingStoreState message.
942
943         * WebProcess/WebPage/DrawingAreaImpl.cpp:
944         (WebKit::DrawingAreaImpl::DrawingAreaImpl): Initialize new member that's used to track
945         whether we should send a DidUpdateBackingStoreState message instead of an Update or
946         compositing mode change message. This will be set to true when a deferred backing store
947         update is pending.
948         (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): If a deferred update is pending, send a
949         DidUpdateBackingStoreState message instead of a compositing mode change message.
950         (WebKit::DrawingAreaImpl::updateBackingStoreState): Added respondImmediately argument. If
951         we've already been told about this state ID (as can happen when the UI process decides it
952         needs an immediate update to a state that it previously requested a deferred update to),
953         don't bother updating the page's size, etc. In addition, if we've already sent a
954         DidUpdateBackingStoreState message for this state, we don't have to do anything at all.
955         Moved code to send the DidUpdateBackingStoreState message from here...
956         (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): ...to here.
957         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): Always update our dirty region,
958         even if painting is suspended or we're in the process of updating the backing store state.
959         It causes no harm and simplifies the code. If a deferred update is pending, send a
960         DidUpdateBackingStoreState message instead of a compositing mode change message. Also
961         removed a redundant if.
962         (WebKit::DrawingAreaImpl::display): Added an assertion that this isn't called while updating
963         backing store state, as otherwise we might end up sending two DidUpdateBackingStoreState
964         messages. If a deferred update is pending, send a DidUpdateBackingStoreState message instead
965         of an Update message.
966
967         * WebProcess/WebPage/DrawingAreaImpl.h: Updated updateBackingStoreState to match the base
968         class. Added sendDidUpdateBackingStoreState and m_shouldSendDidUpdateBackingStoreState.
969
970 2011-03-03  Andy Estes  <aestes@apple.com>
971
972         Reviewed by Darin Adler.
973
974         When displaying the missing plug-in sheet, pass the 'pluginspage'
975         attribute to the UI process.
976         https://bugs.webkit.org/show_bug.cgi?id=55553
977
978         * UIProcess/API/C/WKPage.h: Add pluginsPageURL as the third argument to
979         missingPluginButtonClicked.
980         * UIProcess/WebPageProxy.cpp:
981         (WebKit::WebPageProxy::missingPluginButtonClicked): Ditto.
982         * UIProcess/WebPageProxy.h: Ditto.
983         * UIProcess/WebPageProxy.messages.in: Ditto.
984         * UIProcess/WebUIClient.cpp:
985         (WebKit::WebUIClient::missingPluginButtonClicked): Ditto.
986         * UIProcess/WebUIClient.h: Ditto.
987         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
988         (WebKit::WebChromeClient::missingPluginButtonClicked): Get the value of
989         pluginspageAttr.
990
991 2011-03-03  Alexey Proskuryakov  <ap@apple.com>
992
993         Suggested by Dan Bernstein.
994
995         Move "const" around "NSString *", so that it suddenly begins to make sense.
996
997         * WebProcess/mac/FullKeyboardAccessWatcher.mm:
998
999 2011-03-03  Jeff Miller  <jeffm@apple.com>
1000
1001         Reviewed by Anders Carlsson.
1002
1003         WebKit2: Add WKViewRef API for executing edit commands
1004         https://bugs.webkit.org/show_bug.cgi?id=49829
1005
1006         Added WKViewExecuteCommand() and documented some of the WebCore EditorCommand strings.
1007
1008         * UIProcess/API/C/win/WKView.cpp:
1009         (WKViewExecuteCommand): Added.
1010         * UIProcess/API/C/win/WKView.h: Added WKViewExecuteCommand() and comment block with WebCore EditorCommand strings.
1011
1012 2011-03-03  Jessie Berlin  <jberlin@apple.com>
1013
1014         Reviewed by Adam Roben.
1015
1016         WebKit2: Use CFNetwork Sessions API.
1017         https://bugs.webkit.org/show_bug.cgi?id=55435
1018
1019         Set the Private Browsing Storage Session on requests when Private Browsing is enabled.
1020
1021         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1022         (InitWebCoreSystemInterface):
1023         Support using WKCopyRequestWithStorageSession in WebCore.
1024
1025 2011-03-03  Adam Roben  <aroben@apple.com>
1026
1027         Don't try to paint outside the page's bounds
1028
1029         When the page is resized smaller, we would allocate a ShareableBitmap at the old, larger
1030         size, even though we only needed to paint at the new, smaller size.
1031
1032         The assertion added in this patch will fire during the WebKit2/ResizeViewWhileHidden API
1033         test if this fix gets broken in the future.
1034
1035         Fixes <http://webkit.org/b/55715> DrawingAreaImpl allocates more memory than necessary when
1036         the page is resized smaller
1037
1038         Reviewed by Anders Carlsson.
1039
1040         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1041         (WebKit::DrawingAreaImpl::updateBackingStoreState): Update our dirty region even if painting
1042         is suspended (but still refrain from updating it when in accelerated compositing mode).
1043         Rather than unite our existing dirty region with the page's new bounds, overwrite our dirty
1044         region with the page's new bounds. This prevents us from accumulating a dirty region that is
1045         larger than the page in the case where the page is being resized smaller.
1046         (WebKit::DrawingAreaImpl::display): Added an assertion that we're not trying to paint
1047         outside of the page's bounds.
1048
1049 2011-03-03  Maciej Stachowiak  <mjs@apple.com>
1050
1051         Reviewed by Brady Eidson.
1052
1053         WebProcess is calling CFURLCacheRemoveAllCachedResponses when loading, results in origin-load for all resources
1054         https://bugs.webkit.org/show_bug.cgi?id=55701
1055         <rdar://problem/9074017>
1056
1057         * Shared/WebProcessCreationParameters.cpp:
1058         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): Initialize cache-clearing
1059         flag parameters to false.
1060         (WebKit::WebProcessCreationParameters::encode): Serialize them properly.
1061         (WebKit::WebProcessCreationParameters::decode): And deserialize.
1062
1063 2011-03-03  Alexey Proskuryakov  <ap@apple.com>
1064
1065         Reviewed by Darin Adler.
1066
1067         REGRESSION (WebKit2): Tab keys no longer observe Full Keyboard Access
1068         https://bugs.webkit.org/show_bug.cgi?id=55633
1069         <rdar://problem/8963023>
1070
1071         * WebKit2.xcodeproj/project.pbxproj:
1072         * WebProcess/mac/FullKeyboardAccessWatcher.h: Added.
1073         * WebProcess/mac/FullKeyboardAccessWatcher.mm: Added.
1074         (-[FullKeyboardAccessWatcher retrieveKeyboardUIModeFromPreferences:]):
1075         (-[FullKeyboardAccessWatcher init]):
1076         (+[FullKeyboardAccessWatcher fullKeyboardAccessEnabled]):
1077         Get the current state of full keyboard access, listening for change notifications.
1078
1079         * WebProcess/WebProcess.h:  Added fullKeyboardAccessEnabled().
1080
1081         * WebProcess/WebProcess.cpp: (WebKit::WebProcess::fullKeyboardAccessEnabled):
1082         WebKit1 also doesn't implement this on platforms other than Mac.
1083
1084         * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::fullKeyboardAccessEnabled):
1085         Just ask FullKeyboardAccessWatcher.
1086
1087         * WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::keyboardUIMode):
1088         * WebProcess/WebCoreSupport/WebChromeClient.h:
1089         Added keyboardUIMode(), removed tabsToLinks().
1090
1091         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::keyboardUIMode):
1092         * WebProcess/WebPage/WebPage.h:
1093         Generate keyboard UI mode from tabToLinks preference and current state of FKA.
1094
1095 2011-03-03  Sam Weinig  <sam@webkit.org>
1096
1097         Reviewed by Anders Carlsson.
1098
1099         Give the Bundle's policy client the option of deciding the policy
1100         https://bugs.webkit.org/show_bug.cgi?id=55699
1101
1102         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1103         Add WKBundlePagePolicyAction enum and make it the return value of
1104         the WKBundlePagePolicyClient functions.
1105
1106         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
1107         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
1108         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
1109         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForMIMEType):
1110         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
1111         Pass the return value back to the caller. For unimplemented functions, return WKBundlePagePolicyActionPassThrough.
1112
1113         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1114         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
1115         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1116         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1117         Call the policy function early if the bundle handles it.
1118
1119 2011-03-02  Brian Weinstein  <bweinstein@apple.com>
1120
1121         Reviewed by Adam Roben.
1122
1123         Rest of WebKit2: Need a way to send notifications to client when cookies change
1124         https://bugs.webkit.org/show_bug.cgi?id=55427
1125         <rdar://problem/9056027>
1126         
1127         This patch adds the communication from the WebProcess <-> UIProcess about starting/stopping
1128         listening for cookies changing, and adds a mechanism for the WebProcess to notify the UIProcess
1129         when the cookies have changed. The WebProcess sends a message to the UIProcess when the cookies
1130         change, and the UIProcess passes this along to the WebCookieManagerProxyClient.
1131
1132         * UIProcess/API/C/WKCookieManager.cpp:
1133         (WKCookieManagerSetClient): Call through to WebCookieManagerProxy.
1134         (WKCookieManagerStartObservingCookieChanges): Ditto.
1135         (WKCookieManagerStopObservingCookieChanges): Ditto.
1136
1137         * UIProcess/API/C/WKCookieManager.h: Add new functions and a WKCookieManagerClient
1138             which is responsible for cookiesDidChange.
1139
1140         * UIProcess/WebCookieManagerProxy.cpp:
1141         (WebKit::WebCookieManagerProxy::initializeClient):
1142         (WebKit::WebCookieManagerProxy::startObservingCookieChanges): Send the message down to the web process.
1143         (WebKit::WebCookieManagerProxy::stopObservingCookieChanges): Ditto.
1144         (WebKit::WebCookieManagerProxy::cookiesDidChange): Tell the WKCookieManagerClient the cookies were
1145             modified.
1146         * UIProcess/WebCookieManagerProxy.h:
1147         * UIProcess/WebCookieManagerProxy.messages.in: Add new messages.
1148
1149         * UIProcess/WebCookieManagerProxyClient.cpp: Added.
1150         (WebKit::WebCookieManagerProxyClient::cookiesDidChange): Calls through to the client saying that
1151             cookies changed.
1152         * UIProcess/WebCookieManagerProxyClient.h: Added.
1153     
1154         * WebProcess/Cookies/WebCookieManager.cpp:
1155         (WebKit::WebCookieManager::startObservingCookieChanges): Call through to WebCore::startObservingCookieChanges
1156             (on platforms that support it).
1157         (WebKit::WebCookieManager::stopObservingCookieChanges): Ditto (for stopObservingCookieChanges).
1158         (WebKit::WebCookieManager::dispatchDidModifyCookies): Send a message to the UI process that cookies changed.
1159         * WebProcess/Cookies/WebCookieManager.h:
1160         * WebProcess/Cookies/WebCookieManager.messages.in:
1161         
1162         Add new files.
1163         * WebKit2.pro:
1164         * WebKit2.xcodeproj/project.pbxproj:
1165         * GNUmakefile.am:
1166         * win/WebKit2.vcproj:
1167
1168 2011-03-03  Anders Carlsson  <andersca@apple.com>
1169
1170         Reviewed by Darin Adler.
1171
1172         Remove CanRunBeforeUnloadConfirmPanel sync message
1173         https://bugs.webkit.org/show_bug.cgi?id=55689
1174
1175         * Shared/WebPageCreationParameters.cpp:
1176         (WebKit::WebPageCreationParameters::encode):
1177         (WebKit::WebPageCreationParameters::decode):
1178         Encode and decode canRunBeforeUnloadConfirmPanel, as well as canRunModal, which wasn't
1179         being encoded/decoded.
1180
1181         * Shared/WebPageCreationParameters.h:
1182         Add canRunBeforeUnloadConfirmPanel.
1183
1184         * UIProcess/WebPageProxy.cpp:
1185         (WebKit::WebPageProxy::initializeUIClient):
1186         Send SetCanRunBeforeUnloadConfirmPanel and SetCanRunModal messages.
1187
1188         (WebKit::WebPageProxy::creationParameters):
1189         Initialize parameters.canRunBeforeUnloadConfirmPanel.
1190
1191         * UIProcess/WebPageProxy.messages.in:
1192         Remove CanRunBeforeUnloadConfirmPanel message.
1193
1194         * UIProcess/WebUIClient.cpp:
1195         (WebKit::WebUIClient::canRunBeforeUnloadConfirmPanel):
1196         * UIProcess/WebUIClient.h:
1197         Make canRunBeforeUnloadConfirmPanel const.
1198
1199         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1200         (WebKit::WebChromeClient::canRunBeforeUnloadConfirmPanel):
1201         Ask the web page instead of sending a synchronous message.
1202
1203         * WebProcess/WebPage/WebPage.cpp:
1204         (WebKit::WebPage::WebPage):
1205         Initialize m_canRunBeforeUnloadConfirmPanel.
1206
1207         * WebProcess/WebPage/WebPage.h:
1208         (WebKit::WebPage::canRunBeforeUnloadConfirmPanel):
1209         (WebKit::WebPage::setCanRunBeforeUnloadConfirmPanel):
1210         Add getter and setter for m_canRunBeforeUnloadConfirmPanel.
1211
1212         (WebKit::WebPage::setCanRunModal):
1213         Add setter for m_canRunModal.
1214
1215         * WebProcess/WebPage/WebPage.messages.in:
1216         Add SetCanRunBeforeUnloadConfirmPanel and SetCanRunModal messages.
1217
1218 2011-03-03  Adam Roben  <aroben@apple.com>
1219
1220         Create the CFBundleRef for WebKit.dll on Windows if needed
1221
1222         WebKit part of <http://webkit.org/b/55672> <rdar://problem/9080867> All inspector tests time
1223         out or crash on Windows 7 Release (WebKit2 Tests)
1224
1225         Reviewed by Darin Adler.
1226
1227         * Shared/win/WebKitBundle.cpp: Added.
1228         (WebKit::createWebKitBundle): Returns a pre-existing bundle, if possible, otherwise creates
1229         and returns a new bundle.
1230         (WebKit::webKitBundle): Creates and caches a bundle, and returns it.
1231
1232         * Shared/win/WebKitBundle.h: Added.
1233
1234         * UIProcess/win/WebInspectorProxyWin.cpp:
1235         (WebKit::WebInspectorProxy::inspectorPageURL):
1236         * WebProcess/WebPage/win/WebInspectorWin.cpp:
1237         (WebKit::WebInspector::localizedStringsURL):
1238         Changed to use webKitBundle() to ensure that the bundle has been created.
1239
1240         * win/WebKit2.vcproj: Added new files.
1241
1242 2011-03-03  Peter Kasting  <pkasting@google.com>
1243
1244         Reviewed by James Robinson.
1245
1246         Drop redundant "Windows; " from the Windows-specific User Agent string.
1247         https://bugs.webkit.org/show_bug.cgi?id=54567
1248
1249         * UIProcess/win/WebPageProxyWin.cpp:
1250         (WebKit::WebPageProxy::standardUserAgent):
1251
1252 2011-03-02  Sheriff Bot  <webkit.review.bot@gmail.com>
1253
1254         Unreviewed, rolling out r80188.
1255         http://trac.webkit.org/changeset/80188
1256         https://bugs.webkit.org/show_bug.cgi?id=55647
1257
1258         Broke the WebKit API tests. (Requested by xenon on #webkit).
1259
1260         * UIProcess/API/C/WKPage.cpp:
1261         (WKPageRunJavaScriptInMainFrame):
1262         (callRunJavaScriptBlockAndRelease):
1263         * UIProcess/API/C/WKPage.h:
1264         * UIProcess/WebPageProxy.cpp:
1265         (WebKit::WebPageProxy::close):
1266         (WebKit::WebPageProxy::runJavaScriptInMainFrame):
1267         (WebKit::WebPageProxy::processDidCrash):
1268         * UIProcess/WebPageProxy.h:
1269         * UIProcess/WebPageProxy.messages.in:
1270         * WebProcess/WebPage/WebPage.cpp:
1271         (WebKit::WebPage::runJavaScriptInMainFrame):
1272
1273 2011-03-02  Jeff Miller  <jeffm@apple.com>
1274
1275         Reviewed by Darin Adler.
1276
1277         Rename WebKit::WebPage::validateMenuItem() to validateCommand()
1278         https://bugs.webkit.org/show_bug.cgi?id=55636
1279         
1280         Since this method can validate more than menu items, validateCommand() is a better name.  Also rename various messages and WebKit::WebPageProxy::didValidateMenuItem() to didValidateCommand().
1281
1282         * UIProcess/API/mac/WKView.mm:
1283         (-[WKView validateUserInterfaceItem:]): Call validateCommand() instead of validateMenuItem().
1284         * UIProcess/WebPageProxy.cpp:
1285         (WebKit::WebPageProxy::validateCommand): Renamed from validateMenuItem().
1286         (WebKit::WebPageProxy::didValidateCommand): Renamed from didValidateMenuItem().
1287         * UIProcess/WebPageProxy.h:
1288         * UIProcess/WebPageProxy.messages.in: Renamed DidValidateMenuItem to DidValidateCommand.
1289         * WebProcess/WebPage/WebPage.cpp:
1290         (WebKit::WebPage::validateCommand): Renamed from validateMenuItem().
1291         * WebProcess/WebPage/WebPage.h:
1292         * WebProcess/WebPage/WebPage.messages.in: Renamed ValidateMenuItem to ValidateCommand.
1293
1294 2011-03-02  Anders Carlsson  <andersca@apple.com>
1295
1296         Reviewed by Sam Weinig.
1297
1298         WKPageSetMemoryCacheClientCallsEnabled doesn't persist if web process crashes
1299         https://bugs.webkit.org/show_bug.cgi?id=55635
1300
1301         * Shared/WebPageCreationParameters.cpp:
1302         (WebKit::WebPageCreationParameters::encode):
1303         (WebKit::WebPageCreationParameters::decode):
1304         Encode and decode areMemoryCacheClientCallsEnabled.
1305
1306         * Shared/WebPageCreationParameters.h:
1307         Add areMemoryCacheClientCallsEnabled member variable.
1308
1309         * UIProcess/WebPageProxy.cpp:
1310         (WebKit::WebPageProxy::WebPageProxy):
1311         Initialize m_areMemoryCacheClientCallsEnabled.
1312
1313         (WebKit::WebPageProxy::setMemoryCacheClientCallsEnabled):
1314         Update m_areMemoryCacheClientCallsEnabled. Send a message if necessary.
1315
1316         (WebKit::WebPageProxy::creationParameters):
1317         Set areMemoryCacheClientCallsEnabled.
1318
1319         * WebProcess/WebPage/WebPage.cpp:
1320         (WebKit::WebPage::WebPage):
1321         Call WebPage::setMemoryCacheMessagesEnabled.
1322
1323 2011-03-02  Timothy Hatcher  <timothy@apple.com>
1324
1325         Make the runJavaScriptInMainFrame callback send a WKSerializedScriptValueRef.
1326
1327         https://webkit.org/b/55623
1328
1329         Reviewed by Darin Adler.
1330
1331         * UIProcess/API/C/WKPage.cpp:
1332         (WKPageRunJavaScriptInMainFrame): Use ScriptValueCallback.
1333         (callRunJavaScriptBlockAndRelease): Use WKSerializedScriptValueRef.
1334         * UIProcess/API/C/WKPage.h: Use WKSerializedScriptValueRef.
1335         * UIProcess/WebPageProxy.cpp:
1336         (WebKit::WebPageProxy::close): Call invalidateCallbackMap for m_scriptValueCallbacks.
1337         (WebKit::WebPageProxy::runJavaScriptInMainFrame): Take a ScriptValueCallback.
1338         (WebKit::WebPageProxy::scriptValueCallback): Added. Create a WebSerializedScriptValue
1339         from the DataReference before calling the callback.
1340         (WebKit::WebPageProxy::processDidCrash): Call invalidateCallbackMap for m_scriptValueCallbacks.
1341         * UIProcess/WebPageProxy.h: Added ScriptValueCallback and m_scriptValueCallbacks.
1342         * UIProcess/WebPageProxy.messages.in: Added ScriptValueCallback.
1343         * WebProcess/WebPage/WebPage.cpp:
1344         (WebKit::WebPage::runJavaScriptInMainFrame): Create a DataReference from a WebCore::SerializedScriptValue.
1345         And use ScriptValueCallback to send the message back.
1346
1347 2011-03-02  Jessie Berlin  <jberlin@apple.com>
1348
1349         Reviewed by Adam Roben.
1350
1351         WebKit2: Use CFNetwork Sessions API.
1352         https://bugs.webkit.org/show_bug.cgi?id=55435
1353
1354         Add the ability to create a Private Browsing Storage Session.
1355
1356         * Shared/WebProcessCreationParameters.cpp:
1357         (WebKit::WebProcessCreationParameters::encode):
1358         Encode the UI Process bundle identifier.
1359         (WebKit::WebProcessCreationParameters::decode):
1360         Decode the UI Process bundle identifier.
1361         * Shared/WebProcessCreationParameters.h:
1362
1363         * UIProcess/mac/WebContextMac.mm:
1364         (WebKit::WebContext::platformInitializeWebProcess):
1365         Grab the bundle identifier and use it to set the WebProcessCreationParameter.
1366         * UIProcess/win/WebContextWin.cpp:
1367         (WebKit::WebContext::platformInitializeWebProcess):
1368         Ditto.
1369
1370         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1371         (InitWebCoreSystemInterface):
1372         Support using the wkCreatePrivateStorageSession WKSI in WebCore.
1373
1374         * WebProcess/WebProcess.cpp:
1375         (WebKit::WebProcess::initializeWebProcess):
1376         Set the base for the Private Browsing Storage Session identifier to be the bundle identifier
1377         from the UI Process so that WebKit1 would create a Private Browsing Storage Session with the
1378         same identifier as WebKit2.
1379
1380 2011-03-01  Brian Weinstein  <bweinstein@apple.com>
1381
1382         Reviewed by Adam Roben.
1383
1384         Part of WebKit2: Need a way to send notifications to client when cookies change
1385         https://bugs.webkit.org/show_bug.cgi?id=55427
1386         <rdar://problem/9056027>
1387
1388         * WebProcess/Cookies/WebCookieManager.cpp:
1389         (WebKit::WebCookieManager::dispatchDidModifyCookies): Add a stub with a FIXME to send a 
1390             message to the UI process.
1391
1392         * WebProcess/Cookies/WebCookieManager.h:
1393         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1394         (WebKit::WebPlatformStrategies::createCookiesStrategy):
1395         (WebKit::WebPlatformStrategies::notifyCookiesChanged): Call WebCookieManager::dispatchDidModifyCookies.
1396         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1397
1398 2011-03-02  Andras Becsi  <abecsi@webkit.org>
1399
1400         Reviewed by Laszlo Gombos.
1401
1402         [Qt][WK2] generate-forwarding-headers.pl should generate paths with framework names
1403         https://bugs.webkit.org/show_bug.cgi?id=55478
1404
1405         On case insensitive systems the generated forwarding headers cause build problems.
1406
1407         * Scripts/generate-forwarding-headers.pl: The generated header should
1408         also contain the framework name.
1409
1410 2011-03-01  Jeff Miller  <jeffm@apple.com>
1411
1412         Reviewed by Darin Adler.
1413
1414         Expose some selection state fields in WKPage
1415         https://bugs.webkit.org/show_bug.cgi?id=55541
1416         
1417         Added WKPageCanDelete(), WKPageHasSelectedRange(), and WKPageIsContentEditable() so we can enable some
1418         Edit menu items properly on Windows when using WebKit2.
1419
1420         * UIProcess/API/C/WKPage.cpp:
1421         (WKPageCanDelete): Added.
1422         (WKPageHasSelectedRange): Added.
1423         (WKPageIsContentEditable): Added.
1424         * UIProcess/API/C/WKPage.h: Added new functions.
1425         * UIProcess/WebPageProxy.h:
1426         (WebKit::WebPageProxy::canDelete): Added.
1427         (WebKit::WebPageProxy::hasSelectedRange): Added.
1428         (WebKit::WebPageProxy::isContentEditable): Added.
1429
1430 2011-03-01  Mark Rowe  <mrowe@apple.com>
1431
1432         Hide the typeinfo name symbols for std::exception and std::bad_alloc too.
1433
1434         * Configurations/Base.xcconfig:
1435
1436 2011-03-01  Mark Rowe  <mrowe@apple.com>
1437
1438         Reviewed by Sam Weinig.
1439
1440         Add verification scripts to WebKit2 project and fix the issues they reveal.
1441
1442         * Configurations/Base.xcconfig: Add linker flags to prevent C++ standard
1443         library functions from being exported as weak externals.
1444         * Configurations/WebKit2.xcconfig: Inherit linker flags from the project level.
1445         * Shared/WebContextMenuItem.cpp:
1446         (WebKit::WebContextMenuItem::separatorItem): Use DEFINE_STATIC_LOCAL.
1447         * UIProcess/WebPageGroup.cpp:
1448         (WebKit::webPageGroupMap): Ditto.
1449         * WebKit2.xcodeproj/project.pbxproj: Don't copy .in files in to the framework.
1450         Run verification scripts at the appropriate times.
1451         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1452         (WebKit::WebEditorClient::didBeginEditing): Use DEFINE_STATIC_LOCAL.
1453         (WebKit::WebEditorClient::respondToChangedContents): Ditto.
1454         (WebKit::WebEditorClient::respondToChangedSelection): Ditto.
1455         (WebKit::WebEditorClient::didEndEditing): Ditto.
1456         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
1457         (WebKit::idToHistoryItemMap): Ditto.
1458         (WebKit::historyItemToIDMap): Ditto.
1459
1460 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
1461
1462         Unreviewed. Roll out r80068 and r80073 due to breaking WebKit2 Qt port.
1463
1464         * UIProcess/API/qt/qwkpage.cpp:
1465         (QWKPage::viewportAttributesForSize):
1466
1467 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
1468
1469         Unreviewed, missed updating a call to WebCore::computeViewportAttributes
1470         who's prototype changed.
1471
1472         Viewport Warning/Error Messages Are Now Inaccurate
1473         https://bugs.webkit.org/show_bug.cgi?id=53707
1474
1475         * UIProcess/API/qt/qwkpage.cpp:
1476         (QWKPage::viewportAttributesForSize): pass in a value for the document argument.
1477
1478 2011-03-01  Anders Carlsson  <andersca@apple.com>
1479
1480         Reviewed by Sam Weinig.
1481
1482         WKPluginSiteDataManagerClearAllSiteData is not working
1483         https://bugs.webkit.org/show_bug.cgi?id=55528
1484         <rdar://problem/9071823>
1485
1486         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
1487         (WebKit::NetscapePluginModule::tryGetSitesWithData):
1488         Remove version checks, checking that the function pointer is not null is enough.
1489
1490         (WebKit::NetscapePluginModule::tryClearSiteData):
1491         Remove version checks, checking that the function pointer is not null is enough.
1492         Also, correctly convert a null String to a null CString.
1493
1494 2011-03-01  Adam Roben  <aroben@apple.com>
1495
1496         Incorporate a review comment I missed in r80051
1497
1498         * Shared/Plugins/Netscape/NetscapePluginModule.cpp: Clarified error message.
1499
1500 2011-03-01  Adam Roben  <aroben@apple.com>
1501
1502         Make the PLUGIN_ARCHITECTURE() macro work with MSVC
1503
1504         Fixes <http://webkit.org/b/55513> <rdar://problem/9069189> REGRESSION (r79925): Lots of
1505         plugins tests crashing in NetscapePlugin::initialize on Windows
1506
1507         Reviewed by Anders Carlsson.
1508
1509         * Shared/Plugins/Netscape/NetscapePluginModule.cpp: Added a compile-time check to make sure
1510         PLUGIN_ARCHITECTURE() is defined for some platform.
1511
1512         * config.h: Removed the parentheses from the use of "defined" in the PLUGIN_ARCHITECTURE()
1513         macro. This matches PLATFORM(), OS(), etc., and makes the macro work on Windows. Also
1514         replaced the nonsense OS(WIN) with OS(WINDOWS).
1515
1516         * win/WebKit2.vcproj: Added config.h for editing convenience. Let VS do its thang.
1517
1518 2011-03-01  Sam Weinig  <sam@webkit.org>
1519
1520         Reviewed by Timothy Hatcher.
1521
1522         WebKit2 needs to be made localizable
1523         https://bugs.webkit.org/show_bug.cgi?id=55483
1524
1525         * PluginProcess/mac/PluginProcessMainMac.mm:
1526         * WebProcess/mac/WebProcessMainMac.mm:
1527         Set the default localization from the passed in parameter.
1528
1529         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1530         Add the preferred localization as a parameter when launching processes
1531         so that they can set their localization to match the launching app.
1532
1533         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1534         Use WebCore's localizedString function on the mac, to actually localize
1535         these strings.
1536
1537         (WebKit::WebPlatformStrategies::imageTitle):
1538         Switch to using replace, instead of concatenation, to give localizers a chance
1539         to rearrange the wording.
1540
1541 2011-03-01  Balazs Kelemen  <kbalazs@webkit.org>
1542
1543         Reviewed by Anders Carlsson.
1544
1545         [Qt][WK2] Plugin initialization
1546         https://bugs.webkit.org/show_bug.cgi?id=48127
1547
1548         Apply the quirks that are necessary for the flash plugin
1549         to not crash on X11.
1550
1551         * Platform/qt/ModuleQt.cpp:
1552         (WebKit::Module::load): Use the ResolveAllSymbols hint as we do in WebCore.
1553         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
1554         (WebKit::NetscapePluginModule::tryLoad): Call applyX11QuirksBeforeLoad
1555         if PLUGIN_ARCHITECTURE is X11.
1556         * Shared/Plugins/Netscape/NetscapePluginModule.h:
1557         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
1558         (WebKit::initializeGTK):  The same hack that we do in WebCore.
1559         Call gtk_init because flash don't do it for itself.
1560         (WebKit::NetscapePluginModule::applyX11QuirksBeforeLoad): Added for X11.
1561         Do the hacks that we need to do before calling NP_Initialize on the
1562         flash plugin to save it form crashing.
1563         * Shared/Plugins/PluginQuirks.h: Use PLUGIN_ARCHITECTURE macros.
1564         Added RequiresGTKToolKit quirk for X11.
1565         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
1566         (WebKit::NPN_GetValue): Handle the RequiresGTKToolKit quirk on X11.
1567         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1568         (WebKit::NetscapePlugin::quirks): Added getter for the PluginModule's
1569         quirks to be available in NPN_GetValue.
1570
1571 2011-03-01  Adam Roben  <aroben@apple.com>
1572
1573         Convert seconds to milliseconds before calling ::SetTimer
1574
1575         Fixes <http://webkit.org/b/55417> <rdar://problem/9065287> RunLoop::Timer fires 1000x too
1576         early on Windows
1577
1578         Reviewed by Anders Carlsson.
1579
1580         * Platform/win/RunLoopWin.cpp:
1581         (RunLoop::TimerBase::start): Convert the timeout interval to milliseconds, since that's what
1582         ::SetTimer expects.
1583
1584 2011-03-01  Andras Becsi  <abecsi@webkit.org>
1585
1586         Reviewed by Csaba Osztrogonác.
1587
1588         [Qt] Clean up the project files and move common options to WebKit.pri.
1589
1590         * WebKit2.pro: Deduplicate options.
1591
1592 2011-03-01  Juha Savolainen  <juha.savolainen@weego.fi>
1593
1594         Reviewed by Andreas Kling.
1595
1596         [Qt] WebKit2 needs to support font size changing and getting default font size
1597         https://bugs.webkit.org/show_bug.cgi?id=53671
1598
1599         Added new enum for font size type and added methods to set and get default font sizes.
1600
1601         * UIProcess/API/qt/qwkpreferences.cpp:
1602         (QWKPreferences::setFontSize): Added.
1603         (QWKPreferences::fontSize): Added.
1604         * UIProcess/API/qt/qwkpreferences.h:
1605
1606 2011-02-28  Alice Liu  <alice.liu@apple.com>
1607
1608         Reviewed by Adam Roben and Gavin Barraclough.
1609
1610         https://bugs.webkit.org/show_bug.cgi?id=54898
1611         InjectedBundleNodeHandle dies too early in WKBundleHitTestResultGetNodeHandle
1612
1613         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
1614         (WKBundleHitTestResultCopyNodeHandle): 
1615         Instead of .get(), call .release.leakRef() like other functions that return WKBundleNodeHandleRef.
1616         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
1617         Renamed from "get" to "copy", because it leaksRef.
1618
1619 2011-02-28  Alice Liu  <alice.liu@apple.com>
1620
1621         Reviewed by Gavin Barraclough.
1622
1623         https://bugs.webkit.org/show_bug.cgi?id=55442
1624         Webarchives don't contain subframe content
1625
1626         * WebProcess/WebPage/WebPage.cpp:
1627         (WebKit::WebPage::getWebArchiveOfFrame):
1628         Pass the frame's document instead of just the frame, to use a different LegacyWebArchive::create function.
1629
1630 2011-02-28  Benjamin Poulain  <benjamin.poulain@nokia.com>
1631
1632         Reviewed by Kenneth Rohde Christiansen.
1633
1634         [Qt][WK2] Add a way to test the WebKit 2 APIs
1635         https://bugs.webkit.org/show_bug.cgi?id=55408
1636
1637         Add an initial test for the WebKit 2 APIs of Qt.
1638
1639         * UIProcess/API/qt/tests/html/basic_page.html: Added.
1640         * UIProcess/API/qt/tests/qgraphicswkview/qgraphicswkview.pro: Added.
1641         * UIProcess/API/qt/tests/qgraphicswkview/tst_qgraphicswkview.cpp: Added.
1642         (View::View):
1643         (View::resizeEvent):
1644         (tst_QGraphicsWKView::init):
1645         (tst_QGraphicsWKView::cleanup):
1646         (tst_QGraphicsWKView::loadEmptyPage):
1647         * UIProcess/API/qt/tests/tests.pri: Added.
1648         * UIProcess/API/qt/tests/tests.pro: Added.
1649         * UIProcess/API/qt/tests/util.h: Added.
1650         (waitForSignal):
1651
1652 2011-02-28  Anders Carlsson  <andersca@apple.com>
1653
1654         Fix clang build.
1655
1656         * UIProcess/API/mac/FindIndicatorWindow.mm:
1657         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
1658         (WebKit::ChunkedUpdateDrawingAreaProxy::deprecatedUpdate):
1659         (WebKit::ChunkedUpdateDrawingAreaProxy::didReceiveMessage):
1660         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
1661         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
1662         (WebKit::ChunkedUpdateDrawingArea::deprecatedResumePainting):
1663         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
1664         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
1665
1666 2011-02-28  Dan Bernstein  <mitz@apple.com>
1667
1668         Rubber-stamped by Anders Carlsson.
1669
1670         Do not copy config.h into WebKit2.
1671
1672         * WebKit2.xcodeproj/project.pbxproj:
1673
1674 2011-02-28  Dan Bernstein  <mitz@apple.com>
1675
1676         LLVM Compiler build fix.
1677
1678         * Scripts/webkit2/messages.py:
1679         * UIProcess/WebPageProxy.h:
1680
1681 2011-02-28  Anders Carlsson  <andersca@apple.com>
1682
1683         Reviewed by Dan Bernstein, Sam Weinig, Alexey Proskuryakov and Darin Adler.
1684
1685         Open PDF in Preview doesn't work
1686         https://bugs.webkit.org/show_bug.cgi?id=55400
1687         <rdar://problem/8750353>
1688
1689         * UIProcess/API/mac/PDFViewController.mm:
1690         (-[WKPDFView initWithFrame:PDFViewController:]):
1691         Set the WKPDFView as the delegate of itself.
1692
1693         (-[WKPDFView PDFViewOpenPDFInNativeApplication:]):
1694         Call PDFViewController::openPDFInFinder.
1695
1696         (WebKit::PDFViewController::PDFViewController):
1697         Initialize m_hasWrittenPDFToDisk to false.
1698
1699         (WebKit::PDFViewController::openPDFInFinder):
1700         Write the PDF to disk if needed and then open it using -[NSWorkspace openFile:].
1701         
1702         (WebKit::temporaryPDFDirectoryPath):
1703         Create a directory to put PDFs in.
1704
1705         (WebKit::PDFViewController::pathToPDFOnDisk):
1706         Return a path to a (non-existent) file in the temporary PDF directory.
1707
1708 2011-02-28  Alexey Proskuryakov  <ap@apple.com>
1709
1710         Reviewed by Dan Bernstein.
1711
1712         Frequent crashes in CFURLCache code on Snow Leopard
1713         https://bugs.webkit.org/show_bug.cgi?id=55412
1714         <rdar://problem/9063922>
1715
1716         CString is evil, it has two lengths which can be different - specifically, fileSystemRepresentation()
1717         creates a string with maximum possible buffer size. A path with garbage at the end confused
1718         CFURLCache into corrupting its data structures.
1719
1720         * Shared/WebProcessCreationParameters.h: Added a FIXME about merging Mac and Windows code.
1721         This problem wouldn't have occured if we didn't use CString in the first place.
1722
1723         * UIProcess/mac/WebContextMac.mm: (WebKit::WebContext::platformInitializeWebProcess):
1724         Added an assertion matching Windows behavior (seems likely that NSURLCache also wouldn't
1725         have liked trailing slash).
1726
1727         * UIProcess/win/WebContextWin.cpp: (WebKit::WebContext::platformInitializeWebProcess):
1728         Made slash removal conditional for robustness.
1729
1730         * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::platformInitializeWebProcess):
1731         Use actual string length, not CString::length().
1732
1733 2011-02-28  Balazs Kelemen  <kbalazs@webkit.org>
1734
1735         Reviewed by Anders Carlsson.
1736
1737         [Qt][WK2] Plugin initialization
1738         https://bugs.webkit.org/show_bug.cgi?id=48127
1739
1740         Specialize the way of initializing the plugin for X11.
1741         Introduce PLUGIN_ARCHITECTURE macros to allow code sharing
1742         across platforms.
1743
1744         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
1745         (WebKit::NetscapePluginModule::tryLoad):
1746         * config.h:
1747
1748 2011-02-28  Sam Weinig  <sam@webkit.org>
1749
1750         Reviewed by Brady Eidson.
1751
1752         WK2 Context Menus - Implement LookUpInDictionary
1753         https://bugs.webkit.org/show_bug.cgi?id=55405
1754
1755         * Shared/DictionaryPopupInfo.cpp:
1756         (WebKit::DictionaryPopupInfo::encode):
1757         (WebKit::DictionaryPopupInfo::decode):
1758         * Shared/DictionaryPopupInfo.h:
1759         Add type to differentiate between HotKey and ContextMenu triggered
1760         dictionary popups. This is necessary since HotKey triggered ones want
1761         to override the style to always be overlay.
1762
1763         * UIProcess/API/mac/PageClientImpl.mm:
1764         (WebKit::PageClientImpl::didPerformDictionaryLookup):
1765         Only force the overlay style for HotKey triggered dictionary lookups.
1766
1767         * WebProcess/WebPage/WebPage.h:
1768         * WebProcess/WebPage/mac/WebPageMac.mm:
1769         (WebKit::WebPage::performDictionaryLookupAtLocation):
1770         (WebKit::WebPage::performDictionaryLookupForRange):
1771         Factor out shared functionality into performDictionaryLookupForRange.
1772
1773         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
1774         (WebKit::WebContextMenuClient::lookUpInDictionary):
1775         Get selected range and call newly factored out performDictionaryLookupForRange.
1776
1777 2011-02-28  Anders Carlsson  <andersca@apple.com>
1778
1779         Reviewed by Dan Bernstein.
1780
1781         PDFViewController should hold a reference to the PDF data
1782         https://bugs.webkit.org/show_bug.cgi?id=55394
1783
1784         * UIProcess/API/mac/PDFViewController.h:
1785         * UIProcess/API/mac/PDFViewController.mm:
1786         (WebKit::PDFViewController::setPDFDocumentData):
1787
1788 2011-02-28  Sam Weinig  <sam@webkit.org>
1789
1790         Reviewed by Darin Adler.
1791
1792         Size of text in popup menu doesn't match size of text in <select> itself in WebKit2
1793         https://bugs.webkit.org/show_bug.cgi?id=48234
1794
1795         * Shared/TextInfo.cpp: Removed.
1796         * Shared/TextInfo.h: Removed.
1797         Replace this with the more appropriately DictionaryPopupInfo.
1798
1799         * Shared/DictionaryPopupInfo.cpp: Copied from Source/WebKit2/Shared/TextInfo.cpp.
1800         (WebKit::DictionaryPopupInfo::encode):
1801         (WebKit::DictionaryPopupInfo::decode):
1802         * Shared/DictionaryPopupInfo.h: Copied from Source/WebKit2/Shared/TextInfo.h.
1803         (WebKit::DictionaryPopupInfo::DictionaryPopupInfo):
1804         Replace individual font related fields with FontInfo.
1805
1806         * Shared/FontInfo.cpp: Added.
1807         (WebKit::FontInfo::FontInfo):
1808         (WebKit::FontInfo::encode):
1809         (WebKit::FontInfo::decode):
1810         * Shared/FontInfo.h: Added.
1811         Add class to encapsulate passing a font description over the wire.
1812
1813         * Shared/PlatformPopupMenuData.cpp:
1814         (WebKit::PlatformPopupMenuData::encode):
1815         (WebKit::PlatformPopupMenuData::decode):
1816         * Shared/PlatformPopupMenuData.h:
1817         Add FontInfo as extra data for the Mac.
1818
1819         * UIProcess/API/mac/PageClientImpl.h:
1820         * UIProcess/API/mac/PageClientImpl.mm:
1821         (WebKit::PageClientImpl::didPerformDictionaryLookup):
1822         * UIProcess/PageClient.h:
1823         Add scaleFactor and use it to construct a font at the right size.
1824
1825         * UIProcess/WebPageProxy.cpp:
1826         (WebKit::WebPageProxy::showPopupMenu):
1827         (WebKit::WebPageProxy::didPerformDictionaryLookup):
1828         * UIProcess/WebPageProxy.h:
1829         * UIProcess/WebPageProxy.messages.in:
1830         * UIProcess/WebPopupMenuProxy.h:
1831         * UIProcess/mac/WebPopupMenuProxyMac.h:
1832         (WebKit::WebPopupMenuProxyMac::create):
1833         * UIProcess/mac/WebPopupMenuProxyMac.mm:
1834         (WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
1835         (WebKit::WebPopupMenuProxyMac::populate):
1836         (WebKit::WebPopupMenuProxyMac::showPopupMenu):
1837         * UIProcess/qt/WebPopupMenuProxyQt.cpp:
1838         (WebKit::WebPopupMenuProxyQt::showPopupMenu):
1839         * UIProcess/qt/WebPopupMenuProxyQt.h:
1840         * UIProcess/win/WebPopupMenuProxyWin.cpp:
1841         (WebKit::WebPopupMenuProxyWin::showPopupMenu):
1842         * UIProcess/win/WebPopupMenuProxyWin.h:
1843         * WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm:
1844         (WebKit::WebPopupMenu::setUpPlatformData):
1845         * WebProcess/WebPage/mac/WebPageMac.mm:
1846         (WebKit::WebPage::performDictionaryLookupAtLocation):
1847         Pass scale factor through and rename TextInfo -> DictionaryPopupInfo.
1848
1849         * WebKit2.pro:
1850         * WebKit2.xcodeproj/project.pbxproj:
1851         * win/WebKit2.vcproj:
1852         Add new files.
1853
1854 2011-02-28  Adam Roben  <aroben@apple.com>
1855
1856         One more rename as a followup to r79868
1857
1858         Rubber-stamped by Anders Carlsson.
1859
1860         * UIProcess/DrawingAreaProxyImpl.cpp:
1861         * UIProcess/DrawingAreaProxyImpl.h:
1862         Rename stateDidChange to backingStoreStateDidChange.
1863
1864 2011-02-28  Adam Roben  <aroben@apple.com>
1865
1866         Rename DrawingArea[Proxy]Impl's "state ID" concept to "backing store state ID"
1867
1868         Rubber-stamped (and suggested) by Anders Carlsson.
1869
1870         * UIProcess/DrawingAreaProxy.h:
1871         * UIProcess/DrawingAreaProxy.messages.in:
1872         * UIProcess/DrawingAreaProxyImpl.cpp:
1873         * UIProcess/DrawingAreaProxyImpl.h:
1874         * WebProcess/WebPage/DrawingArea.h:
1875         * WebProcess/WebPage/DrawingArea.messages.in:
1876         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1877         * WebProcess/WebPage/DrawingAreaImpl.h:
1878         Perform the rename.
1879
1880 2011-02-28  Adam Roben  <aroben@apple.com>
1881
1882         Decouple state changes from sending of UpdateState messages in DrawingAreaProxyImpl
1883
1884         The new DrawingAreaProxyImpl::stateDidChange function should be called whenever
1885         DrawingAreaProxyImpl's state changes in a way that will require allocating a new backing
1886         store. (Currently, this is just when the size changes.) This function will sometimes (but
1887         not always, as when we're waiting for a DidUpdateState message) send an UpdateState message
1888         to the web process. This means it's now possible for the state IDs sent in consecutive
1889         UpdateState messages to increase by more than one, but that's OK.
1890
1891         This should cause no change in behavior.
1892
1893         Fixes <http://webkit.org/b/55382> DrawingAreaProxyImpl's state ID should be updated whenever
1894         its state changes, not just when we send an UpdateState message
1895
1896         Reviewed by Anders Carlsson.
1897
1898         * UIProcess/DrawingAreaProxyImpl.cpp:
1899         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): Updated for rename.
1900         (WebKit::DrawingAreaProxyImpl::sizeDidChange): Changed to call stateDidChange.
1901         (WebKit::DrawingAreaProxyImpl::didUpdateState): Updated for rename, and changed to call
1902         sendUpdateState whenever our state has changed for any reason since the last UpdateState
1903         message was sent.
1904         (WebKit::DrawingAreaProxyImpl::stateDidChange): Added. Increments m_nextStateID and calls
1905         through to sendUpdateState.
1906         (WebKit::DrawingAreaProxyImpl::sendUpdateState): Updated for rename, moved incrementing of
1907         the state ID we send to the web process from here to stateDidChange, and added an assertion.
1908
1909         * UIProcess/DrawingAreaProxyImpl.h: Renamed m_requestedStateID to m_nextStateID, and updated
1910         the comment explaining its meaning.
1911
1912 2011-02-28  Adam Roben  <aroben@apple.com>
1913
1914         Pass the right dirty rect to Plugin::paint
1915
1916         A typo in r79040 broke this. Much of this patch is just support for testing the fix.
1917
1918         Fixes <http://webkit.org/b/55365> <rdar://problem/9031089> REGRESSION (r79040): WebKit2:
1919         Large portions of pages with plugins paint black
1920
1921         Reviewed by Anders Carlsson.
1922
1923         * WebProcess/Plugins/PluginView.cpp:
1924         (WebKit::PluginView::paint): Pass the dirty rect we calculated earlier to Plugin::paint,
1925         rather than just passing along the dirty rect that was passed into this function. This is
1926         the bug fix.
1927
1928         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1929         (WKBundlePageForceRepaint):
1930         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
1931         Added new SPI. Just calls through to WebPage::forceRepaintWithoutCallback.
1932
1933         * WebProcess/WebPage/WebPage.cpp:
1934         (WebKit::WebPage::forceRepaintWithoutCallback): Moved code to force a repaint here...
1935         (WebKit::WebPage::forceRepaint): ...from here.
1936
1937         * WebProcess/WebPage/WebPage.h: Added forceRepaintWithoutCallback.
1938
1939 2011-02-27  Sam Weinig  <sam@webkit.org>
1940
1941         Reviewed by Dan Bernstein.
1942
1943         Force dictionary popup to use overlay type
1944         <rdar://problem/9052483>
1945         https://bugs.webkit.org/show_bug.cgi?id=55337
1946
1947         * UIProcess/API/mac/PageClientImpl.mm:
1948         (WebKit::PageClientImpl::didPerformDictionaryLookup): As this is only
1949         used for the hot key version of the dictionary popup, force the overlay
1950         style.
1951
1952 2011-02-27  Benjamin Poulain  <benjamin.poulain@nokia.com>
1953
1954         Reviewed by Kenneth Rohde Christiansen.
1955
1956         [Qt] [WK2] QGraphicsWKView::showContextMenu() should be public
1957         https://bugs.webkit.org/show_bug.cgi?id=55330
1958
1959         Move QGraphicsWKView::showContextMenu() to the public API. Add documentation
1960         on its use.
1961
1962         * UIProcess/API/qt/qgraphicswkview.cpp:
1963         * UIProcess/API/qt/qgraphicswkview.h:
1964
1965 2011-02-27  Alejandro G. Castro  <alex@igalia.com>
1966
1967         Unreviewed, fixed GTK compilation after r79806.
1968
1969         * UIProcess/gtk/WebView.cpp:
1970         (WebKit::WebView::didFinishLoadingDataForCustomRepresentation):
1971         * UIProcess/gtk/WebView.h:
1972
1973 2011-02-26  Anders Carlsson  <andersca@apple.com>
1974
1975         Reviewed by Dan Bernstein.
1976
1977         Asynchronous response to FramePolicyListener is not finishing the load
1978         https://bugs.webkit.org/show_bug.cgi?id=55305
1979         <rdar://problem/9044356>
1980
1981         Always initialize the receivedPolicyAction reply parameter.
1982
1983         * UIProcess/WebPageProxy.cpp:
1984         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
1985         (WebKit::WebPageProxy::decidePolicyForMIMEType):
1986
1987 2011-02-26  Anders Carlsson  <andersca@apple.com>
1988
1989         Reviewed by Sam Weinig.
1990
1991         DidFinishLoadingDataForCustomRepresentation should pass along the suggested filename
1992         https://bugs.webkit.org/show_bug.cgi?id=55304
1993
1994         * UIProcess/API/mac/PDFViewController.h:
1995         * UIProcess/API/mac/PDFViewController.mm:
1996         (WebKit::PDFViewController::setPDFDocumentData):
1997         * UIProcess/API/mac/PageClientImpl.h:
1998         * UIProcess/API/mac/PageClientImpl.mm:
1999         (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
2000         * UIProcess/API/mac/WKView.mm:
2001         (-[WKView _didFinishLoadingDataForCustomRepresentationWithSuggestedFilename:dataReference:CoreIPC::]):
2002         * UIProcess/API/mac/WKViewInternal.h:
2003         * UIProcess/API/qt/qwkpage.cpp:
2004         (QWKPagePrivate::didFinishLoadingDataForCustomRepresentation):
2005         * UIProcess/API/qt/qwkpage_p.h:
2006         * UIProcess/PageClient.h:
2007         * UIProcess/WebPageProxy.cpp:
2008         (WebKit::WebPageProxy::didFinishLoadingDataForCustomRepresentation):
2009         * UIProcess/WebPageProxy.h:
2010         * UIProcess/WebPageProxy.messages.in:
2011         * UIProcess/win/WebView.cpp:
2012         (WebKit::WebView::didFinishLoadingDataForCustomRepresentation):
2013         * UIProcess/win/WebView.h:
2014         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2015         (WebKit::WebFrameLoaderClient::finishedLoading):
2016
2017 2011-02-26  Anders Carlsson  <andersca@apple.com>
2018
2019         Reviewed by Oliver Hunt.
2020
2021         DrawingArea should not be reference counted
2022         https://bugs.webkit.org/show_bug.cgi?id=55284
2023
2024         * Shared/DrawingAreaInfo.h:
2025         * Shared/WebPageCreationParameters.cpp:
2026         (WebKit::WebPageCreationParameters::encode):
2027         (WebKit::WebPageCreationParameters::decode):
2028         * Shared/WebPageCreationParameters.h:
2029         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
2030         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
2031         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
2032         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
2033         (WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize):
2034         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
2035         * UIProcess/DrawingAreaProxy.cpp:
2036         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
2037         * UIProcess/DrawingAreaProxy.h:
2038         (WebKit::DrawingAreaProxy::type):
2039         * UIProcess/DrawingAreaProxyImpl.cpp:
2040         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
2041         * UIProcess/DrawingAreaProxyImpl.h:
2042         * UIProcess/TiledDrawingAreaProxy.cpp:
2043         (WebKit::TiledDrawingAreaProxy::TiledDrawingAreaProxy):
2044         * UIProcess/TiledDrawingAreaProxy.h:
2045         * UIProcess/WebPageProxy.cpp:
2046         (WebKit::WebPageProxy::didReceiveSyncMessage):
2047         (WebKit::WebPageProxy::creationParameters):
2048         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
2049         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
2050         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
2051         (WebKit::ChunkedUpdateDrawingArea::display):
2052         (WebKit::ChunkedUpdateDrawingArea::setSize):
2053         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
2054         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
2055         * WebProcess/WebPage/DrawingArea.cpp:
2056         (WebKit::DrawingArea::create):
2057         (WebKit::DrawingArea::DrawingArea):
2058         * WebProcess/WebPage/DrawingArea.h:
2059         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2060         (WebKit::DrawingAreaImpl::create):
2061         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
2062         * WebProcess/WebPage/DrawingAreaImpl.h:
2063         * WebProcess/WebPage/TiledDrawingArea.cpp:
2064         (WebKit::TiledDrawingArea::TiledDrawingArea):
2065         * WebProcess/WebPage/TiledDrawingArea.h:
2066         * WebProcess/WebPage/WebPage.cpp:
2067         (WebKit::WebPage::drawRect):
2068         * WebProcess/WebPage/WebPage.h:
2069
2070 2011-02-26  Vsevolod Vlasov  <vsevik@chromium.org>
2071
2072         Reviewed by Pavel Feldman.
2073
2074         DumpRenderTree should reset frame opener between tests.
2075         https://bugs.webkit.org/show_bug.cgi?id=54874
2076
2077         Added clearOpener method to WKBundleWebFramePrivate.
2078
2079         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
2080         (WKBundleFrameClearOpener):
2081         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
2082
2083 2011-02-26  Yael Aharon  <yael.aharon@nokia.com>
2084
2085         Reviewed by Andreas Kling.
2086
2087         [Qt] Fix the focus in MiniBrowser.
2088         https://bugs.webkit.org/show_bug.cgi?id=55288
2089
2090         Implement basic functionality for focus in QWKPagePrivate.
2091
2092         * UIProcess/API/qt/qwkpage.cpp:
2093         (QWKPagePrivate::isViewWindowActive):
2094         (QWKPagePrivate::isViewFocused):
2095         (QWKPagePrivate::isViewVisible):
2096
2097 2011-02-26  Sheriff Bot  <webkit.review.bot@gmail.com>
2098
2099         Unreviewed, rolling out r79764.
2100         http://trac.webkit.org/changeset/79764
2101         https://bugs.webkit.org/show_bug.cgi?id=55295
2102
2103         "broke Chromium builds" (Requested by rniwa on #webkit).
2104
2105         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
2106         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
2107
2108 2011-02-26  Vsevolod Vlasov  <vsevik@chromium.org>
2109
2110         Reviewed by Pavel Feldman.
2111
2112         DumpRenderTree should reset frame opener between tests.
2113         https://bugs.webkit.org/show_bug.cgi?id=54874
2114
2115         Added clearOpener method to WKBundleWebFramePrivate.
2116
2117         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
2118         (WKBundleFrameClearOpener):
2119         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
2120
2121 2011-02-25  Anders Carlsson  <andersca@apple.com>
2122
2123         Reviewed by Darin Adler.
2124
2125         Plug-in process crashes when using GuardMalloc
2126         https://bugs.webkit.org/show_bug.cgi?id=55279
2127         <rdar://problem/9044618>
2128
2129         Update m_environmentPointer after copying the environment variables.
2130         
2131         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2132         (WebKit::EnvironmentVariables::copyEnvironmentVariables):
2133
2134 2011-02-25  Darin Adler  <darin@apple.com>
2135
2136         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2137         (WebKit::ProcessLauncher::launchProcess): Fixed backwards logic from last change.
2138
2139 2011-02-25  Darin Adler  <darin@apple.com>
2140
2141         Reviewed by Mark Rowe.
2142
2143         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2144         (WebKit::ProcessLauncher::launchProcess): Fixed performance problem in production
2145         builds by only setting DYLD_FRAMEWORK_PATH in engineering configurations.
2146
2147 2011-02-25  Darin Adler  <darin@apple.com>
2148
2149         Reviewed by Anders Carlsson.
2150
2151         <rdar://problem/8036034> WebKit2 should work even if DYLD_FRAMEWORK_PATH is not set
2152
2153         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2154         (WebKit::EnvironmentVariables::~EnvironmentVariables): Use fastFree, not delete, on
2155         the strings here because they are allocated with fastMalloc, not new.
2156         (WebKit::EnvironmentVariables::set): Use const more.
2157         (WebKit::EnvironmentVariables::get): Ditto.
2158         (WebKit::EnvironmentVariables::appendValue): Ditto.
2159         (WebKit::EnvironmentVariables::valueIfVariableHasName): Ditto. Also fix mistake
2160         where this would match if the name matched only a prefix of the environment variable's
2161         name. We want to match the whole name, so we need to use memcmp, not strncmp.
2162         (WebKit::EnvironmentVariables::createStringForVariable): Use const more.
2163         (WebKit::ProcessLauncher::launchProcess): Use clearer name, frameworkExecutablePath,
2164         for what was called bundlePath before. Append the frameworks path to DYLD_FRAMEWORK_PATH,
2165         ensuring we can pick up other frameworks from the same directory in the web process.
2166         Use a const_cast instead of a C-style cast.
2167
2168 2011-02-25  Chris Fleizach  <cfleizach@apple.com>
2169
2170         Reviewed by Anders Carlsson.
2171
2172         AX: WK2: AXApplication not returning the AXFocusedUIElement within the web area
2173         https://bugs.webkit.org/show_bug.cgi?id=55277
2174
2175         * UIProcess/API/mac/WKView.mm:
2176         (-[WKView accessibilityFocusedUIElement]):
2177
2178 2011-02-25  Alexey Proskuryakov  <ap@apple.com>
2179
2180         Reviewed by Anders Carlsson.
2181
2182         https://bugs.webkit.org/show_bug.cgi?id=55276
2183         WebPage::close() accesses "this" after it is destroyed.
2184
2185         This was making many tests crash with GuardMalloc.
2186
2187         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::close): Access "this" before it can be
2188         destroyed, not after.
2189
2190 2011-02-25  Balazs Kelemen  <kbalazs@webkit.org>
2191
2192         Unreviewed.
2193         Add missing sources to WebKit2API.pri.
2194
2195         * WebKit2API.pri:
2196
2197 2011-02-25  Anders Carlsson  <andersca@apple.com>
2198
2199         Reviewed by Darin Adler.
2200
2201         A WKView without a window will cause CG errors in the console
2202         https://bugs.webkit.org/show_bug.cgi?id=55264
2203         <rdar://problem/9044281>
2204
2205         Check that the window has a valid window number before trying to get its graphics context.
2206
2207         * UIProcess/API/mac/PageClientImpl.mm:
2208         (WebKit::PageClientImpl::containingWindowGraphicsContext):
2209
2210 2011-02-25  Brian Weinstein  <bweinstein@apple.com>
2211
2212         Reviewed by Brady Eidson and looked over by Jessie Berlin.
2213
2214         WebKit2: Need a way to manage cookies from the web process
2215         https://bugs.webkit.org/show_bug.cgi?id=55086
2216         
2217         Call through to WebCore::CookieJar in our WebCookieManager functions.
2218
2219         * WebProcess/Cookies/WebCookieManager.cpp:
2220         (WebKit::WebCookieManager::getHostnamesWithCookies):
2221         (WebKit::WebCookieManager::deleteCookiesForHostname):
2222         (WebKit::WebCookieManager::deleteAllCookies):
2223
2224 2011-02-25  Anders Carlsson  <andersca@apple.com>
2225
2226         Reviewed by Sam Weinig.
2227
2228         Option-clicking on links doesn't download them due to sandbox violation
2229         https://bugs.webkit.org/show_bug.cgi?id=55250
2230         <rdar://problem/9018359>
2231
2232         The change to make DecidePolicyForNavigationAction sync didn't handle the case when the
2233         decided policy was "Download". Fix this by passing along the download ID back to the web process.
2234
2235         * Platform/CoreIPC/HandleMessage.h:
2236         (CoreIPC::callMemberFunction):
2237         Add new overload.
2238
2239         * UIProcess/WebPageProxy.cpp:
2240         (WebKit::WebPageProxy::WebPageProxy):
2241         Initialize m_syncNavigationActionPolicyDownloadID.
2242
2243         (WebKit::WebPageProxy::receivedPolicyDecision):
2244         Set m_syncNavigationActionPolicyDownloadID to the download ID.
2245
2246         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
2247         Return the m_syncNavigationActionPolicyDownloadID.
2248
2249         * UIProcess/WebPageProxy.h:
2250         * UIProcess/WebPageProxy.messages.in:
2251         Add a DownloadID reply parameter.
2252
2253         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2254         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2255         Don't pass a zero download ID to didReceivePolicyDecision.
2256
2257 2011-02-25  Amruth Raj  <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com> and Alejandro G. Castro  <alex@igalia.com>
2258
2259         Reviewed by Martin Robinson.
2260
2261         [GTK] Implement WebContext and NativeKeyboardEvent classes for WebKit2
2262         https://bugs.webkit.org/show_bug.cgi?id=48510
2263
2264         * GNUmakefile.am:
2265         * Shared/NativeWebKeyboardEvent.h: Added the GTK event attribute
2266         and constructors, in our case we need it because we use a pointer
2267         and copy the event.
2268         (WebKit::NativeWebKeyboardEvent::nativeEvent):
2269         * Shared/gtk/NativeWebKeyboardEventGtk.cpp: Added.
2270         (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent): We need
2271         to copy the event in the constructor to avoid two references to
2272         the same event.
2273         * Shared/gtk/WebEventFactory.cpp: Changed the prototype of the
2274         functions to add const, we need it for the NativeWebKeyboardEvent
2275         constructor.
2276         (WebKit::modifiersForEvent):
2277         (WebKit::WebEventFactory::createWebKeyboardEvent):
2278         * UIProcess/gtk/WebContextGtk.cpp: Added. Stubbed implementation
2279         for GTK port. Yet to implement.
2280         (WebKit::WebContext::applicationCacheDirectory):
2281         (WebKit::WebContext::platformInitializeWebProcess):
2282         (WebKit::WebContext::platformDefaultDatabaseDirectory):
2283         * UIProcess/gtk/WebView.cpp:
2284         (WebKit::WebView::handleKeyboardEvent):
2285
2286 2011-02-25  Anders Carlsson  <andersca@apple.com>
2287
2288         Reviewed by Sam Weinig.
2289
2290         Get rid of more old accelerated compositing code
2291         https://bugs.webkit.org/show_bug.cgi?id=55235
2292
2293         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
2294         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
2295         * UIProcess/DrawingAreaProxy.h:
2296         * UIProcess/DrawingAreaProxyImpl.cpp:
2297         * UIProcess/DrawingAreaProxyImpl.h:
2298         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h:
2299         * WebProcess/WebPage/DrawingArea.h:
2300         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2301         * WebProcess/WebPage/DrawingAreaImpl.h:
2302
2303 2011-02-25  Andras Becsi  <abecsi@webkit.org>
2304
2305         Reviewed by Csaba Osztrogonác.
2306
2307         [Qt] Make the WebKit2 build system less confusing for non-Qt developers
2308         https://bugs.webkit.org/show_bug.cgi?id=55213
2309
2310         * WebKit2API.pri: Added.
2311
2312 2011-02-25  Amruth Raj  <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com> and Alejandro G. Castro  <alex@igalia.com>
2313
2314         Reviewed by Martin Robinson.
2315
2316         [GTK] Implement WebView and WebKitWebView classes for WebKit2
2317         https://bugs.webkit.org/show_bug.cgi?id=48509
2318
2319         * GNUmakefile.am:
2320         * UIProcess/API/C/gtk/WKView.cpp:
2321         * UIProcess/API/C/gtk/WKView.h: Removed gdkrectangle from
2322         constructor.
2323         * UIProcess/gtk/WebViewWidget.cpp: Added. The GObject interface
2324         for WebView. The GObject is the GtkWidget handle which is used by
2325         WebView class for GTK port.
2326         * UIProcess/gtk/WebViewWidget.h: Added. The GObject interface
2327         declarations for GtkWidget handle for GTK port.
2328         * UIProcess/gtk/WebView.cpp: Added. The native GtkWidget handle
2329         for GTK port which is associated with each WKViewRef.
2330         * UIProcess/gtk/WebView.h: Added. Class which implements the
2331         PageClient interface. It is a wrapper over the native GtkWidget
2332         handle associated with each WKViewRef for GTK port.
2333
2334 2011-02-25  Alejandro G. Castro  <alex@igalia.com>
2335
2336         Fix GTK compilation after r79654.
2337
2338         * GNUmakefile.am:
2339
2340 2011-02-24  Brian Weinstein  <bweinstein@apple.com>
2341
2342         Qt build fix.
2343
2344         * WebKit2.pri:
2345
2346 2011-02-24  Brady Eidson  <beidson@apple.com>
2347
2348         Reviewed by Sam Weinig and looked over by Brian Weinstein.
2349
2350         Part of <rdar://problem/8762095> and https://bugs.webkit.org/show_bug.cgi?id=55172
2351         Need WebKit2 API to view/manage origins with LocalStorage.
2352
2353         Project file stuff:
2354         * GNUmakefile.am:
2355         * WebKit2.pri:
2356         * WebKit2.pro:
2357         * WebKit2.xcodeproj/project.pbxproj:
2358         * win/WebKit2.vcproj:
2359         * win/WebKit2Common.vsprops:
2360         * win/WebKit2Generated.make:
2361
2362         WK2 derived sources and API stuff:
2363         * DerivedSources.make:
2364         * DerivedSources.pro:
2365         * Platform/CoreIPC/MessageID.h:
2366         * Shared/API/c/WKBase.h:
2367         * Shared/APIObject.h:
2368         * UIProcess/API/C/WKAPICast.h:
2369
2370         Add an KeyValueStorageManager to the context and invalidate it at the appropriate times:
2371         * UIProcess/WebContext.cpp:
2372         (WebKit::WebContext::WebContext):
2373         (WebKit::WebContext::~WebContext):
2374         (WebKit::WebContext::disconnectProcess):
2375         (WebKit::WebContext::didReceiveMessage):
2376         * UIProcess/WebContext.h:
2377         (WebKit::WebContext::keyValueStorageManagerProxy):
2378
2379         Add API to get the KeyValueStorageManager for a context:
2380         * UIProcess/API/C/WKContext.cpp:
2381         (WKContextGetKeyValueStorageManager):
2382         * UIProcess/API/C/WKContext.h:
2383
2384         Route messages to the right place:
2385         * UIProcess/WebProcessProxy.cpp:
2386         (WebKit::WebProcessProxy::didReceiveMessage):
2387         * WebProcess/WebProcess.cpp:
2388         (WebKit::WebProcess::didReceiveMessage):
2389
2390         Add the API object, which wraps to WebKeyValueStorageManagerProxy:
2391         * UIProcess/API/C/WKKeyValueStorageManager.cpp: Added.
2392         (WKKeyValueStorageManagerGetTypeID):
2393         (WKKeyValueStorageManagerGetKeyValueStorageOrigins):
2394         (WKKeyValueStorageManagerDeleteEntriesForOrigin):
2395         (WKKeyValueStorageManagerDeleteAllEntries):
2396         * UIProcess/API/C/WKKeyValueStorageManager.h: Added.
2397
2398         The UIProcess implementation of the manager to send messages to the WebProcess and pipe a callback back up to the client:
2399         * UIProcess/WebKeyValueStorageManagerProxy.cpp: Added.
2400         (WebKit::WebKeyValueStorageManagerProxy::create):
2401         (WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy):
2402         (WebKit::WebKeyValueStorageManagerProxy::~WebKeyValueStorageManagerProxy):
2403         (WebKit::WebKeyValueStorageManagerProxy::invalidate):
2404         (WebKit::WebKeyValueStorageManagerProxy::didReceiveMessage):
2405         (WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins):
2406         (WebKit::WebKeyValueStorageManagerProxy::didGetKeyValueStorageOrigins):
2407         (WebKit::WebKeyValueStorageManagerProxy::deleteEntriesForOrigin):
2408         (WebKit::WebKeyValueStorageManagerProxy::deleteAllEntries):
2409         * UIProcess/WebKeyValueStorageManagerProxy.h: Added.
2410         (WebKit::WebKeyValueStorageManagerProxy::clearContext):
2411         (WebKit::WebKeyValueStorageManagerProxy::type):
2412         * UIProcess/WebKeyValueStorageManagerProxy.messages.in: Added.
2413
2414         The WebProcess implementation to response to UIProcess messages and actually do the dirty-work in WebCore:
2415         * WebProcess/KeyValueStorage: Added.
2416         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: Added.
2417         (WebKit::WebKeyValueStorageManager::shared):
2418         (WebKit::WebKeyValueStorageManager::WebKeyValueStorageManager):
2419         (WebKit::WebKeyValueStorageManager::didReceiveMessage):
2420         (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
2421         (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin):
2422         (WebKit::WebKeyValueStorageManager::deleteAllEntries):
2423         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.h: Added.
2424         * WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in: Added.
2425
2426 2011-02-24  Darin Adler  <darin@apple.com>
2427
2428         Reviewed by Anders Carlsson.
2429
2430         WebKit2: Image-based cursors do not work
2431         https://bugs.webkit.org/show_bug.cgi?id=55184
2432
2433         * Shared/ShareableBitmap.h: Added releaseData function
2434         declaration. This is only defined for CG, but we can declare
2435         it without defining it on non-CG platforms without causing problems.
2436
2437         * Shared/WebCoreArgumentCoders.cpp: Added.
2438         (CoreIPC::encodeImage): Added. For use in the Cursor argument coder.
2439         (CoreIPC::decodeImage): Ditto.
2440
2441         * Shared/WebCoreArgumentCoders.h: Added code to the Cursor encoder
2442         and decoder to handle image-based cursors, using the new encodeImage
2443         and decodeImage functions.
2444
2445         * Shared/cg/ShareableBitmapCG.cpp:
2446         (WebKit::ShareableBitmap::releaseData): Added.
2447         (WebKit::ShareableBitmap::createGraphicsContext): Use
2448         CGBitmapContextCreateWithData instead of CGBitmapContextCreate,
2449         to guarantee we outlast the CGBitmapContext we create.
2450         (WebKit::ShareableBitmap::paint): Got rid of unnneeded local variable.
2451
2452         * Shared/cg/WebCoreArgumentCodersCG.cpp: Added.
2453         (CoreIPC::createImage): Added. For use by CoreIPC::decodeImage.
2454
2455         * WebKit2.xcodeproj/project.pbxproj: Added WebCoreArgumentCoders.cpp
2456         and WebCoreArgumentCodersCG.cpp.
2457         * win/WebKit2.vcproj: Ditto.
2458
2459 2011-02-24  Anders Carlsson  <andersca@apple.com>
2460
2461         Reviewed by Dan Bernstein.
2462
2463         Crash when trying to send a sync message on an invalid connection
2464         https://bugs.webkit.org/show_bug.cgi?id=55190
2465         <rdar://problem/9035806>
2466
2467         * Platform/CoreIPC/Connection.cpp:
2468         (CoreIPC::Connection::sendSyncMessage):
2469         Don't try to call a client function if isValid() returns false since the client
2470         will be null in that case.
2471
2472 2011-02-24  Anders Carlsson  <andersca@apple.com>
2473
2474         Reviewed by Dan Bernstein.
2475
2476         Remove the layer backed drawing area
2477         https://bugs.webkit.org/show_bug.cgi?id=55174
2478
2479         * GNUmakefile.am:
2480         * Shared/DrawingAreaInfo.h:
2481         * UIProcess/API/mac/WKView.mm:
2482         * UIProcess/LayerBackedDrawingAreaProxy.cpp: Removed.
2483         * UIProcess/LayerBackedDrawingAreaProxy.h: Removed.
2484         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm: Removed.
2485         * UIProcess/win/LayerBackedDrawingAreaProxyWin.cpp: Removed.
2486         * UIProcess/win/WebView.cpp:
2487         * WebKit2.xcodeproj/project.pbxproj:
2488         * WebProcess/WebPage/DrawingArea.cpp:
2489         (WebKit::DrawingArea::create):
2490         * WebProcess/WebPage/LayerBackedDrawingArea.cpp: Removed.
2491         * WebProcess/WebPage/LayerBackedDrawingArea.h: Removed.
2492         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm: Removed.
2493         * WebProcess/WebPage/win/LayerBackedDrawingAreaWin.cpp: Removed.
2494         * win/WebKit2.vcproj:
2495
2496 2011-02-24  Mike Thole  <mthole@apple.com>
2497
2498         Reviewed by Sam Weinig.
2499
2500         WK2: Add ability to get document node for a WKBundleNodeHandle
2501         https://bugs.webkit.org/post_bug.cgi
2502
2503         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
2504         (WKBundleNodeHandleCopyDocument):
2505         * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h:
2506         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
2507         (WebKit::InjectedBundleNodeHandle::document):
2508         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
2509
2510 2011-02-24  Brady Eidson  <beidson@apple.com>
2511
2512         Reviewed by Adam Roben and looked at by Brian Weinstein.
2513
2514         https://bugs.webkit.org/show_bug.cgi?id=55165
2515         Can call CF API with a null CFArray in WebResourceCacheManager
2516
2517         * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
2518         (WebKit::WebResourceCacheManager::getCacheOrigins): cfURLCacheHostNames() can return a null CFArrayRef, 
2519           so the call to CFArrayGetCount must be null checked.
2520
2521 2011-02-24  Anders Carlsson  <andersca@apple.com>
2522
2523         Reviewed by Simon Fraser.
2524
2525         ASSERTION FAILED: !isInAcceleratedCompositingMode() when entering accelerated compositing early
2526         https://bugs.webkit.org/show_bug.cgi?id=55162
2527         <rdar://problem/9048523>
2528
2529         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2530         (WebKit::DrawingAreaImpl::updateState):
2531         Call setShouldNotifyAfterNextScheduledLayerFlush(false) so the web process process won't send an
2532         EnterAcceleratedCompositingMode message.
2533
2534         (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):
2535         setShouldNotifyAfterNextScheduledLayerFlush now takes a boolean.
2536
2537         * WebProcess/WebPage/LayerTreeHost.h:
2538         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
2539         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
2540         (WebKit::LayerTreeHostMac::setShouldNotifyAfterNextScheduledLayerFlush):
2541         Make this take a boolean.
2542
2543 2011-02-24  Peter Kasting  <pkasting@google.com>
2544
2545         Reviewed by Eric Seidel.
2546
2547         Drop the "U; " encryption level from the User Agent string.
2548         https://bugs.webkit.org/show_bug.cgi?id=54566
2549
2550         * UIProcess/gtk/WebPageProxyGtk.cpp:
2551         (WebKit::WebPageProxy::standardUserAgent):
2552         * UIProcess/mac/WebPageProxyMac.mm:
2553         (WebKit::WebPageProxy::standardUserAgent):
2554         * UIProcess/qt/WebPageProxyQt.cpp:
2555         (WebKit::WebPageProxy::standardUserAgent):
2556         * UIProcess/win/WebPageProxyWin.cpp:
2557         (WebKit::WebPageProxy::standardUserAgent):
2558
2559 2011-02-24  Andrew Wilson  <atwilson@chromium.org>
2560
2561         Unreviewed, rolling out r79570.
2562         http://trac.webkit.org/changeset/79570
2563         https://bugs.webkit.org/show_bug.cgi?id=54874
2564
2565         Breaks chromium build because glue/mocks/mock_web_frame.h/cc
2566         was not updated
2567
2568         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
2569         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
2570
2571 2011-02-23  Brian Weinstein  <bweinstein@apple.com>
2572
2573         Reviewed by Adam Roben and looked over by Jessie Berlin.
2574
2575         Part of WebKit2: Need a way to manage cookies from the web process
2576         https://bugs.webkit.org/show_bug.cgi?id=55086
2577         
2578         This patch adds the plumbing and classes that are needed to manage cookies from the web process.
2579         The functions that the API calls are currently stubs, but will be implemented in a follow-up patch.
2580
2581         Project file changes.
2582         * DerivedSources.make:
2583         * DerivedSources.pro:
2584         * GNUmakefile.am:
2585         * WebKit2.pri:
2586         * WebKit2.pro:
2587         * WebKit2.xcodeproj/project.pbxproj:
2588         * win/WebKit2.vcproj:
2589         * win/WebKit2Common.vsprops:
2590         * win/WebKit2Generated.make:
2591
2592         Add some needed plumbing for WebCookieManager{Proxy}.
2593         * Platform/CoreIPC/MessageID.h:
2594         * Shared/API/c/WKBase.h:
2595         * Shared/APIObject.h:
2596         * UIProcess/API/C/WKAPICast.h:
2597
2598         * UIProcess/API/C/WKContext.cpp:
2599         (WKContextGetCookieManager): Gets the cookie manager proxy.
2600         * UIProcess/API/C/WKContext.h:
2601         * UIProcess/API/C/WKCookieManager.cpp: Added.
2602         (WKCookieManagerGetTypeID):
2603         (WKCookieManagerGetHostnamesWithCookies): Calls through to WebCookieManagerProxy.
2604         (WKCookieManagerDeleteCookiesForHostname): Ditto.
2605         (WKCookieManagerDeleteAllCookies): Ditto.
2606         * UIProcess/API/C/WKCookieManager.h: Added.
2607
2608         * UIProcess/WebProcessProxy.cpp:
2609         (WebKit::WebProcessProxy::didReceiveMessage): Add a case for the cookie manager.
2610         * UIProcess/WebContext.cpp:
2611         (WebKit::WebContext::WebContext): Initialize the cookie manager.
2612         (WebKit::WebContext::~WebContext): Invalidate the cookie manager.
2613         (WebKit::WebContext::disconnectProcess): Ditto.
2614         (WebKit::WebContext::didReceiveMessage): Add a case for the cookie manager.
2615         * UIProcess/WebContext.h:
2616         (WebKit::WebContext::cookieManagerProxy): Returns the cookie manager.
2617         * WebProcess/WebProcess.cpp:
2618         (WebKit::WebProcess::didReceiveMessage): Add a case for the cookie manager.
2619
2620         * UIProcess/WebCookieManagerProxy.cpp: Added.
2621         (WebKit::WebCookieManagerProxy::create):
2622         (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
2623         (WebKit::WebCookieManagerProxy::~WebCookieManagerProxy):
2624         (WebKit::WebCookieManagerProxy::invalidate):
2625         (WebKit::WebCookieManagerProxy::didReceiveMessage): 
2626         (WebKit::WebCookieManagerProxy::getHostnamesWithCookies): Call through to the web process to get hostnames with cookies.
2627         (WebKit::WebCookieManagerProxy::didGetHostnamesWithCookies): Call the callback we were passed in getHostnamesWithCookies.
2628         (WebKit::WebCookieManagerProxy::deleteCookiesForHostname): Call through to the web process to delete cookies
2629             for the origin.
2630         (WebKit::WebCookieManagerProxy::deleteAllCookies): Call through to the web process to delete all cookies.
2631         * UIProcess/WebCookieManagerProxy.h: Added.
2632         (WebKit::WebCookieManagerProxy::clearContext):
2633         (WebKit::WebCookieManagerProxy::type):
2634         * UIProcess/WebCookieManagerProxy.messages.in: Added.
2635
2636         * WebProcess/Cookies: Added.
2637         * WebProcess/Cookies/WebCookieManager.cpp: Added.
2638         (WebKit::WebCookieManager::shared):
2639         (WebKit::WebCookieManager::WebCookieManager):
2640         (WebKit::WebCookieManager::didReceiveMessage): Call through to didReceiveWebCookieManagerMessage.
2641         (WebKit::WebCookieManager::getHostnamesWithCookies): Build an array from a HashSet (that isn't filled yet), and 
2642             convert that HashSet to a Vector to send to the UI process.
2643         (WebKit::WebCookieManager::deleteCookiesForHostname): Added a stub.
2644         (WebKit::WebCookieManager::deleteAllCookies): Ditto.
2645         * WebProcess/Cookies/WebCookieManager.h: Added.
2646         * WebProcess/Cookies/WebCookieManager.messages.in: Added.
2647
2648 2011-02-24   Amruth Raj  <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com> and Alejandro G. Castro  <alex@igalia.com>
2649
2650         Reviewed by Martin Robinson.
2651
2652         [GTK] Implement WebEventFactory, WebErrors classes for WebKit2
2653         https://bugs.webkit.org/show_bug.cgi?id=48510
2654
2655         * GNUmakefile.am:
2656         * Shared/gtk/WebEventFactory.cpp: Added. implementation for
2657         WebMouseEvent, WebWheelEvent, WebKeyboardEvent.
2658         * Shared/gtk/WebEventFactory.h: Added.
2659         * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp: Added. Stubbed
2660         implementation for GTK port.
2661
2662 2011-02-24  Vsevolod Vlasov  <vsevik@chromium.org>
2663
2664         Reviewed by Alexey Proskuryakov.
2665
2666         DumpRenderTree should reset frame opener between tests.
2667         https://bugs.webkit.org/show_bug.cgi?id=54874
2668
2669         Added clearOpener method to WKBundleWebFramePrivate.
2670
2671         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
2672         (WKBundleFrameClearOpener):
2673         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
2674
2675 2011-02-24  Benjamin Poulain  <benjamin.poulain@nokia.com>
2676
2677         Reviewed by Eric Seidel.
2678
2679         Support building WebKit with Python 3
2680         https://bugs.webkit.org/show_bug.cgi?id=55038
2681
2682         Update the generator scripts to support Python 3.
2683
2684         * Scripts/generate-message-receiver.py: print is a function in Python 3, write the output to
2685         sys.stdout to be compatible with Python 2 and 3.
2686         * Scripts/generate-messages-header.py:
2687         * Scripts/webkit2/messages.py: dist.iteritems does not exist in Python 3, fallback
2688           to dict.items which is common to Python 2 and 3.
2689
2690 2011-02-24  Andras Becsi  <abecsi@webkit.org>
2691
2692         Reviewed by Laszlo Gombos.
2693
2694         [Qt] MinGW build fails to link
2695         https://bugs.webkit.org/show_bug.cgi?id=55050
2696
2697         Prepend the libraries of subcomponents instead of appending them
2698         to fix the library order according to the dependency of the libraries
2699
2700         * WebKit2.pri:
2701
2702 2011-02-24  Andras Becsi  <abecsi@webkit.org>
2703
2704         Reviewed by Csaba Osztrogonác.
2705
2706         [Qt] REGRESSION(69304): WKNativeEvent.h forwarding header is always regenerated
2707         https://bugs.webkit.org/show_bug.cgi?id=47589
2708
2709         In case of file name clashes only generate forwarding header for the current platform.
2710
2711         * Scripts/generate-forwarding-headers.pl:
2712
2713 2011-02-23  Anders Carlsson  <andersca@apple.com>
2714
2715         Reviewed by Sam Weinig.
2716
2717         Remove some of the old accelerated compositing code
2718         https://bugs.webkit.org/show_bug.cgi?id=55084
2719
2720         * UIProcess/API/mac/PageClientImpl.h:
2721         * UIProcess/API/mac/PageClientImpl.mm:
2722         (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
2723         * UIProcess/API/mac/WKView.mm:
2724         * UIProcess/API/mac/WKViewInternal.h:
2725         * UIProcess/API/qt/qwkpage_p.h:
2726         * UIProcess/PageClient.h:
2727         * UIProcess/WebPageProxy.cpp:
2728         (WebKit::WebPageProxy::exitAcceleratedCompositingMode):
2729         * UIProcess/WebPageProxy.h:
2730         * UIProcess/WebPageProxy.messages.in:
2731         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
2732         (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext):
2733         (WebKit::LayerBackedDrawingAreaProxy::detachCompositingContext):
2734         * UIProcess/win/WebView.cpp:
2735         * UIProcess/win/WebView.h:
2736         * WebProcess/WebPage/WebPage.cpp:
2737         (WebKit::WebPage::enterAcceleratedCompositingMode):
2738         (WebKit::WebPage::exitAcceleratedCompositingMode):
2739         * WebProcess/WebPage/WebPage.h:
2740
2741 2011-02-23  Enrica Casucci  <enrica@apple.com>
2742
2743         Reverting an unintentional change that was part of http://trac.webkit.org/changeset/79494.
2744         Unreviewed.
2745
2746         * WebProcess/WebPage/mac/WebPageMac.mm:
2747         (WebKit::WebPage::interceptEditingKeyboardEvent):
2748
2749 2011-02-18  Enrica Casucci  <enrica@apple.com>
2750
2751         Reviewed by Adam Roben.
2752
2753         Mac OS X Services are not available for selected text in WebKit2 windows.
2754         https://bugs.webkit.org/show_bug.cgi?id=54777
2755         <rdar://problem/8666428>
2756         
2757         This patch adds support for Mac OS X Services in WebKit2 windows.
2758         In WKView we now call registerServicesMenuSendTypes providing the
2759         pasteboard types supported by WebKit and we also implement the two
2760         protocol methods required to validate the send type and write the
2761         content to the pasteboard. Unfortunately, AppKit expects the content
2762         to be available in the pasteboard upon return from writeSelectionToPasteboard and
2763         this is the reason why the call to the WebProcess is synchronous.
2764
2765         * Shared/SelectionState.h:
2766         (WebKit::SelectionState::SelectionState): Extended to include
2767         isContentRichlyEditable
2768         * Shared/mac/PasteboardTypes.h:
2769         * Shared/mac/PasteboardTypes.mm:
2770         (WebKit::PasteboardTypes::forSelection): Added.
2771         * UIProcess/API/mac/WKView.mm:
2772         (-[WKView initWithFrame:contextRef:pageGroupRef:]): Added call
2773         to registerServicesMenuSendTypes.
2774         (-[WKView writeSelectionToPasteboard:types:]): Added.
2775         (-[WKView validRequestorForSendType:returnType:]): Added.
2776         * UIProcess/WebPageProxy.cpp:
2777         (WebKit::WebPageProxy::writeSelectionToPasteboard):
2778         * UIProcess/WebPageProxy.h:
2779         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2780         (WebKit::WebEditorClient::respondToChangedSelection): Modified to
2781         support the new SelectionState value.
2782         * WebProcess/WebPage/WebPage.h:
2783         * WebProcess/WebPage/WebPage.messages.in:
2784         * WebProcess/WebPage/mac/WebPageMac.mm:
2785         (WebKit::WebPage::writeSelectionToPasteboard): Added synchronous
2786         message to write the selected content to the pasteboard.
2787
2788 2011-02-23  Anders Carlsson  <andersca@apple.com>
2789
2790         Reviewed by Sam Weinig.
2791
2792         Add a ShareableBitmap::create overload that takes an existing SharedMemory object
2793         https://bugs.webkit.org/show_bug.cgi?id=55081
2794
2795         * Shared/ShareableBitmap.cpp:
2796         (WebKit::ShareableBitmap::createShareable):
2797         (WebKit::ShareableBitmap::create):
2798         * Shared/ShareableBitmap.h:
2799
2800 2011-02-23  Anders Carlsson  <andersca@apple.com>
2801
2802         Reviewed by Dan Bernstein.
2803
2804         Web Inspector toolbar looks bad in WebKit2
2805         https://bugs.webkit.org/show_bug.cgi?id=55076
2806         <rdar://problem/8866258>
2807
2808         * UIProcess/API/mac/WKView.mm:
2809         (-[WKView mouseDownCanMoveWindow]):
2810         Return NO from mouseDownCanMoveWindow to prevent drags in the (now transparent) inspector WKView
2811         from dragging the window around.
2812
2813         * UIProcess/mac/WebInspectorProxyMac.mm:
2814         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2815         Call [WKView setDrawsBackground:NO].
2816
2817 2011-02-23  Sam Weinig  <sam@webkit.org>
2818
2819         Reviewed by Anders Carlsson.
2820
2821         Remove WKPageForceRepaintWithInvalidation and instead make WKPageForceRepaint
2822         always dirty the entire page.
2823
2824         * Shared/ForceRepaintFlags.h: Removed.
2825         * UIProcess/API/C/WKPage.cpp:
2826         (WKPageForceRepaint):
2827         * UIProcess/API/C/WKPage.h:
2828         * UIProcess/WebPageProxy.cpp:
2829         (WebKit::WebPageProxy::forceRepaint):
2830         * UIProcess/WebPageProxy.h:
2831         * WebKit2.pro:
2832         * WebKit2.xcodeproj/project.pbxproj:
2833         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2834         (WebKit::DrawingAreaImpl::forceRepaint):
2835         * WebProcess/WebPage/WebPage.cpp:
2836         (WebKit::WebPage::forceRepaint):
2837         * WebProcess/WebPage/WebPage.h:
2838         * WebProcess/WebPage/WebPage.messages.in:
2839         * win/WebKit2.vcproj:
2840
2841 2011-02-23  Anders Carlsson  <andersca@apple.com>
2842
2843         Reviewed by Sam Weinig.
2844
2845         Race condition when creating and destroying pages quickly
2846         https://bugs.webkit.org/show_bug.cgi?id=55061
2847         <rdar://problem/8708435>
2848
2849         When the last page in a web process is closed, the web process would
2850         previously terminate, even if the UI process had created a new page
2851         (the CreateNewPage message just wouldn't have reached the web process yet).
2852
2853         Fix this by adding a ShouldTerminate message that the web process sends when it's
2854         about to terminate. If the UI process has any pending pages, downloads etc. it will
2855         prevent the web process from terminating. Otherwise, it will immmediately disconnect
2856         the WebPageProxy so that creating a page after that will launch a new web process.
2857
2858         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
2859         (WebKit::WebPluginSiteDataManager::shouldTerminate):
2860         * UIProcess/Plugins/WebPluginSiteDataManager.h:
2861         * UIProcess/WebContext.cpp:
2862         (WebKit::WebContext::shouldTerminate):
2863         (WebKit::WebContext::disconnectProcess):
2864         * UIProcess/WebContext.h:
2865         * UIProcess/WebProcessProxy.cpp:
2866         (WebKit::WebProcessProxy::disconnect):
2867         (WebKit::WebProcessProxy::didReceiveSyncMessage):
2868         (WebKit::WebProcessProxy::didClose):
2869         (WebKit::WebProcessProxy::shouldTerminate):
2870         * UIProcess/WebProcessProxy.h:
2871         * UIProcess/WebProcessProxy.messages.in:
2872         * WebProcess/WebProcess.cpp:
2873         (WebKit::WebProcess::terminateIfPossible):
2874
2875 2011-02-23  Mike Thole  <mthole@apple.com>
2876
2877         Reviewed by Darin Adler.
2878
2879         WKBundleNavigationAction.h should be exposed as a public header
2880         https://bugs.webkit.org/show_bug.cgi?id=55059
2881
2882         * WebKit2.xcodeproj/project.pbxproj:
2883         Changed WKBundleNavigationAction.h from 'project' to 'public'.
2884
2885 2011-02-23  Siddharth Mathur  <siddharth.mathur@nokia.com>
2886
2887         Reviewed by Laszlo Gombos.
2888
2889         [Qt] Make sure Symbian binary UIDs are unique
2890
2891         * WebProcess.pro: Resolve the UID collision with QtTestBrowser.pro
2892         by changing the UID.
2893
2894 2011-02-23  Siddharth Mathur  <siddharth.mathur@nokia.com>
2895
2896         Reviewed by Laszlo Gombos.
2897
2898         [Qt] Fix the Symbian build after r79334
2899         https://bugs.webkit.org/show_bug.cgi?id=55044
2900
2901         * WebKit2.pri: Copy the rules from JavaScriptCore.pri for
2902         defineTest().
2903
2904         Remove addWebKit2LibWholeArchive as it is no longer needed.
2905
2906 2011-02-23  Alejandro G. Castro  <alex@igalia.com>
2907
2908         Unreviewed, fixed GTK WebKit2 compilation after r79366.
2909
2910         * GNUmakefile.am:
2911
2912 2011-02-23  Patrick Gansterer  <paroga@webkit.org>
2913
2914         Reviewed by Darin Adler.
2915
2916         Rename PLATFORM(CF) to USE(CF)
2917         https://bugs.webkit.org/show_bug.cgi?id=53540
2918
2919         * UIProcess/WebBackForwardList.h:
2920         * UIProcess/WebPageProxy.cpp:
2921         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2922         (WebKit::formatLocalizedString):
2923
2924 2011-02-23  Benjamin Poulain  <benjamin.poulain@nokia.com>
2925
2926         Reviewed by Andreas Kling.
2927
2928         [Qt] [WK2] When the context menu is empty, we should still send the signal QWKPage::showContextMenu()
2929         https://bugs.webkit.org/show_bug.cgi?id=54996
2930
2931         Send the signal QWKPage::showContextMenu() with an empty menu even if the content menu generated
2932         is empty/contain only disabled elements.
2933
2934         * UIProcess/API/qt/qgraphicswkview.cpp:
2935         (QGraphicsWKView::showContextMenu):
2936         * UIProcess/qt/WebContextMenuProxyQt.cpp:
2937         (WebKit::WebContextMenuProxyQt::showContextMenu):
2938
2939 2011-02-22  Dan Bernstein  <mitz@apple.com>
2940
2941         LLVM Compiler build fix.
2942
2943         * Scripts/webkit2/messages.py:
2944         * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
2945
2946 2011-02-22  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2947
2948         Reviewed by Alexey Proskuryakov.
2949
2950         Drop the language tag part from the User Agent string
2951         https://bugs.webkit.org/show_bug.cgi?id=54560
2952
2953         * UIProcess/gtk/WebPageProxyGtk.cpp:
2954         (WebKit::WebPageProxy::standardUserAgent):
2955
2956         * UIProcess/mac/WebPageProxyMac.mm:
2957         (WebKit::WebPageProxy::standardUserAgent):
2958
2959         * UIProcess/qt/WebPageProxyQt.cpp:
2960         (WebKit::WebPageProxy::standardUserAgent):
2961
2962         * UIProcess/win/WebPageProxyWin.cpp:
2963         (WebKit::WebPageProxy::standardUserAgent): Drop the language tag
2964         part and fix style.
2965
2966 2011-02-22  Sam Weinig  <sam@webkit.org>
2967
2968         Reviewed by Anders Carlsson.
2969
2970         Add WebKit2 API to force a repaint with an invalidation
2971         https://bugs.webkit.org/show_bug.cgi?id=55015
2972
2973         * Shared/ForceRepaintFlags.h: Added.
2974         * UIProcess/API/C/WKPage.cpp:
2975         (WKPageForceRepaint):
2976         (WKPageForceRepaintWithInvalidation):
2977         * UIProcess/API/C/WKPage.h:
2978         Add WKPageForceRepaintWithInvalidation which does the same thing WKPageForceRepaint
2979         but also calls setNeedsDisplay on the entire bounds of the page.
2980
2981         * UIProcess/WebPageProxy.cpp:
2982         (WebKit::WebPageProxy::forceRepaint):
2983         * UIProcess/WebPageProxy.h:
2984         * WebProcess/WebPage/WebPage.cpp:
2985         (WebKit::WebPage::forceRepaint):
2986         * WebProcess/WebPage/WebPage.h:
2987         * WebProcess/WebPage/WebPage.messages.in:
2988         Pipe the flag down to the WebProcess.
2989
2990         * WebKit2.pro:
2991         * WebKit2.xcodeproj/project.pbxproj:
2992         * win/WebKit2.vcproj:
2993         Add ForceRepaintFlags.h.
2994
2995 2011-02-22  Simon Fraser  <simon.fraser@apple.com>
2996
2997         Reviewed by Dan Bernstein.
2998
2999         <rdar://problem/9039670>
3000         
3001         Make sure that we set the accelerateDrawing property on the LayerTreeHosts's
3002         non-composited content layer if the preference is set.
3003
3004         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
3005         (WebKit::LayerTreeHostMac::LayerTreeHostMac):
3006
3007 2011-02-22  Brady Eidson  <beidson@apple.com>
3008
3009         Fix it Windows-style.
3010
3011         * WebProcess/WebProcess.cpp:
3012         (WebKit::WebProcess::getSitesWithPluginData):
3013         (WebKit::WebProcess::clearPluginSiteData):
3014
3015 2011-02-22  Anders Carlsson  <andersca@apple.com>
3016
3017         Reviewed by Dan Bernstein.
3018
3019         Rename WebProcess::shutdownIfPossible to WebProcess::terminateIfPossible
3020         https://bugs.webkit.org/show_bug.cgi?id=55008
3021
3022         * WebProcess/Downloads/DownloadManager.cpp:
3023         (WebKit::DownloadManager::downloadFinished):
3024         * WebProcess/WebProcess.cpp:
3025         (WebKit::WebProcess::removeWebPage):
3026         (WebKit::WebProcess::terminateIfPossible):
3027         (WebKit::WebProcess::getSitesWithPluginData):
3028         * WebProcess/WebProcess.h:
3029         * WebProcess/gtk/WebProcessGtk.cpp:
3030         (WebKit::WebProcess::platformTerminate):
3031         * WebProcess/mac/WebProcessMac.mm:
3032         (WebKit::WebProcess::platformTerminate):
3033         * WebProcess/qt/WebProcessQt.cpp:
3034         (WebKit::WebProcess::platformTerminate):
3035         * WebProcess/win/WebProcessWin.cpp:
3036         (WebKit::WebProcess::platformTerminate):
3037
3038 2011-02-22  Brady Eidson  <beidson@apple.com>
3039
3040         Windows build-fix attempt.
3041
3042         * win/WebKit2Generated.make:
3043
3044 2011-02-22  Csaba Osztrogonác  <ossy@webkit.org>
3045
3046         Unreviewed.
3047
3048         <rdar://problem/8762042> and  https://bugs.webkit.org/show_bug.cgi?id=54514
3049         API to view and delete Application Cache data by origin.
3050
3051         [Qt][WK2] Buildfix after r79364.
3052
3053         * DerivedSources.pro:
3054         * WebKit2.pri:
3055
3056 2011-02-22  Brady Eidson  <beidson@apple.com>
3057
3058         Reviewed by Anders Carlsson and looked over by Brian Weinstein.
3059
3060         <rdar://problem/8762042> and https://bugs.webkit.org/show_bug.cgi?id=54514
3061         API to view and delete Application Cache data by origin.
3062
3063         I couldn't help myself - I also re-alphabetized WebResourceCacheManager in many places where
3064         it's sorting was wrong due to a last minute name change.
3065
3066         Project file changes:
3067         * GNUmakefile.am:
3068         * win/WebKit2.vcproj:
3069         * win/WebKit2Common.vsprops:
3070         * win/WebKit2Generated.make:
3071         * WebKit2.pro:
3072         * WebKit2.xcodeproj/project.pbxproj:
3073
3074         WK2 build-system and API paperwork:
3075         * DerivedSources.make:
3076         * Platform/CoreIPC/MessageID.h:
3077         * Shared/API/c/WKBase.h:
3078         * Shared/APIObject.h:
3079         * UIProcess/API/C/WKAPICast.h:
3080
3081         Add a helper to perform an ArrayCallback with a Vector of SecurityOriginDatas:
3082         * Shared/SecurityOriginData.cpp:
3083         (WebKit::performAPICallbackWithSecurityOriginDataVector):
3084         * Shared/SecurityOriginData.h:
3085         * UIProcess/WebResourceCacheManagerProxy.cpp:
3086         (WebKit::WebResourceCacheManagerProxy::didGetCacheOrigins): Use performAPICallbackWithSecurityOriginDataVector here.
3087
3088         Add an ApplicationCacheManagerProxy to the context and invalidate it at the appropriate times:
3089         * UIProcess/WebContext.cpp:
3090         (WebKit::WebContext::WebContext):
3091         (WebKit::WebContext::~WebContext):
3092         (WebKit::WebContext::processDidClose):
3093         (WebKit::WebContext::didReceiveMessage): Route messages to the right proxy.
3094         * UIProcess/WebContext.h:
3095         (WebKit::WebContext::applicationCacheManagerProxy):
3096         (WebKit::WebContext::resourceCacheManagerProxy):
3097
3098         Add API to get the ApplicationCacheManager for a context:
3099         * UIProcess/API/C/WKContext.cpp:
3100         (WKContextGetApplicationCacheManager):
3101         (WKContextGetResourceCacheManager):
3102         * UIProcess/API/C/WKContext.h:
3103
3104         Route messages to the right place:
3105         * UIProcess/WebProcessProxy.cpp:
3106         (WebKit::WebProcessProxy::didReceiveMessage):
3107         * WebProcess/WebProcess.cpp:
3108         (WebKit::WebProcess::didReceiveMessage):
3109
3110         Add the API object, which wraps to WebApplicationCacheManagerProxy:
3111         * UIProcess/API/C/WKApplicationCacheManager.cpp: Added.
3112         (WKApplicationCacheManagerGetTypeID):
3113         (WKApplicationCacheManagerGetApplicationCacheOrigins):
3114         (WKApplicationCacheManagerDeleteEntriesForOrigin):
3115         (WKApplicationCacheManagerDeleteAllEntries):
3116         * UIProcess/API/C/WKApplicationCacheManager.h: Added.
3117
3118         The UIProcess implementation of the manager to send messages to the WebProcess and pipe a callback back up to the client:
3119         * UIProcess/WebApplicationCacheManagerProxy.cpp: Added.
3120         (WebKit::WebApplicationCacheManagerProxy::create):
3121         (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
3122         (WebKit::WebApplicationCacheManagerProxy::~WebApplicationCacheManagerProxy):
3123         (WebKit::WebApplicationCacheManagerProxy::invalidate):
3124         (WebKit::WebApplicationCacheManagerProxy::didReceiveMessage):
3125         (WebKit::WebApplicationCacheManagerProxy::getApplicationCacheOrigins):
3126         (WebKit::WebApplicationCacheManagerProxy::didGetApplicationCacheOrigins): Use performAPICallbackWithSecurityOriginDataVector here.
3127         (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin):
3128         (WebKit::WebApplicationCacheManagerProxy::deleteAllEntries):
3129         * UIProcess/WebApplicationCacheManagerProxy.h: Added.
3130         (WebKit::WebApplicationCacheManagerProxy::clearContext):
3131         (WebKit::WebApplicationCacheManagerProxy::type):
3132         * UIProcess/WebApplicationCacheManagerProxy.messages.in: Added.
3133
3134         The WebProcess implementation to response to UIProcess messages and actually do the dirty-work in WebCore:
3135         * WebProcess/ApplicationCache: Added.
3136         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp: Added.
3137         (WebKit::WebApplicationCacheManager::shared):
3138         (WebKit::WebApplicationCacheManager::WebApplicationCacheManager):
3139         (WebKit::WebApplicationCacheManager::didReceiveMessage):
3140         (WebKit::WebApplicationCacheManager::getApplicationCacheOrigins):
3141         (WebKit::WebApplicationCacheManager::deleteEntriesForOrigin):
3142         (WebKit::WebApplicationCacheManager::deleteAllEntries):
3143         * WebProcess/ApplicationCache/WebApplicationCacheManager.h: Added.
3144         * WebProcess/ApplicationCache/WebApplicationCacheManager.messages.in: Added.
3145
3146 2011-02-22  Anders Carlsson  <andersca@apple.com>
3147
3148         Reviewed by Sam Weinig.
3149
3150         Get rid of WebProcessManager
3151         https://bugs.webkit.org/show_bug.cgi?id=55001
3152
3153         WebProcessManager had become a stupid map of WebContext > WebProcess relations,
3154         which isn't really useful since the WebContext already knows about its process.
3155
3156         * Shared/WebURLRequest.cpp:
3157         * UIProcess/API/mac/WKView.mm:
3158         * UIProcess/WebContext.cpp:
3159         (WebKit::WebContext::~WebContext):
3160         (WebKit::WebContext::ensureWebProcess):
3161         (WebKit::WebContext::processDidFinishLaunching):
3162         * UIProcess/WebProcessManager.cpp: Removed.
3163         * UIProcess/WebProcessManager.h: Removed.
3164         * UIProcess/WebProcessProxy.cpp:
3165         (WebKit::WebProcessProxy::didClose):
3166         * WebKit2.pro:
3167         * WebKit2.xcodeproj/project.pbxproj:
3168         * win/WebKit2.vcproj:
3169
3170 2011-02-22  Anders Carlsson  <andersca@apple.com>
3171
3172         Reviewed by Darin Adler.
3173
3174         Get rid of WebProcessManager::getAllWebProcessContexts
3175         https://bugs.webkit.org/show_bug.cgi?id=55000
3176
3177         * Shared/WebURLRequest.cpp:
3178         (WebKit::WebURLRequest::setDefaultTimeoutInterval):
3179         Call WebContext::allContexts instead.
3180
3181         * UIProcess/WebContext.cpp:
3182         * UIProcess/WebContext.h:
3183         Add a vector of WebContext objects. Update it when creating and destroying contexts.
3184
3185         * UIProcess/WebProcessManager.cpp:
3186         * UIProcess/WebProcessManager.h:
3187         Remove WebProcessManager::getAllWebProcessContexts.
3188
3189 2011-02-22  Sam Weinig  <sam@webkit.org>
3190
3191         Reviewed by Anders Carlsson.
3192
3193         Re-add early bail out in dispatchDecidePolicyForNavigationAction with prevents
3194         a crash running fast/loader/empty-embed-src-attribute.html. This matches a 
3195         bail out in the default policy delegate in WebKit1.
3196
3197         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3198         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
3199
3200 2011-02-22  Anders Carlsson  <andersca@apple.com>
3201
3202         Reviewed by Dan Bernstein.
3203
3204         Grammar correction from Spelling & Grammar window doesn't work
3205         https://bugs.webkit.org/show_bug.cgi?id=54982
3206         <rdar://problem/8940918>
3207
3208         * UIProcess/API/mac/WKView.mm:
3209         (-[WKView isGrammarCheckingEnabled]):
3210         (-[WKView setGrammarCheckingEnabled:]):
3211         Call down to the text checker.
3212
3213         * UIProcess/TextChecker.h:
3214         Add updateSpellingUIWithGrammarString.
3215
3216         * UIProcess/WebPageProxy.cpp:
3217         (WebKit::WebPageProxy::updateSpellingUIWithGrammarString):
3218         Call TextChecker::updateSpellingUIWithGrammarString.
3219
3220         * UIProcess/WebPageProxy.messages.in:
3221         Add UpdateSpellingUIWithGrammarString message.
3222
3223         * UIProcess/gtk/TextCheckerGtk.cpp:
3224         (WebKit::TextChecker::updateSpellingUIWithGrammarString):
3225         * UIProcess/qt/TextCheckerQt.cpp:
3226         (WebKit::TextChecker::updateSpellingUIWithGrammarString):
3227         * UIProcess/win/TextCheckerWin.cpp:
3228         (WebKit::TextChecker::updateSpellingUIWithGrammarString):
3229         Add stubs.
3230
3231         * UIProcess/mac/TextCheckerMac.mm:
3232         (WebKit::TextChecker::updateSpellingUIWithGrammarString):
3233         Update the spelling panel.
3234
3235         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
3236         (WebKit::WebEditorClient::updateSpellingUIWithGrammarString):
3237         Send an UpdateSpellingUIWithGrammarString message to the UI process.
3238
3239 2011-02-22  Balazs Kelemen  <kbalazs@webkit.org>
3240
3241         Reviewed by Anders Carlsson.
3242
3243         notImplemented() should behave identical in WebCore and WebKit2
3244         https://bugs.webkit.org/show_bug.cgi?id=54449
3245
3246         Use NotImplemented.h from WebCore. Initialize logging channels.
3247         Remove the WebKit2 concept of notImplemented().
3248
3249         * Platform/gtk/SharedMemoryGtk.cpp:
3250         * Platform/gtk/WorkQueueGtk.cpp:
3251         * Platform/qt/WorkQueueQt.cpp:
3252         * Platform/win/WorkQueueWin.cpp:
3253         * Shared/NotImplemented.h: Removed.
3254         * Shared/Plugins/NPIdentifierData.cpp:
3255         * Shared/Plugins/NPRemoteObjectMap.cpp:
3256         * Shared/Plugins/NPVariantData.cpp:
3257         * Shared/cairo/ShareableBitmapCairo.cpp:
3258         * Shared/gtk/ShareableBitmapGtk.cpp:
3259         * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
3260         * Shared/qt/WebCoreArgumentCodersQt.cpp:
3261         * Shared/win/LayerTreeContextWin.cpp:
3262         * UIProcess/API/mac/PageClientImpl.mm:
3263         * UIProcess/API/qt/qwkpage.cpp:
3264         * UIProcess/Launcher/gtk/ThreadLauncherGtk.cpp:
3265         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
3266         * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp:
3267         * UIProcess/WebContext.cpp:
3268         (WebKit::WebContext::WebContext):
3269         * UIProcess/WebInspectorProxy.cpp:
3270         * UIProcess/gtk/TextCheckerGtk.cpp:
3271         * UIProcess/gtk/WebInspectorGtk.cpp:
3272         * UIProcess/gtk/WebPreferencesGtk.cpp:
3273         * UIProcess/qt/TextCheckerQt.cpp:
3274         * UIProcess/qt/WebInspectorProxyQt.cpp:
3275         * UIProcess/win/TextCheckerWin.cpp:
3276         * UIProcess/win/WebContextMenuProxyWin.cpp:
3277         * WebKit2.pro:
3278         * WebKit2.xcodeproj/project.pbxproj:
3279         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
3280         * WebProcess/Downloads/curl/DownloadCurl.cpp:
3281         * WebProcess/Downloads/mac/DownloadMac.mm:
3282         * WebProcess/Downloads/qt/DownloadQt.cpp:
3283         * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp:
3284         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
3285         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
3286         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3287         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
3288         * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp:
3289         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
3290         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
3291         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3292         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
3293         * WebProcess/WebCoreSupport/WebDragClient.cpp:
3294         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
3295         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3296         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
3297         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
3298         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3299         * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp:
3300         * WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp:
3301         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
3302         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
3303         * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp:
3304         * WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
3305         * WebProcess/WebPage/qt/WebInspectorQt.cpp:
3306         * WebProcess/WebProcess.cpp:
3307         (WebKit::WebProcess::WebProcess):
3308         * WebProcess/gtk/WebProcessGtk.cpp:
3309         * config.h:
3310         * win/WebKit2.vcproj:
3311
3312 2011-02-22  Brian Weinstein  <bweinstein@apple.com>
3313
3314         Rubber-stamped by Brady Eidson.
3315
3316         Invalidate the WebResourceCacheManagerProxy in WebContext::processDidClose.
3317
3318         * UIProcess/WebContext.cpp:
3319         (WebKit::WebContext::processDidClose):
3320
3321 2011-02-21  Adam Roben  <aroben@apple.com>
3322
3323         Make DrawingAreaProxyImpl keep track of the most recent state ID it sent to the web process
3324
3325         This will be useful for sending repeated messages for the same state ID to the web process.
3326         We don't do this currently, but will need to if we're asked to paint after we've thrown away
3327         our backing store to save memory.
3328
3329         Fixes <http://webkit.org/b/54916> DrawingAreaProxyImpl should keep track of the state ID it
3330         last sent to the web process
3331
3332         Reviewed by Anders Carlsson.
3333
3334         * UIProcess/DrawingAreaProxyImpl.cpp:
3335         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): Initialize m_requestedStateID, and
3336         reordered member initialization to match the new declaration order.
3337         (WebKit::DrawingAreaProxyImpl::didUpdateState): Added an assertion that the stateID we got
3338         from the web process is no newer than the most recent one we requested.
3339         (WebKit::DrawingAreaProxyImpl::sendUpdateState): Changed to increment and send
3340         m_requestedStateID instead of a new global stateID.
3341
3342         * UIProcess/DrawingAreaProxyImpl.h: Added m_requestedStateID, and moved the state IDs before
3343         other data members. Also beefed the comment explaining m_currentStateID.
3344
3345 2011-02-22  Andras Becsi  <abecsi@webkit.org>
3346
3347         Reviewed by Laszlo Gombos.
3348
3349         [Qt] Redesign the build system
3350         https://bugs.webkit.org/show_bug.cgi?id=51339
3351
3352         Part 2.
3353
3354         Build WebCore as a static library, compile the WebKit API and WebKit2 API
3355         in a final step and link to WebKit2, WebCore and JSC libraries to fix
3356         linking issues resulting from stripped away symbols.
3357
3358         * WebKit2.pri: Add include paths.
3359         * WebKit2.pro: Move include paths to WebKit2.pri and move
3360         the API source to WebKit/qt/QtWebKit.pro
3361
3362 2011-02-22  Benjamin Poulain  <benjamin.poulain@nokia.com>
3363
3364         Reviewed by Kenneth Rohde Christiansen.
3365
3366         [Qt] [WK2] Improve the memory handling of the context menu for WebKit 2
3367         https://bugs.webkit.org/show_bug.cgi?id=54902
3368
3369         Refactor the context menu handling of Qt to make it simpler to manage memory.
3370
3371         WebContextMenuProxyQt uses smart pointer for all the references to menu so
3372         there is no need to delete it explicitely.
3373
3374         Passing the QMenu from QWKPage to the client of the signal now uses a QSharedPointer so
3375         the client can choose to handle the memory, but there is no leak if it does not.
3376
3377         * UIProcess/API/qt/qgraphicswkview.cpp:
3378         (QGraphicsWKView::QGraphicsWKView):
3379         (QGraphicsWKView::showContextMenu):
3380         * UIProcess/API/qt/qgraphicswkview.h:
3381         * UIProcess/API/qt/qwkpage.h:
3382         * UIProcess/qt/WebContextMenuProxyQt.cpp:
3383         (WebKit::WebContextMenuProxyQt::showContextMenu):
3384         (WebKit::WebContextMenuProxyQt::createContextMenu):
3385         * UIProcess/qt/WebContextMenuProxyQt.h:
3386
3387 2011-02-22  Philippe Normand  <pnormand@igalia.com>
3388
3389         Reviewed by Xan Lopez.
3390
3391         [GTK] make distcheck fails
3392         https://bugs.webkit.org/show_bug.cgi?id=54943
3393
3394         Removed reference to NotImplemented.h which was removed.
3395
3396         * GNUmakefile.am:
3397
3398 2011-02-22  Kimmo Kinnunen  <kimmo.t.kinnunen@nokia.com>
3399
3400         Reviewed by Kenneth Rohde Christiansen.
3401
3402         [Qt] QtWebProcess should be installed with 'make install'
3403         https://bugs.webkit.org/show_bug.cgi?id=44100
3404
3405         Follow the standard in other project files and allow install
3406         location to be changed with INSTALL_BINS variable.
3407
3408         * WebProcess.pro: Install QtWebProcess.
3409
3410 2011-02-22  Sheriff Bot  <webkit.review.bot@gmail.com>
3411
3412         Unreviewed, rolling out r79296.
3413         http://trac.webkit.org/changeset/79296
3414         https://bugs.webkit.org/show_bug.cgi?id=54941
3415
3416         Breaks compilation on SnowLeapard Intel Release (Requested by
3417         kbalazs_ on #webkit).
3418
3419         * Platform/gtk/SharedMemoryGtk.cpp:
3420         * Platform/gtk/WorkQueueGtk.cpp:
3421         * Platform/qt/WorkQueueQt.cpp:
3422         * Platform/win/WorkQueueWin.cpp:
3423         * Shared/NotImplemented.h: Copied from Source/WebKit2/WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp.
3424         * Shared/Plugins/NPIdentifierData.cpp:
3425         * Shared/Plugins/NPRemoteObjectMap.cpp:
3426         * Shared/Plugins/NPVariantData.cpp:
3427         * Shared/cairo/ShareableBitmapCairo.cpp:
3428         * Shared/gtk/ShareableBitmapGtk.cpp:
3429         * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
3430         * Shared/qt/WebCoreArgumentCodersQt.cpp:
3431         * Shared/win/LayerTreeContextWin.cpp:
3432         * UIProcess/API/mac/PageClientImpl.mm:
3433         * UIProcess/API/qt/qwkpage.cpp:
3434         * UIProcess/Launcher/gtk/ThreadLauncherGtk.cpp:
3435         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
3436         * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp:
3437         * UIProcess/WebContext.cpp:
3438         (WebKit::WebContext::WebContext):
3439         * UIProcess/WebInspectorProxy.cpp:
3440         * UIProcess/gtk/TextCheckerGtk.cpp:
3441         * UIProcess/gtk/WebInspectorGtk.cpp:
3442         * UIProcess/gtk/WebPreferencesGtk.cpp:
3443         * UIProcess/qt/TextCheckerQt.cpp:
3444         * UIProcess/qt/WebInspectorProxyQt.cpp:
3445         * UIProcess/win/TextCheckerWin.cpp:
3446         * UIProcess/win/WebContextMenuProxyWin.cpp:
3447         * WebKit2.pro:
3448         * WebKit2.xcodeproj/project.pbxproj:
3449         * WebProcess/Downloads/cf/DownloadCFNet.cpp:
3450         * WebProcess/Downloads/curl/DownloadCurl.cpp:
3451         * WebProcess/Downloads/mac/DownloadMac.mm:
3452         * WebProcess/Downloads/qt/DownloadQt.cpp:
3453         * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp:
3454         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
3455         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
3456         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3457         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
3458         * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp:
3459         * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp:
3460         * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp:
3461         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3462         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
3463         * WebProcess/WebCoreSupport/WebDragClient.cpp:
3464         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
3465         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3466         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
3467         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
3468         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3469         * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp:
3470         * WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp:
3471         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
3472         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
3473         * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp:
3474         * WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
3475         * WebProcess/WebPage/qt/WebInspectorQt.cpp:
3476         * WebProcess/WebProcess.cpp:
3477         (WebKit::WebProcess::WebProcess):
3478         * WebProcess/gtk/WebProcessGtk.cpp:
3479         * config.h:
3480         * win/WebKit2.vcproj:
3481
3482 2011-02-16  Balazs Kelemen  <kbalazs@webkit.org>
3483
3484         Reviewed by Anders Carlsson.
3485
3486         notImplemented() should behave identical in WebCore and WebKit2
3487         https://bugs.webkit.org/show_bug.cgi?id=54449
3488
3489         Use NotImplemented.h from WebCore. Initialize logging channels.
3490         Re