2010-07-11 Maciej Stachowiak <mjs@apple.com>
[WebKit.git] / WebKit2 / ChangeLog
1 2010-07-11  Maciej Stachowiak  <mjs@apple.com>
2
3         Reviewed by Dan Bernstein.
4
5         Implement animation-related methods for WebKitTestRunner
6         https://bugs.webkit.org/show_bug.cgi?id=42053
7
8         Implemented some helpers for WebKitTestRunner;
9         
10         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
11         (WKBundleFrameGetNumberOfActiveAnimations):
12         (WKBundleFramePauseAnimationOnElementWithId):
13         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
14         * WebProcess/WebPage/WebFrame.cpp:
15         (WebKit::WebFrame::numberOfActiveAnimations):
16         (WebKit::WebFrame::pauseAnimationOnElementWithId):
17         * WebProcess/WebPage/WebFrame.h:
18         * mac/WebKit2.exp:
19
20 2010-07-10  Anders Carlsson  <andersca@apple.com>
21
22         Reviewed by Sam Weinig.
23
24         Don't initialize plug-ins until allowed by the page
25         https://bugs.webkit.org/show_bug.cgi?id=42033
26
27         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
28         (WebKit::NetscapePlugin::paint):
29         (WebKit::NetscapePlugin::geometryDidChange):
30         Assert that the plug-in is started.
31
32         * WebProcess/Plugins/PluginView.cpp:
33         (WebKit::PluginView::PluginView):
34         Initialize m_isWaitingUntilMediaCanStart.
35         
36         (WebKit::PluginView::~PluginView):
37         If necessary, remove the plug-in view as a MediaCanStartListener.
38
39         (WebKit::PluginView::initializePlugin):
40         If we're not allowed to initialize the plug-in, add the plug-in view as a MediaCanStartListener.
41
42         (WebKit::PluginView::paint):
43         Check that the plug-in is initialized.
44
45         (WebKit::PluginView::viewGeometryDidChange):
46         Ditto.
47
48         (WebKit::PluginView::mediaCanStart):
49         Initialize the plug-in.
50
51         * WebProcess/Plugins/PluginView.h:
52
53 2010-07-10  Anders Carlsson  <andersca@apple.com>
54
55         Reviewed by Dan Bernstein.
56
57         Have the plug-in view initialize the plug-in
58         https://bugs.webkit.org/show_bug.cgi?id=42030
59
60         * WebProcess/Plugins/DummyPlugin.cpp:
61         (WebKit::DummyPlugin::initialize):
62         * WebProcess/Plugins/DummyPlugin.h:
63         Plugin::initialize now takes a struct.
64         
65         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
66         (WebKit::NetscapePlugin::initialize):        
67         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
68         Plugin::initialize now takes a struct.
69         
70         * WebProcess/Plugins/Plugin.h:
71         Add Parameters struct.
72
73         * WebProcess/Plugins/PluginView.cpp:
74         (WebKit::PluginView::PluginView):
75         Add Parameters parameter.
76
77         (WebKit::PluginView::~PluginView):
78         Add m_plugin null check.
79
80         (WebKit::PluginView::initializePlugin):
81         Try to initialize the plug-in and zero out the plug-in if initialization fails.
82
83         (WebKit::PluginView::paint):
84         Add m_plugin null check.
85         
86         (WebKit::PluginView::setParent):
87         Initialize the plug-in.
88     
89         * WebProcess/Plugins/PluginView.h:
90         (WebKit::PluginView::create):
91         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
92         (WebKit::WebFrameLoaderClient::createPlugin):
93         Don't initialize the plug-in here.
94
95 2010-07-10  Anders Carlsson  <andersca@apple.com>
96
97         Reviewed by Oliver Hunt.
98
99         Call Page::canStartMedia when the WKView is added to/removed from a window
100         https://bugs.webkit.org/show_bug.cgi?id=42029
101
102         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
103         (WebPageMessage::):
104         Add SetIsInWindow.
105
106         * UIProcess/API/mac/WKView.mm:
107         (-[WKView initWithFrame:pageNamespaceRef:]):
108         Call setIsInWindow.
109
110         (-[WKView _updateVisibility]):
111         Call setIsInWindow.
112
113         * UIProcess/WebPageProxy.cpp:
114         (WebKit::WebPageProxy::WebPageProxy):
115         Initialize m_isInWindow.
116
117         (WebKit::WebPageProxy::setIsInWindow):
118         Send WebPageMessage::SetIsInWindow.
119
120         * UIProcess/WebPageProxy.h:
121         * WebProcess/WebPage/WebPage.cpp:
122         (WebKit::WebPage::setIsInWindow):
123         Call Page::canStartMedia.
124
125         (WebKit::WebPage::didReceiveMessage):
126         Handle the SetIsInWindow message.
127
128         * WebProcess/WebPage/WebPage.h:
129
130 2010-07-10  Anders Carlsson  <andersca@apple.com>
131
132         Reviewed by Dan Bernstein.
133
134         Reuse initialized NetscapePluginModules, pass parameters to NPP_New
135         https://bugs.webkit.org/show_bug.cgi?id=42028
136
137         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
138         (WebKit::NetscapePlugin::NetscapePlugin):
139         Let the plug-in module know that a plug-in has been created.
140
141         (WebKit::NetscapePlugin::~NetscapePlugin):
142         Let the plug-in module know that a plug-in has been destroyed.
143
144         (WebKit::NetscapePlugin::initialize):
145         Pass the MIME type and parameters to the plug-in.
146
147         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
148         (WebKit::initializedNetscapePluginModules):
149         Add list of initialized plug-in modules.
150
151         (WebKit::NetscapePluginModule::NetscapePluginModule):
152         Initialize m_pluginCount to 0.
153
154         (WebKit::NetscapePluginModule::~NetscapePluginModule):
155         Assert that we're not in the list of initialized plug-ins.
156
157         (WebKit::NetscapePluginModule::pluginCreated):
158         Increment the plug-in count.
159
160         (WebKit::NetscapePluginModule::pluginDestroyed):
161         Decrement the plug-in count and call shutdown if it's 0.
162
163         (WebKit::NetscapePluginModule::shutdown):
164         Call NP_Shutdown and remove the plug-in from the list of initialized plug-ins.
165
166         (WebKit::NetscapePluginModule::getOrCreate):
167         Look for an already initialized plug-in module before creating one.
168
169         (WebKit::NetscapePluginModule::load):
170         Set m_isInitialized to true.
171
172         * WebProcess/Plugins/Netscape/mac/NetscapePluginModuleMac.cpp:
173         (WebKit::NetscapePluginModule::unload):
174         Leak the CFBundleRef to avoid possible crashes.
175
176         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
177         (WebKit::WebFrameLoaderClient::createPlugin):
178         Call getOrCreate instead of create.
179
180 2010-07-09  Leon Clarke  <leonclarke@google.com>
181
182         Reviewed by Adam Barth.
183
184         add support for link prefetching
185         https://bugs.webkit.org/show_bug.cgi?id=3652
186
187         * Configurations/FeatureDefines.xcconfig:
188
189 2010-07-09  Anders Carlsson  <andersca@apple.com>
190
191         Reviewed by Sam Weinig and Dan Bernstein.
192
193         Handle setting of drawing and event models
194         https://bugs.webkit.org/show_bug.cgi?id=41994
195
196         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
197         Handle NPPVpluginDrawingModel and NPPVpluginEventModel.
198
199         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
200         (WebKit::NetscapePlugin::NetscapePlugin):
201         Initialize m_inNPPNew.
202
203         (WebKit::NetscapePlugin::~NetscapePlugin):
204         Assert that we aren't still running.
205
206         (WebKit::NetscapePlugin::fromNPP):
207         New function that returns a NetscapePlugin object given a NPP pointer.
208
209         (WebKit::NetscapePlugin::initialize):
210         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.cpp:
211         (WebKit::NetscapePlugin::setDrawingModel):
212         Set the drawing model.
213
214         (WebKit::NetscapePlugin::setEventModel):
215         Set the event model.
216
217         (WebKit::initializeEvent):
218         (WebKit::NetscapePlugin::platformPaint):
219         Only send the Cocoa event when using the Cocoa event model.
220
221 2010-07-09  Sam Weinig  <sam@webkit.org>
222
223         Reviewed by Anders Carlsson.
224
225         Patch for https://bugs.webkit.org/show_bug.cgi?id=41971
226         Add really basic BackForwardList support.
227
228         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
229         (WebPageMessage::):
230         Add new message kind.
231
232         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
233         (WebPageProxyMessage::):
234         Add new message kinds. Remove DidChangeCanGoBack and DidChangeCanGoForward.
235
236         * UIProcess/API/C/WKPage.cpp:
237         (WKPageGoToBackForwardListItem):
238         * UIProcess/API/C/WKPage.h:
239         Add function to initiate a navigation to a BackForward item.  The
240         BackForward list will be updated to use this as the current item
241         asynchronously. 
242
243         * UIProcess/WebBackForwardList.cpp:
244         (WebKit::WebBackForwardList::WebBackForwardList):
245         (WebKit::WebBackForwardList::addItem): Added.
246         (WebKit::WebBackForwardList::goToItem): Added.
247         (WebKit::WebBackForwardList::itemAtIndex): Added.
248         (WebKit::WebBackForwardList::backListCount): Changed to return int matching WebCore.
249         (WebKit::WebBackForwardList::forwardListCount): Ditto.
250         (WebKit::WebBackForwardList::backListWithLimit): Add cast to int.
251         (WebKit::WebBackForwardList::forwardListWithLimit): Ditto.
252         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit): Ditto.
253         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit): Ditto.
254         * UIProcess/WebBackForwardList.h:
255
256         * UIProcess/WebBackForwardListItem.cpp:
257         (WebKit::WebBackForwardListItem::WebBackForwardListItem):
258         * UIProcess/WebBackForwardListItem.h:
259         (WebKit::WebBackForwardListItem::create):
260         (WebKit::WebBackForwardListItem::itemID):
261         Added itemID.
262
263         * UIProcess/WebPageProxy.cpp:
264         (WebKit::WebPageProxy::WebPageProxy):
265         (WebKit::WebPageProxy::close):
266         (WebKit::WebPageProxy::canGoForward):
267         (WebKit::WebPageProxy::canGoBack):
268         (WebKit::WebPageProxy::goToBackForwardItem):
269         (WebKit::WebPageProxy::didReceiveMessage):
270         (WebKit::WebPageProxy::didReceiveSyncMessage):
271         (WebKit::WebPageProxy::addItemToBackForwardList):
272         (WebKit::WebPageProxy::goToItemInBackForwardList):
273         (WebKit::WebPageProxy::processDidExit):
274         * UIProcess/WebPageProxy.h:
275         - Removed m_canGoBack and m_canGoForward booleans and instead use the BackForwardList.
276         - Forward goToBackForwardItem to the WebProcess.
277         - Respond to messages from the WebBackForwardListProxy in the WebProcess,
278           forwarding to the WebBackForwardList.
279
280         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
281         (WebKit::WebBackForwardControllerClient::createBackForwardList):
282         Start using a WebBackForwardListProxy instead of a BackForwardListImpl.
283
284         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
285         (WebKit::WebFrameLoaderClient::dispatchDidAddBackForwardItem):
286         (WebKit::WebFrameLoaderClient::dispatchDidRemoveBackForwardItem):
287         (WebKit::WebFrameLoaderClient::dispatchDidChangeBackForwardIndex):
288         Remove calls backForwardListDidChange() now that we communicate much more
289         information than just this state.
290
291         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
292         (WebKit::idToHistoryItemMap):
293         (WebKit::historyItemToIDMap):
294         (WebKit::generateHistoryItemID):
295         (WebKit::getIDForHistoryItem):
296         (WebKit::WebBackForwardListProxy::itemForID):
297         Add leaking cached maps of HistoryItems to IDs, the life time of these
298         objects will be improved in a subsequent patch.
299
300         (WebKit::WebBackForwardListProxy::WebBackForwardListProxy):
301         (WebKit::WebBackForwardListProxy::addItem):
302         (WebKit::WebBackForwardListProxy::goBack):
303         (WebKit::WebBackForwardListProxy::goForward):
304         (WebKit::WebBackForwardListProxy::goToItem):
305         (WebKit::WebBackForwardListProxy::backItem):
306         (WebKit::WebBackForwardListProxy::currentItem):
307         (WebKit::WebBackForwardListProxy::forwardItem):
308         (WebKit::WebBackForwardListProxy::itemAtIndex):
309         (WebKit::WebBackForwardListProxy::backListWithLimit):
310         (WebKit::WebBackForwardListProxy::forwardListWithLimit):
311         (WebKit::WebBackForwardListProxy::capacity):
312         (WebKit::WebBackForwardListProxy::setCapacity):
313         (WebKit::WebBackForwardListProxy::enabled):
314         (WebKit::WebBackForwardListProxy::setEnabled):
315         (WebKit::WebBackForwardListProxy::backListCount):
316         (WebKit::WebBackForwardListProxy::forwardListCount):
317         (WebKit::WebBackForwardListProxy::containsItem):
318         (WebKit::WebBackForwardListProxy::close):
319         (WebKit::WebBackForwardListProxy::closed):
320         (WebKit::WebBackForwardListProxy::removeItem):
321         (WebKit::WebBackForwardListProxy::entries):
322         (WebKit::WebBackForwardListProxy::pushStateItem):
323         * WebProcess/WebPage/WebBackForwardListProxy.h:
324         Forward functions to the UIProcess.
325
326         * WebProcess/WebPage/WebPage.cpp:
327         (WebKit::WebPage::goToBackForwardItem):
328         (WebKit::WebPage::didReceiveMessage):
329         * WebProcess/WebPage/WebPage.h:
330         Respond to GoToBackForwardItem message.
331
332         * mac/WebKit2.exp: Add new API function.
333
334 2010-07-09  Anders Carlsson  <andersca@apple.com>
335
336         Reviewed by Sam Weinig.
337
338         Verify drawing coordinates, add crude painting support
339         https://bugs.webkit.org/show_bug.cgi?id=41984
340     
341         * WebKit2.xcodeproj/project.pbxproj:
342         Add NetscapePluginMac.cpp.
343
344         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
345         (WebKit::NetscapePlugin::NetscapePlugin):
346         Initialize drawing and event models.
347
348         (WebKit::NetscapePlugin::initialize):
349         Call platformPostInitialize.
350
351         (WebKit::NetscapePlugin::destroy):
352         Call NPP_Destroy.
353
354         (WebKit::NetscapePlugin::paint):
355         Call platformPaint.
356
357         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
358         Add member functions.
359
360         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.cpp: Added.
361         (WebKit::NetscapePlugin::platformPostInitialize):
362         Set default event and drawing models and verify that they are compatible.
363         
364         (WebKit::NetscapePlugin::platformPaint):
365         Send a paint event (assuming the Cocoa event model currently).
366
367         * WebProcess/Plugins/PluginView.cpp:
368         (WebKit::PluginView::paint):
369         Change the paint rect to be in window coordinates.
370
371         (WebKit::PluginView::viewGeometryDidChange):
372         (WebKit::PluginView::clipRectInWindowCoordinates):
373         * WebProcess/Plugins/PluginView.h:
374
375 2010-07-09  Anders Carlsson  <andersca@apple.com>
376
377         Reviewed by Sam Weinig.
378
379         Pass a clip rect to the plugin and call NPP_SetWindow
380         https://bugs.webkit.org/show_bug.cgi?id=41969
381
382         * WebProcess/Plugins/DummyPlugin.cpp:
383         (WebKit::DummyPlugin::geometryDidChange):
384         * WebProcess/Plugins/DummyPlugin.h:
385         Add clip rect parameter.
386
387         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
388         (WebKit::NetscapePlugin::NetscapePlugin):
389         Initialize m_npWindow.
390
391         (WebKit::NetscapePlugin::callSetWindow):
392         Call NPP_SetWindow.
393
394         (WebKit::NetscapePlugin::initialize):
395         Set the window type to NPWindowTypeDrawable for now.
396
397         (WebKit::NetscapePlugin::geometryDidChange):
398         Update the frame and clip rects and call NPP_SetWindow.
399
400         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
401         Add an NPWindow member variable.
402
403         * WebProcess/Plugins/Plugin.h:
404         Add a clipRect parameter to geometryDidChange.
405
406         * WebProcess/Plugins/PluginView.cpp:
407         (WebKit::PluginView::PluginView):
408         Add the plug-in element to the constructor.
409         
410         (WebKit::PluginView::viewGeometryDidChange):
411         Compute the clip rect and pass it to the plug-in.
412
413         * WebProcess/Plugins/PluginView.h:
414         (WebKit::PluginView::create):
415         Pass the plug-in element to the constructor.
416
417         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
418         (WebKit::WebFrameLoaderClient::createPlugin):
419         Pass the plug-in element to PluginView::create.
420
421 2010-07-09  Anders Carlsson  <andersca@apple.com>
422
423         Reviewed by Simon Fraser.
424
425         Instantiate Netscape plug-ins, pass geometry information to Plugin
426         https://bugs.webkit.org/show_bug.cgi?id=41960
427
428         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
429         Handle NPNVsupportsCoreGraphicsBool and NPNVsupportsCocoaBool.
430
431         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
432         (WebKit::NetscapePlugin::NetscapePlugin):
433         Set npp.ndata.
434
435         (WebKit::NetscapePlugin::initialize):
436         Try to instantiate the plug-in by calling NPP_New.
437
438         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
439         Store the NetscapePluginModule and the NPP struct.
440
441         * WebProcess/Plugins/Netscape/NetscapePluginModule.h:
442         Add a getter for the NPPluginFuncs vtable.
443
444         * WebProcess/Plugins/PluginView.cpp:
445         (WebKit::PluginView::frameRectsChanged):
446         Make sure to call viewGeometryDidChange.
447
448         (WebKit::PluginView::setParent):
449         Ditto.
450
451         (WebKit::PluginView::viewGeometryDidChange):
452         Convert the frame rect to window coordinates and pass it to the plug-in.
453
454         * WebProcess/Plugins/PluginView.h:
455         Add function declarations.
456
457 2010-07-08  Diego Gonzalez  <diegohcg@webkit.org>
458
459         Reviewed by Kenneth Rohde Christiansen.
460
461         [Qt] [WebKit2] Make QWKPage call _q_webActionTriggered as a private slot
462         https://bugs.webkit.org/show_bug.cgi?id=41880
463
464         * UIProcess/API/qt/qwkpage.cpp:
465         * UIProcess/API/qt/qwkpage.h:
466
467 2010-07-09  Antti Koivisto  <koivisto@iki.fi>
468
469         Not reviewed.
470
471         Build fix.
472
473         * UIProcess/API/qt/qwkpage.h:
474
475 2010-07-08  Brian Weinstein  <bweinstein@apple.com>
476
477         WebKit2 build fix for Windows.
478
479         * WebProcess/Plugins/PluginView.h: Change the forward declaration of Plugin
480             to an include.
481         * win/WebKit2.vcproj: Update the include paths for Release to match Debug, and
482             add some files to the vcproj that were added on Mac.
483
484 2010-07-08  Sam Weinig  <sam@webkit.org>
485
486         Attempt to fix the windows build.
487
488         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
489         (WebKit::WebFrameLoaderClient::createPlugin):
490
491 2010-07-08  Anders Carlsson  <andersca@apple.com>
492
493         Reviewed by Sam Weinig.
494
495         Add NetscapePlugin class
496         https://bugs.webkit.org/show_bug.cgi?id=41919
497
498         * WebKit2.xcodeproj/project.pbxproj:
499         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: Added.
500         (WebKit::NetscapePlugin::NetscapePlugin):
501         (WebKit::NetscapePlugin::~NetscapePlugin):
502         (WebKit::NetscapePlugin::initialize):
503         (WebKit::NetscapePlugin::destroy):
504         (WebKit::NetscapePlugin::paint):
505         (WebKit::NetscapePlugin::geometryDidChange):
506         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Added.
507         (WebKit::NetscapePlugin::create):
508         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
509         (WebKit::WebFrameLoaderClient::createPlugin):
510
511 2010-07-08  Anders Carlsson  <andersca@apple.com>
512
513         Reviewed by Sam Weinig.
514
515         Enable notImplemented messages by default and have the various clients explicitly disable them.
516
517         * Shared/NotImplemented.h:
518         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
519         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
520         * WebProcess/WebCoreSupport/WebDragClient.cpp:
521         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
522         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
523         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
524
525 2010-07-08  Anders Carlsson  <andersca@apple.com>
526
527         Reviewed by Sam Weinig.
528
529         Add stubbed out NPN functions
530         https://bugs.webkit.org/show_bug.cgi?id=41917
531
532         * WebKit2.xcodeproj/project.pbxproj:
533         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: Added.
534         (WebKit::initializeBrowserFuncs):
535         (WebKit::netscapeBrowserFuncs):
536         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.h: Added.
537         * WebProcess/Plugins/Netscape/mac/NetscapePluginModuleMac.cpp:
538         (WebKit::NetscapePluginModule::tryLoad):
539
540 2010-07-08  Anders Carlsson  <andersca@apple.com>
541
542         Fix Windows build.
543
544         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
545
546 2010-07-08  Luiz Agostini  <luiz.agostini@openbossa.org>
547
548         Reviewed by Kenneth Rohde Christiansen.
549
550         [Qt] Spelling and style correction
551         https://bugs.webkit.org/show_bug.cgi?id=41891
552
553         Correcting a spelling and a style mistakes.
554
555         * UIProcess/Launcher/ProcessLauncher.h:
556         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
557
558 2010-07-08  Anders Carlsson  <andersca@apple.com>
559
560         Reviewed by Sam Weinig.
561
562         Implement more of NetscapePluginModule
563         https://bugs.webkit.org/show_bug.cgi?id=41910
564
565         * WebKit2.xcodeproj/project.pbxproj:
566         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp:
567         (WebKit::NetscapePluginModule::create):
568         (WebKit::NetscapePluginModule::load):
569         * WebProcess/Plugins/Netscape/NetscapePluginModule.h:
570         * WebProcess/Plugins/Netscape/mac/NetscapePluginModuleMac.cpp: Added.
571         (WebKit::NetscapePluginModule::unload):
572         (WebKit::pointerToFunction):
573         (WebKit::NetscapePluginModule::tryLoad):
574         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
575         (WebKit::WebFrameLoaderClient::createPlugin):
576
577 2010-07-08  Anders Carlsson  <andersca@apple.com>
578
579         Reviewed by Sam Weinig.
580
581         Add stubbed out NetscapePluginModule class
582         https://bugs.webkit.org/show_bug.cgi?id=41901
583
584         * WebKit2.xcodeproj/project.pbxproj:
585         * WebProcess/Plugins/Netscape/NetscapePluginModule.cpp: Added.
586         (WebKit::NetscapePluginModule::NetscapePluginModule):
587         * WebProcess/Plugins/Netscape/NetscapePluginModule.h: Added.
588         (WebKit::NetscapePluginModule::create):
589         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
590         (WebKit::WebFrameLoaderClient::createPlugin):
591
592 2010-07-08  Luiz Agostini  <luiz.agostini@openbossa.org>
593
594         Reviewed by Kenneth Rohde Christiansen.
595
596         [Qt] Move socket objects to connection's thread
597         https://bugs.webkit.org/show_bug.cgi?id=41897
598
599         To receive network related notifications in the WorkQueue thread, the
600         QLocalSocket instances must be moved to that thread.
601
602         * Platform/CoreIPC/qt/ConnectionQt.cpp:
603         (CoreIPC::Connection::open):
604         * Platform/WorkQueue.h:
605         * Platform/qt/WorkQueueQt.cpp:
606         (WorkQueue::moveSocketToWorkThread):
607
608 2010-07-08  Alice Liu  <alice.liu@apple.com>
609
610         Reviewed by Sam Weinig.
611
612         https://bugs.webkit.org/show_bug.cgi?id=41653
613         Add new WebKitTestRunner project for Windows
614
615         * win/WebKit2Generated.make: Add files needed for WebKitTestRunner
616
617 2010-07-08  Anders Carlsson  <andersca@apple.com>
618
619         Reviewed by Sam Weinig.
620
621         Add a GetPluginHostConnection WebProcessProxy message
622         https://bugs.webkit.org/show_bug.cgi?id=41893
623         
624         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
625         (WebProcessProxyMessage::):
626         * UIProcess/WebProcessProxy.cpp:
627         (WebKit::WebProcessProxy::getPluginHostConnection):
628         (WebKit::WebProcessProxy::didReceiveMessage):
629         (WebKit::WebProcessProxy::didReceiveSyncMessage):
630         * UIProcess/WebProcessProxy.h:
631         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
632         (WebKit::WebFrameLoaderClient::createPlugin):
633
634 2010-07-08  Anders Carlsson  <andersca@apple.com>
635
636         Reviewed by Sam Weinig.
637
638         Add more parameters to Plugin::initialize
639         https://bugs.webkit.org/show_bug.cgi?id=41890
640
641         * WebProcess/Plugins/DummyPlugin.cpp:
642         (WebKit::DummyPlugin::initialize):
643         * WebProcess/Plugins/DummyPlugin.h:
644         * WebProcess/Plugins/Plugin.h:
645         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
646         (WebKit::WebFrameLoaderClient::createPlugin):
647
648 2010-07-08  Anders Carlsson  <andersca@apple.com>
649
650         Fix build.
651
652         * WebProcess/Plugins/DummyPlugin.h:
653
654 2010-07-08  Anders Carlsson  <andersca@apple.com>
655
656         Reviewed by Sam Weinig.
657
658         Add a Plugin abstract base class and a DummyPlugin that implements it
659         https://bugs.webkit.org/show_bug.cgi?id=41885
660
661         * WebKit2.xcodeproj/project.pbxproj:
662         Add files.
663
664         * WebProcess/Plugins/DummyPlugin.cpp: Added.
665         (WebKit::DummyPlugin::paint):
666         Paint a red rectangle.
667         
668         * WebProcess/Plugins/Plugin.cpp: Added.
669         * WebProcess/Plugins/Plugin.h: Added.
670         Add Plugin, an abstract baseclass.
671
672         * WebProcess/Plugins/PluginView.cpp:
673         (WebKit::PluginView::PluginView):
674         (WebKit::PluginView::~PluginView):
675         (WebKit::PluginView::paint):
676         (WebKit::PluginView::viewGeometryDidChange):
677         * WebProcess/Plugins/PluginView.h:
678         (WebKit::PluginView::create):
679         Add a Plugin member function and forward PluginView calls to it.
680
681         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
682         (WebKit::WebFrameLoaderClient::createPlugin):
683         Make a DummyPlugin and pass it to the PluginView.
684
685         * win/WebKit2.vcproj:
686         Add files.
687         
688 2010-07-08  Anders Carlsson  <andersca@apple.com>
689
690         Reviewed by Sam Weinig.
691
692         Add stubbed out PluginView class
693         https://bugs.webkit.org/show_bug.cgi?id=41879
694
695         * WebKit2.xcodeproj/project.pbxproj:
696         Add PluginView.cpp and PluginView.h
697
698         * WebProcess/Plugins/PluginView.cpp: Added.
699         (WebKit::PluginView::PluginView):
700         (WebKit::PluginView::~PluginView):
701         (WebKit::PluginView::setFrameRect):
702         (WebKit::PluginView::paint):
703         (WebKit::PluginView::viewGeometryDidChange):
704         (WebKit::PluginView::invalidateRect):
705         Stub out these functions.
706
707         * WebProcess/Plugins/PluginView.h: Added.
708         (WebKit::PluginView::create):
709         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
710         (WebKit::WebFrameLoaderClient::createPlugin):
711         Create a plug-in view.
712         
713         * win/WebKit2.vcproj:
714         Add PluginView.cpp and PluginView.h.
715
716 2010-07-08  Steve Falkenburg  <sfalken@apple.com>
717
718         Reviewed by Adam Roben.
719
720         WebKit2 on Windows needs a version resource
721         https://bugs.webkit.org/show_bug.cgi?id=41870
722         <rdar://problem/8170501>
723
724         * win/WebKit2.rc: Added.
725         * win/WebKit2.vcproj:
726         * win/WebKit2WebProcess.rc: Added.
727         * win/WebKit2WebProcess.vcproj:
728
729 2010-07-08  Sam Weinig  <sam@webkit.org>
730
731         Reviewed by Anders Carlsson.
732
733         Patch for https://bugs.webkit.org/show_bug.cgi?id=41874
734         Add stubbed out WebBackForwardListProxy
735
736         - No behavior change.
737         - Rename the old WebBackForwardListProxy to WebBackForwardList since it
738           will be the implementation, not the proxy.
739
740         * UIProcess/API/C/WKAPICast.h:
741         * UIProcess/API/C/WKBackForwardList.cpp:
742         * UIProcess/API/C/WKPage.cpp:
743         * UIProcess/WebBackForwardList.cpp: Copied from UIProcess/WebBackForwardListProxy.cpp.
744         * UIProcess/WebBackForwardList.h: Copied from UIProcess/WebBackForwardListProxy.h.
745         (WebKit::WebBackForwardList::create):
746         * UIProcess/WebBackForwardListProxy.cpp: Removed.
747         * UIProcess/WebBackForwardListProxy.h: Removed.
748         * UIProcess/WebPageProxy.cpp:
749         (WebKit::WebPageProxy::WebPageProxy):
750         * UIProcess/WebPageProxy.h:
751         (WebKit::WebPageProxy::backForwardList):
752         * WebKit2.xcodeproj/project.pbxproj:
753         * WebProcess/WebPage/WebBackForwardListProxy.cpp: Added.
754         * WebProcess/WebPage/WebBackForwardListProxy.h: Added.
755         (WebKit::WebBackForwardListProxy::create):
756         * win/WebKit2.vcproj:
757
758 2010-07-08  Sam Weinig  <sam@webkit.org>
759
760         Reviewed by Anders Carlsson.
761
762         Pass Page to BackForwardControllerClient::createBackForwardList since it
763         may be called before implementations of BackForwardControllerClient have
764         access to a Page.
765
766         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
767         (WebKit::WebBackForwardControllerClient::createBackForwardList):
768         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.h:
769
770 2010-07-08  Anders Carlsson  <andersca@apple.com>
771
772         Reviewed by Sam Weinig.
773
774         Fix fallout from Darin's adoptRef assertion changes.
775
776         * UIProcess/WebContext.cpp:
777         (WebKit::WebContext::sharedProcessContext):
778         (WebKit::WebContext::sharedThreadContext):
779         * WebProcess/WebPage/WebFrame.cpp:
780         (WebKit::WebFrame::createMainFrame):
781         (WebKit::WebFrame::createSubframe):
782         (WebKit::WebFrame::create):
783         (WebKit::WebFrame::WebFrame):
784         * WebProcess/WebPage/WebFrame.h:
785
786 2010-07-08  Steve Falkenburg  <sfalken@apple.com>
787
788         Reviewed by Mark Rowe.
789
790         WebKit2 should enable DEP (Data Execution Prevention) on Windows via /NXCOMPAT
791         https://bugs.webkit.org/show_bug.cgi?id=41837
792         <rdar://problem/8170505>
793
794         * win/WebKit2WebProcess.vcproj:
795
796 2010-07-08  Sam Weinig  <sam@webkit.org>
797
798         Reviewed by Anders Carlsson.
799
800         Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
801         Convert BackForwardList to an abstract base class and add BackForwardListImpl
802         as the concrete implementation of it.
803
804         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
805         (WebKit::WebBackForwardControllerClient::createBackForwardList):
806
807 2010-07-08  Luiz Agostini  <luiz@webkit.org>, Kenneth Rohde Christiansen <kenneth@webkit.org>
808
809         Reviewed by Antti Koivisto.
810
811         [Qt] Improve QtWebkit2 secondary process launching procedure
812         https://bugs.webkit.org/show_bug.cgi?id=41853
813
814         Changing secondary process launching procedure to make sure that the method
815         ProcessLauncher::didFinishLaunchingProcess will only be called after secondary
816         process has been launched and the connection has been stablished between the
817         UIProcess and WebProcess.
818
819         This solves the timing issues ocasionaly observed when launching MiniBrowser.
820
821         QLocalServer object and related code has been removed from the class Connection.
822         Server instances of the Connection class now get the QLocalSocket via ProcessLauncher.
823
824         * Platform/CoreIPC/Connection.h:
825         * Platform/CoreIPC/qt/ConnectionQt.cpp:
826         (CoreIPC::Connection::platformInitialize):
827         (CoreIPC::Connection::platformInvalidate):
828         (CoreIPC::Connection::open):
829
830         Using QProcess* as PlatformProcessIdentifier.
831
832         * Platform/PlatformProcessIdentifier.h:
833
834         A new singleton class named ProcessLauncherHelper was created to handle the QLocalServer
835         object used to receive connections. This class launches the process and waits for it to connect
836         before calling ProcessLauncher::didFinishLaunchingProcess.
837
838         * UIProcess/Launcher/ProcessLauncher.h:
839         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
840         (WebKit::ProcessLauncherHelper::launch):
841         (WebKit::ProcessLauncherHelper::takePendingConnection):
842         (WebKit::ProcessLauncherHelper::ProcessLauncherHelper):
843         (WebKit::ProcessLauncherHelper::instance):
844         (WebKit::ProcessLauncherHelper::newConnection):
845         (WebKit::ProcessLauncher::launchProcess):
846         (WebKit::ProcessLauncher::terminateProcess):
847         (_qt_takePendingConnection):
848
849 2010-07-08  Antti Koivisto  <koivisto@iki.fi>
850
851         Reviewed by Kenneth Rohde Christiansen.
852
853         [Qt] Initial WebKit2 implementation
854         https://bugs.webkit.org/show_bug.cgi?id=40233
855     
856         Random build fixes.
857
858         * Shared/qt/WebEventFactoryQt.cpp:
859         * UIProcess/API/qt/ClientImpl.cpp:
860         * UIProcess/API/qt/qwkpage.cpp:
861         * UIProcess/API/qt/qwkpage.h:
862         * UIProcess/DrawingAreaProxy.h:
863         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
864         * WebProcess/WebProcess.cpp:
865
866 2010-07-07  Zoltan Horvath  <zoltan@webkit.org>
867
868         Reviewed by Kenneth Rohde Christiansen.
869
870         [Qt] Terminate QtWebProcess on exit
871         https://bugs.webkit.org/show_bug.cgi?id=41766
872
873         Call WKPageTerminate to terminate QtWebProcess on exit.
874
875         * UIProcess/API/qt/qwkpage.cpp:
876         (QWKPage::~QWKPage):
877
878 2010-07-07  Steve Falkenburg  <sfalken@apple.com>
879
880         Windows release build fix.
881         Don't generate public symbols since this is exceeding address space on our builders.
882
883         * win/WebKit2.vcproj:
884
885 2010-07-07  Sam Weinig  <sam@webkit.org>
886
887         Reviewed by Anders Carlsson.
888
889         Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
890         Add basic piping for BackForwardControllerClient.
891
892         - Add very basic WebBackForwardControllerClient.
893
894         * WebKit2.xcodeproj/project.pbxproj:
895         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp: Added.
896         (WebKit::WebBackForwardControllerClient::backForwardControllerDestroyed):
897         (WebKit::WebBackForwardControllerClient::createBackForwardList):
898         * WebProcess/WebCoreSupport/WebBackForwardControllerClient.h: Added.
899         (WebKit::WebBackForwardControllerClient::WebBackForwardControllerClient):
900         * WebProcess/WebPage/WebPage.cpp:
901         (WebKit::WebPage::WebPage):
902         * win/WebKit2.vcproj:
903
904 2010-07-07  Antti Koivisto  <koivisto@iki.fi>
905
906         Reviewed by Kenneth Rohde Christiansen.
907
908         [Qt] Initial WebKit2 implementation
909         https://bugs.webkit.org/show_bug.cgi?id=40233
910         
911         Add Qt section to the prefix header.
912
913         * WebKit2Prefix.h:
914
915 2010-07-07  Antti Koivisto  <koivisto@iki.fi>
916
917         Not reviewed.
918
919         Fix build, remove some left over debugging code.
920
921         * Platform/CoreIPC/qt/ConnectionQt.cpp:
922         (CoreIPC::Connection::readyReadHandler):
923         (CoreIPC::Connection::sendOutgoingMessage):
924
925 2010-07-07  Antti Koivisto  <koivisto@iki.fi>
926
927         Reviewed by Kenneth Rohde Christiansen.
928
929         [Qt] Initial WebKit2 implementation
930         https://bugs.webkit.org/show_bug.cgi?id=40233
931         
932         Implement WebPage for Qt.
933
934         * WebProcess/WebPage/qt/WebPageQt.cpp: Added.
935         (WebKit::WebPage::platformInitialize):
936         (WebKit::):
937         (WebKit::WebPage::interpretKeyEvent):
938
939
940 2010-07-06  Anders Carlsson  <andersca@apple.com>
941
942         Fix Windows WebKit2 build.
943
944         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
945         (WebKit::PluginInfoStore::mimeTypeFromExtension):
946
947 2010-07-06  Anders Carlsson  <andersca@apple.com>
948
949         Reviewed by Sam Weinig.
950
951         Add PluginInfoStore::findPlugin
952         https://bugs.webkit.org/show_bug.cgi?id=41719
953
954         * UIProcess/Plugins/PluginInfoStore.cpp:
955         (WebKit::PluginInfoStore::getPlugins):
956         (WebKit::PluginInfoStore::findPluginForMIMEType):
957         (WebKit::PluginInfoStore::findPluginForExtension):
958         (WebKit::pathExtension):
959         (WebKit::PluginInfoStore::findPlugin):
960         * UIProcess/Plugins/PluginInfoStore.h:
961         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
962         (WebKit::PluginInfoStore::mimeTypeFromExtension):
963
964 2010-07-06  Sam Weinig  <sam@webkit.org>
965
966         Reviewed by Anders Carlsson.
967
968         Add injected bundle API for exposing console messages.
969
970         - Split WKBundlePageClient into multiple clients matching WKPage.
971           (For now we only have a loader client and a UI client)
972
973         * WebKit2.xcodeproj/project.pbxproj:
974         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
975         (WKBundlePageSetLoaderClient):
976         (WKBundlePageSetUIClient):
977         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
978         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Removed.
979         * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Removed.
980         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp: Copied from WebProcess/InjectedBundle/InjectedBundlePageClient.cpp.
981         (WebKit::InjectedBundlePageLoaderClient::InjectedBundlePageLoaderClient):
982         (WebKit::InjectedBundlePageLoaderClient::initialize):
983         (WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
984         (WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
985         (WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
986         (WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
987         (WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
988         (WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
989         (WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
990         (WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
991         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h: Copied from WebProcess/InjectedBundle/InjectedBundlePageClient.h.
992         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Added.
993         (WebKit::InjectedBundlePageUIClient::InjectedBundlePageUIClient):
994         (WebKit::InjectedBundlePageUIClient::initialize):
995         (WebKit::InjectedBundlePageUIClient::addMessageToConsole):
996         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added.
997         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
998         (WebKit::WebChromeClient::addMessageToConsole):
999         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1000         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1001         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1002         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
1003         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
1004         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
1005         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
1006         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
1007         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
1008         * WebProcess/WebPage/WebPage.cpp:
1009         (WebKit::WebPage::initializeInjectedBundleLoaderClient):
1010         (WebKit::WebPage::initializeInjectedBundleUIClient):
1011         * WebProcess/WebPage/WebPage.h:
1012         (WebKit::WebPage::injectedBundleLoaderClient):
1013         (WebKit::WebPage::injectedBundleUIClient):
1014         * mac/WebKit2.exp:
1015         * win/WebKit2.vcproj:
1016
1017 2010-07-06  Sam Weinig  <sam@webkit.org>
1018
1019         Reviewed by Anders Carlsson.
1020
1021         Patch for https://bugs.webkit.org/show_bug.cgi?id=41707
1022         Add ability to dump frame inner text for the test runner
1023
1024         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1025         (WKBundleFrameCopyInnerText):
1026         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
1027         * WebProcess/WebPage/WebFrame.cpp:
1028         (WebKit::WebFrame::innerText):
1029         * WebProcess/WebPage/WebFrame.h:
1030         * mac/WebKit2.exp:
1031
1032 2010-07-06  Anders Carlsson  <andersca@apple.com>
1033
1034         Reviewed by Sam Weinig.
1035
1036         Only export a single WebKitMain function for the Web Process to call
1037         https://bugs.webkit.org/show_bug.cgi?id=41702
1038
1039         * Shared/CommandLine.h:
1040         Add windows CommandLine::parse overload.
1041
1042         * Shared/win/CommandLineWin.cpp: Added.
1043         (WebKit::CommandLine::parse):
1044         Move parse overload from WebProcess/win/WebProcessMain.cpp.
1045
1046         * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
1047         (WebKit::ProcessLauncher::launchProcess):
1048         Pass the right mode to.
1049
1050         * WebKit2.xcodeproj/project.pbxproj:
1051         Update for moves.
1052         
1053         * WebProcess/Launching/mac/WebProcessMain.mm: Removed.
1054         * WebProcess/Launching/win/WebProcessWinMain.cpp: Removed.
1055         * WebProcess/WebKitMain.cpp: Added.
1056         (WebKitMain):
1057         (enableTerminationOnHeapCorruption):
1058         Add WebKitMain functions for Mac and Windows.
1059
1060         * WebProcess/WebProcessMain.h: Added.
1061         * WebProcess/mac/WebProcessMainMac.mm: Added.
1062         (WebKit::WebProcessMain):
1063         Add Mac version of WebProcessMain.
1064
1065         * WebProcess/win/WebProcessMain.cpp: Removed.
1066         * WebProcess/win/WebProcessMain.h: Removed.
1067         * WebProcess/win/WebProcessMainWin.cpp: Added.
1068         (WebKit::WebProcessMain):
1069         Add Windows version of WebProcessMain.
1070
1071         * mac/MainMac.cpp: Added.
1072         (main):
1073         Add Mac WebProcess main function.
1074
1075         * mac/WebKit2.exp:
1076         Remove functions that we don't need to export.
1077
1078         * win/MainWin.cpp: Added.
1079         (wWinMain):
1080         Add Windows WebProcess main function.
1081
1082         * win/WebKit2.vcproj:
1083         * win/WebKit2WebProcess.vcproj:
1084         Update for moves.
1085
1086 2010-07-05  Luiz Agostini  <luiz.agostini@openbossa.org>
1087
1088         Reviewed by Kenneth Rohde Christiansen.
1089
1090         [Qt] WebKit2 triple click
1091         https://bugs.webkit.org/show_bug.cgi?id=41629
1092
1093         QtWebkit2 triple click implementation.
1094
1095         * UIProcess/API/qt/qwkpage.cpp:
1096         (QWKPagePrivate::mousePressEvent):
1097         (QWKPagePrivate::mouseDoubleClickEvent):
1098         (QWKPage::timerEvent):
1099         * UIProcess/API/qt/qwkpage.h:
1100         * UIProcess/API/qt/qwkpage_p.h:
1101
1102 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1103
1104         Reviewed by Antti Koivisto.
1105
1106         [Qt] Initial WebKit2 implementation
1107         https://bugs.webkit.org/show_bug.cgi?id=40233
1108
1109         Add stubs
1110
1111         * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp: Copied from WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp.
1112         (WebKit::PluginInfoStore::pluginDirectories):
1113         (WebKit::PluginInfoStore::pluginPathsInDirectory):
1114         (WebKit::PluginInfoStore::getPluginInfo):
1115         (WebKit::PluginInfoStore::shouldUsePlugin):
1116         * WebProcess/InjectedBundle/InjectedBundle.h:
1117         * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp: Added.
1118         (WebKit::InjectedBundle::load):
1119
1120 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1121
1122         Reviewed by Antti Koivisto.
1123
1124         [Qt] Initial WebKit2 implementation
1125         https://bugs.webkit.org/show_bug.cgi?id=40233
1126
1127         Add WebErrorsQt
1128
1129         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp: Added.
1130         (WebKit::):
1131         (WebKit::cancelledError):
1132         (WebKit::blockedError):
1133         (WebKit::cannotShowURLError):
1134         (WebKit::interruptForPolicyChangeError):
1135         (WebKit::cannotShowMIMETypeError):
1136         (WebKit::fileDoesNotExistError):
1137
1138 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1139
1140         Reviewed by Antti Koivisto.
1141
1142         [Qt] Initial WebKit2 implementation
1143         https://bugs.webkit.org/show_bug.cgi?id=40233
1144
1145         Add Qt C API integration.
1146
1147         * UIProcess/API/cpp/qt/WKStringQt.cpp: Added.
1148         (WKStringCreateWithQString):
1149         (WKStringCopyQString):
1150         * UIProcess/API/cpp/qt/WKStringQt.h: Added.
1151         * UIProcess/API/cpp/qt/WKURLQt.cpp: Added.
1152         (WKURLCreateWithQUrl):
1153         (WKURLCopyQUrl):
1154         * UIProcess/API/cpp/qt/WKURLQt.h: Added.
1155
1156 2010-07-05  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1157
1158         Reviewed by Antti Koivisto.
1159
1160         [Qt] Initial WebKit2 implementation
1161         https://bugs.webkit.org/show_bug.cgi?id=40233
1162
1163         Add the Qt process launcher.
1164
1165         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: Added.
1166         (WebKit::ProcessLauncher::launchProcess):
1167         (WebKit::ProcessLauncher::terminateProcess):
1168         (WebKit::webThreadBody):
1169         (WebKit::ProcessLauncher::createWebThread):
1170         (webProcessMain):
1171
1172 2010-07-05  Antti Koivisto  <koivisto@iki.fi>
1173
1174         Reviewed by Kenneth Rohde Christiansen.
1175
1176         [Qt] Initial WebKit2 implementation
1177         https://bugs.webkit.org/show_bug.cgi?id=40233
1178         
1179         Implement ChunkedUpdateDrawingArea + Proxy for Qt. Not built yet.
1180
1181         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
1182         * UIProcess/qt: Added.
1183         * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp: Added.
1184         (WebKit::ChunkedUpdateDrawingAreaProxy::page):
1185         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
1186         (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
1187         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
1188         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
1189         * WebProcess/WebPage/qt: Added.
1190         * WebProcess/WebPage/qt/ChunkedUpdateDrawingAreaQt.cpp: Added.
1191         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
1192
1193 2010-07-04  Anders Carlsson  <andersca@apple.com>
1194
1195         Reviewed by Dan Bernstein.
1196
1197         Add simple command line parser and pass mode argument to the web process
1198         https://bugs.webkit.org/show_bug.cgi?id=41586
1199
1200         * Shared/CommandLine.h:
1201         (WebKit::CommandLine::operator[]):
1202         Add CommandLine class.
1203
1204         * Shared/mac/CommandLineMac.cpp:
1205         (WebKit::CommandLine::parse):
1206         Implement Mac version of CommandLine::parse.
1207
1208         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1209         (WebKit::ProcessLauncher::launchProcess):
1210         Add "legacywebprocess" mode to the posix_spawn call.
1211
1212         * WebKit2.xcodeproj/project.pbxproj:
1213         Add CommandLine to the xcode project.
1214
1215         * WebProcess/Launching/mac/WebProcessMain.mm:
1216         (webProcessMain):
1217         (main):
1218         Parse the command line and check the mode.
1219
1220 2010-07-04  Maciej Stachowiak  <mjs@apple.com>
1221
1222         Reviewed by Mark Rowe.
1223
1224         WebProcess crashes in release for simple layout tests
1225         https://bugs.webkit.org/show_bug.cgi?id=41575
1226
1227         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1228         (WKBundlePageCopyRenderTreeExternalRepresentation): ref external representation StringImpl*
1229         before taking it out of its parent String, to avoid returning freed memory.
1230
1231 2010-07-03  Maciej Stachowiak  <mjs@apple.com>
1232
1233         Rubber stamped by Anders Carlsson.
1234
1235         Add stdint.h include to fix WebKitTestRunner build.
1236
1237         * UIProcess/API/C/WKPage.h:
1238
1239 2010-07-02  Luiz Agostini  <luiz.agostini@openbossa.org>
1240
1241         Reviewed by Kenneth Rohde Christiansen.
1242
1243         [Qt] Wrong method name in file  Connection.h
1244         https://bugs.webkit.org/show_bug.cgi?id=41536
1245
1246         Method openConnectionHandler was spelled as openConnection in class Connection.
1247
1248         * Platform/CoreIPC/Connection.h:
1249
1250 2010-07-02  Luiz Agostini  <luiz.agostini@openbossa.org>
1251
1252         Reviewed by Sam Weinig.
1253
1254         Adding notification and touch events methods to WebChromeClient
1255         https://bugs.webkit.org/show_bug.cgi?id=41527
1256
1257         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1258         (WebKit::WebChromeClient::notificationPresenter):
1259         (WebKit::WebChromeClient::needTouchEvents):
1260         * WebProcess/WebCoreSupport/WebChromeClient.h:
1261
1262 2010-07-02  Luiz Agostini  <luiz.agostini@openbossa.org>
1263
1264         Reviewed by Sam Weinig.
1265
1266         Removing CoreFoundation.h include from WKFrame.h
1267         https://bugs.webkit.org/show_bug.cgi?id=41528
1268
1269         * UIProcess/API/C/WKFrame.h:
1270
1271 2010-07-02  Sam Weinig  <sam@webkit.org>
1272
1273         Reviewed by Oliver Hunt.
1274
1275         Patch for https://bugs.webkit.org/show_bug.cgi?id=41540
1276         WebKit2: Add InjectedCode API to get a list of subframes
1277
1278         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1279         (WKBundleFrameCopyChildFrames):
1280         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
1281         * WebProcess/WebPage/WebFrame.cpp:
1282         (WebKit::childFrameRef):
1283         (WebKit::childFrameDeref):
1284         (WebKit::WebFrame::childFrames):
1285         * WebProcess/WebPage/WebFrame.h:
1286         * mac/WebKit2.exp:
1287
1288 2010-07-02  Sam Weinig  <sam@webkit.org>
1289
1290         Reviewed by Anders Carlsson.
1291
1292         Turn off the Objective-C garbage collection for the WebProcess.
1293
1294         * Configurations/WebProcess.xcconfig:
1295         * WebProcess/Launching/mac/WebProcessMain.mm:
1296         (main): Assert that GC is off.
1297
1298 2010-07-02  Sam Weinig  <sam@webkit.org>
1299
1300         Reviewed by Anders Carlsson.
1301
1302         There is no longer a reason to check that the process is valid when posting
1303         a message to the bundle, the process code will take care of that for us.
1304
1305         * UIProcess/WebContext.cpp:
1306         (WebKit::WebContext::postMessageToInjectedBundle):
1307
1308 2010-07-02  Sam Weinig  <sam@webkit.org>
1309
1310         Reviewed by Anders Carlsson.
1311
1312         Use send instead of connection()->send(), now that connections() are created
1313         asynchronously it can be null at this point and the message needs to be queued.
1314
1315         * UIProcess/mac/WebProcessProxyMac.mm:
1316         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
1317
1318 2010-07-01  Steve Falkenburg  <sfalken@apple.com>
1319
1320         Even more Windows build fixing.
1321         Removed bogus post-build event commands.
1322         Removed unnecessary link libraries.
1323
1324         * win/WebKit2.vcproj:
1325
1326 2010-07-01  Steve Falkenburg  <sfalken@apple.com>
1327
1328         Fix Windows while not breaking Qt (didn't realize this was building for Qt).
1329
1330         * WebProcess/WebProcess.cpp:
1331
1332 2010-07-01  Steve Falkenburg  <sfalken@apple.com>
1333
1334         Windows build fix.
1335
1336         * win/WebKit2Generated.make:
1337
1338 2010-07-01  Steve Falkenburg  <sfalken@apple.com>
1339
1340         Windows build fix.
1341
1342         * WebProcess/WebProcess.cpp:
1343
1344 2010-07-01  Sam Weinig  <sam@webkit.org>
1345
1346         Reviewed by Jon Honeycutt.
1347
1348         Make WebKit2 compile (though not work) on Leopard.
1349
1350         * Platform/WorkQueue.h:
1351         * Platform/mac/WorkQueueMac.cpp:
1352         (WorkQueue::EventSource::EventSource):
1353         (WorkQueue::scheduleWork):
1354         (WorkQueue::registerMachPortEventHandler):
1355         (WorkQueue::unregisterMachPortEventHandler):
1356         (WorkQueue::platformInitialize):
1357         (WorkQueue::platformInvalidate):
1358         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
1359         (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext):
1360         * UIProcess/mac/WebProcessProxyMac.mm:
1361         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
1362         * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
1363         (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
1364         (WebKit::LayerBackedDrawingArea::setNeedsDisplay):
1365         * WebProcess/WebPage/LayerBackedDrawingArea.h:
1366         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
1367         (WebKit::LayerBackedDrawingArea::platformClear):
1368         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
1369
1370 2010-07-01  Sam Weinig  <sam@webkit.org>
1371
1372         Reviewed by Anders Carlsson.
1373
1374         https://bugs.webkit.org/show_bug.cgi?id=41491
1375         Add first stab at back/forward list API.
1376
1377         * UIProcess/API/C/WKAPICast.h:
1378         * UIProcess/API/C/WKBackForwardList.cpp: Added.
1379         * UIProcess/API/C/WKBackForwardList.h: Added.
1380         * UIProcess/API/C/WKBackForwardListItem.cpp: Added.
1381         * UIProcess/API/C/WKBackForwardListItem.h: Added.
1382         * UIProcess/API/C/WKBase.h:
1383         * UIProcess/API/C/WKPage.cpp:
1384         * UIProcess/API/C/WKPage.h:
1385         * UIProcess/API/C/WebKit2.h:
1386         * UIProcess/WebBackForwardListItem.cpp: Added.
1387         * UIProcess/WebBackForwardListItem.h: Added.
1388         * UIProcess/WebBackForwardListProxy.cpp: Added.
1389         * UIProcess/WebBackForwardListProxy.h: Added.
1390         * UIProcess/WebPageProxy.cpp:
1391         * UIProcess/WebPageProxy.h:
1392         * WebKit2.xcodeproj/project.pbxproj:
1393         * win/WebKit2.vcproj:
1394
1395 2010-07-01  Anders Carlsson  <andersca@apple.com>
1396
1397         Reviewed by Sam Weinig.
1398
1399         Make process launching asynchronous
1400         https://bugs.webkit.org/show_bug.cgi?id=41489
1401
1402         * Platform/CoreIPC/Connection.h:
1403         Make OutgoingMessage public.
1404
1405         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
1406         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
1407         Don't wait for a paint reply when the process is starting up.
1408
1409         * UIProcess/Launcher/ProcessLauncher.cpp: Added.
1410         Add new ProcessLauncher class.
1411
1412         (WebKit::processLauncherWorkQueue):
1413         Returns the work queue where process launching will happen.
1414
1415         (WebKit::ProcessLauncher::ProcessLauncher):
1416         Schedule launching the process.
1417
1418         (WebKit::ProcessLauncher::didFinishLaunchingProcess):
1419         Call the client method.
1420         
1421         (WebKit::ProcessLauncher::invalidate):
1422         Set the client to 0.
1423
1424         * UIProcess/Launcher/ProcessLauncher.h: Added.
1425         * UIProcess/Launcher/WebProcessLauncher.h: Removed.
1426         Rename WebProcessLauncher.h -> ProcessLauncher.h
1427
1428         * UIProcess/Launcher/mac/ProcessLauncherMac.mm: Added.
1429         * UIProcess/Launcher/mac/WebProcessLauncher.mm: Removed.
1430         Rename WebProcessLauncher.mm -> ProcessLauncherMac.mm, update for ProcessLauncher changes.
1431
1432         * UIProcess/Launcher/win/ProcessLauncherWin.cpp: Added.
1433         * UIProcess/Launcher/win/WebProcessLauncher.cpp: Removed.
1434         Rename WebProcessLauncher.cpp -> ProcessLauncherWin.cpp, update for ProcessLauncher changes.
1435         
1436         * UIProcess/WebProcessProxy.cpp:
1437         (WebKit::WebProcessProxy::~WebProcessProxy):
1438         Delete any unsent messages.
1439
1440         (WebKit::WebProcessProxy::connect):
1441         Use the new ProcessLauncher.
1442
1443         (WebKit::WebProcessProxy::sendMessage):
1444         If we're waiting for the process to launch, the messages need to be enqueued.
1445
1446         (WebKit::WebProcessProxy::didFinishLaunching):
1447         Send the outgoing messages.
1448
1449         * WebKit2.xcodeproj/project.pbxproj:
1450         * win/WebKit2.vcproj:
1451         Update for renames.
1452
1453 2010-07-01  Simon Fraser  <simon.fraser@apple.com>
1454
1455         Reviewed by Anders Carlsson.
1456
1457         Get accelerated compositing working with webkit2
1458         https://bugs.webkit.org/show_bug.cgi?id=41084
1459         
1460         Start up the CA render server in the UI process (currently, at launch time), and
1461         pass the server port over to the web process for use by the layer-backed drawing area.
1462         
1463         Fix some style issues pointed out by Dan Bernstein.
1464         
1465         Implement the WebChromeClient methods that pass the attach/detach calls through
1466         to the drawing area.
1467
1468         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
1469         * UIProcess/API/mac/WKView.mm:
1470         (-[WKView _startAcceleratedCompositing:]):
1471         * UIProcess/API/mac/WKViewInternal.h:
1472         * UIProcess/WebProcessProxy.cpp:
1473         (WebKit::WebProcessProxy::WebProcessProxy):
1474         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
1475         * UIProcess/WebProcessProxy.h:
1476         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
1477         * UIProcess/mac/WebProcessProxyMac.mm: Added.
1478         (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
1479         * WebKit2.xcodeproj/project.pbxproj:
1480         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1481         (WebKit::WebChromeClient::attachRootGraphicsLayer):
1482         (WebKit::WebChromeClient::scheduleCompositingLayerSync):
1483         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
1484         (WebKit::LayerBackedDrawingArea::attachCompositingContext):
1485         * WebProcess/WebProcess.cpp:
1486         (WebKit::WebProcess::WebProcess):
1487         (WebKit::WebProcess::didReceiveMessage):
1488         * WebProcess/WebProcess.h:
1489         (WebKit::WebProcess::compositingRenderServerPort):
1490
1491 2010-07-01  Simon Fraser  <simon.fraser@apple.com>
1492
1493         Reviewed by Anders Carlsson.
1494
1495         Get accelerated compositing working with webkit2
1496         https://bugs.webkit.org/show_bug.cgi?id=41084
1497         
1498         Add a new kind of DrawingArea, which is a LayerBackedDrawingArea, which will be used
1499         when the page goes into accelerated compositing mode. It is not wired up yet.
1500
1501         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h: New 'attach' and 'detach' messages
1502         related to accelerated compositing.
1503
1504         * UIProcess/API/mac/WKView.mm:
1505         (-[WKView _startAcceleratedCompositing:]):
1506         (-[WKView _stopAcceleratedCompositing]):
1507         * UIProcess/API/mac/WKViewInternal.h:
1508         Add a subview of the WKView which has layer-backing enabled, and put the drawing area's
1509         layer inside of that.
1510         
1511         * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
1512         (WebKit::ChunkedUpdateDrawingAreaProxy::attachCompositingContext):
1513         (WebKit::ChunkedUpdateDrawingAreaProxy::detachCompositingContext): These methods will never be called
1514         on the ChunkedUpdateDrawingArea. Stub them out.
1515
1516         * UIProcess/DrawingAreaProxy.h:
1517         Add attachCompositingContext() and detachCompositingContext() methods, and a new drawing area
1518         type to the enum.
1519
1520         * UIProcess/LayerBackedDrawingAreaProxy.cpp: Added.
1521         * UIProcess/LayerBackedDrawingAreaProxy.h: Added.
1522         * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm: Added.
1523
1524         * WebKit2.xcodeproj/project.pbxproj: Add LayerBackedDrawingArea files.
1525
1526         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Add virtual methods stubs.
1527
1528         * WebProcess/WebPage/DrawingArea.cpp:
1529         (WebKit::DrawingArea::create): Create a LayerBackedDrawingArea if asked.
1530         * WebProcess/WebPage/DrawingArea.h: New LayerBackedDrawingAreaType type, and new virtual
1531         methods related to accelerated compositing.
1532
1533         * WebProcess/WebPage/LayerBackedDrawingArea.cpp: Added.
1534         * WebProcess/WebPage/LayerBackedDrawingArea.h: Added.
1535         * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm: Added.
1536
1537 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1538
1539        Rubberstamped by Sam Weinig.
1540
1541        Export symbols on Linux with GCC, like JSC does.
1542
1543        * UIProcess/API/C/WKBase.h:
1544        * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
1545
1546 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1547
1548         Reviewed by Antti Koivisto.
1549
1550         [Qt] Initial WebKit2 implementation
1551         https://bugs.webkit.org/show_bug.cgi?id=40233
1552
1553         Add implementation of the UI and loader client for Qt.
1554
1555         * UIProcess/API/qt/qwkpage.cpp:
1556         * UIProcess/API/qt/ClientImpl.cpp: Added.
1557         (toQWKPage):
1558         (qt_wk_didStartProvisionalLoadForFrame):
1559         (qt_wk_didReceiveServerRedirectForProvisionalLoadForFrame):
1560         (qt_wk_didFailProvisionalLoadWithErrorForFrame):
1561         (qt_wk_didCommitLoadForFrame):
1562         (qt_wk_didFinishLoadForFrame):
1563         (qt_wk_didFailLoadWithErrorForFrame):
1564         (qt_wk_didReceiveTitleForFrame):
1565         (qt_wk_didFirstLayoutForFrame):
1566         (qt_wk_didFirstVisuallyNonEmptyLayoutForFrame):
1567         (qt_wk_didStartProgress):
1568         (qt_wk_didChangeProgress):
1569         (qt_wk_didFinishProgress):
1570         (qt_wk_didBecomeUnresponsive):
1571         (qt_wk_didBecomeResponsive):
1572         (qt_wk_createNewPage):
1573         (qt_wk_showPage):
1574         (qt_wk_close):
1575         (qt_wk_runJavaScriptAlert):
1576         * UIProcess/API/qt/ClientImpl.h: Added.
1577
1578 2010-07-01  Anders Carlsson  <andersca@apple.com>
1579
1580         Reviewed by Dan Bernstein.
1581
1582         Change the CoreIPC connection identifier to be a HANDLE on Windows
1583         https://bugs.webkit.org/show_bug.cgi?id=41479
1584
1585         * Platform/CoreIPC/Connection.h:
1586         * Platform/CoreIPC/win/ConnectionWin.cpp:
1587         (CoreIPC::Connection::createServerAndClientIdentifiers):
1588         New function that creates a server and client HANDLE.
1589
1590         (CoreIPC::Connection::platformInitialize):
1591         Don't open the connections here.
1592
1593         (CoreIPC::Connection::readEventHandler):
1594         (CoreIPC::Connection::open):
1595         
1596         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
1597         (WebKit::webThreadBody):
1598         Get the handle from the thread.
1599
1600         (WebKit::launchWebProcess):
1601         Mark the client identifier as inheritable and pass it along to the web process.
1602
1603         * WebProcess/win/WebProcessMain.cpp:
1604         (WebKit::CommandLine::CommandLine):
1605         (WebKit::CommandLine::parse):
1606         (WebKit::CommandLine::operator[]):
1607         Add simple command line parser.
1608
1609         (WebKit::WebProcessMain):
1610         Get the handle identifier from the command line.
1611
1612         * WebProcess/win/WebProcessMain.h:
1613
1614 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1615
1616         Reviewed by Antti Koivisto.
1617
1618         [Qt] Initial WebKit2 implementation
1619         https://bugs.webkit.org/show_bug.cgi?id=40233
1620
1621         Add initial Qt API for WebKit2
1622
1623         * UIProcess/API/qt/WKView.h: Added.
1624         * UIProcess/API/qt/qgraphicswkview.cpp: Added.
1625         (QGraphicsWKViewPrivate::pageRef):
1626         (QGraphicsWKView::QGraphicsWKView):
1627         (QGraphicsWKView::~QGraphicsWKView):
1628         (QGraphicsWKView::page):
1629         (QGraphicsWKView::paint):
1630         (QGraphicsWKView::setGeometry):
1631         (QGraphicsWKView::load):
1632         (QGraphicsWKView::setUrl):
1633         (QGraphicsWKView::url):
1634         (QGraphicsWKView::title):
1635         (QGraphicsWKView::triggerPageAction):
1636         (QGraphicsWKView::back):
1637         (QGraphicsWKView::forward):
1638         (QGraphicsWKView::reload):
1639         (QGraphicsWKView::stop):
1640         (QGraphicsWKView::itemChange):
1641         (QGraphicsWKView::event):
1642         (QGraphicsWKView::sizeHint):
1643         (QGraphicsWKView::inputMethodQuery):
1644         (QGraphicsWKView::keyPressEvent):
1645         (QGraphicsWKView::keyReleaseEvent):
1646         (QGraphicsWKView::hoverMoveEvent):
1647         (QGraphicsWKView::mouseMoveEvent):
1648         (QGraphicsWKView::mousePressEvent):
1649         (QGraphicsWKView::mouseReleaseEvent):
1650         (QGraphicsWKView::mouseDoubleClickEvent):
1651         (QGraphicsWKView::wheelEvent):
1652         (QGraphicsWKViewPrivate::QGraphicsWKViewPrivate):
1653         (QGraphicsWKView::visibleRect):
1654         * UIProcess/API/qt/qgraphicswkview.h: Added.
1655         * UIProcess/API/qt/qwkpage.cpp: Added.
1656         (QWKPagePrivate::QWKPagePrivate):
1657         (QWKPagePrivate::~QWKPagePrivate):
1658         (QWKPagePrivate::init):
1659         (QWKPagePrivate::toolTipChanged):
1660         (QWKPagePrivate::paint):
1661         (QWKPagePrivate::keyPressEvent):
1662         (QWKPagePrivate::keyReleaseEvent):
1663         (QWKPagePrivate::mouseMoveEvent):
1664         (QWKPagePrivate::mousePressEvent):
1665         (QWKPagePrivate::mouseReleaseEvent):
1666         (QWKPagePrivate::mouseDoubleClickEvent):
1667         (QWKPagePrivate::wheelEvent):
1668         (QWKPagePrivate::updateAction):
1669         (QWKPagePrivate::updateNavigationActions):
1670         (QWKPagePrivate::_q_webActionTriggered):
1671         (QWKPage::QWKPage):
1672         (QWKPage::~QWKPage):
1673         (QWKPage::pageRef):
1674         (QWKPage::setCreateNewPageFunction):
1675         (QWKPage::load):
1676         (QWKPage::setUrl):
1677         (QWKPage::url):
1678         (QWKPage::title):
1679         (QWKPage::setViewportSize):
1680         (QWKPage::requestZoomRect):
1681         (QWKPage::triggerAction):
1682         (QWKPage::action):
1683         * UIProcess/API/qt/qwkpage.h: Added.
1684         * UIProcess/API/qt/qwkpage_p.h: Added.
1685         (QWKPagePrivate::get):
1686         (QWKPagePrivate::processDidExit):
1687         (QWKPagePrivate::processDidRevive):
1688         (QWKPagePrivate::takeFocus):
1689
1690 2010-07-01  John Sullivan  <sullivan@apple.com>
1691
1692         Rubber-stamped by Anders Carlsson.
1693
1694         * mac/WebKit2.exp:
1695         Added _WKFramePolicyListenerDownload and _WKFramePolicyListenerIgnore.
1696
1697 2010-07-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1698
1699         Unreviewed, rolling out r62267.
1700         http://trac.webkit.org/changeset/62267
1701         https://bugs.webkit.org/show_bug.cgi?id=41468
1702
1703         broke stuff (Requested by weinig on #webkit).
1704
1705         * UIProcess/API/C/WKBase.h:
1706         * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
1707
1708 2010-07-01  John Sullivan  <sullivan@apple.com>
1709
1710         Rubber-stamped by Sam Weinig.
1711
1712         * mac/WebKit2.exp:
1713         Added _WKFramePolicyListenerRelease and _WKFramePolicyListenerRetain.
1714
1715 2010-07-01  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
1716
1717         Reviewed by Antti Koivisto.
1718
1719         [Qt] Initial WebKit2 implementation
1720         https://bugs.webkit.org/show_bug.cgi?id=40233
1721
1722         Add our event factory for converting Qt events to something WebKit2
1723         understands.
1724
1725         * Shared/qt/WebEventFactoryQt.cpp: Added.
1726         (WebKit::mouseButtonForEvent):
1727         (WebKit::webEventTypeForEvent):
1728         (WebKit::modifiersForEvent):
1729         (WebKit::WebEventFactory::createWebMouseEvent):
1730         (WebKit::WebEventFactory::createWebWheelEvent):
1731         (WebKit::WebEventFactory::createWebKeyboardEvent):
1732         * Shared/qt/WebEventFactoryQt.h: Added.
1733
1734 2010-07-01  Antti Koivisto  <koivisto@iki.fi>
1735
1736         Reviewed by Kenneth Rohde Christiansen.
1737
1738         [Qt] Initial WebKit2 implementation
1739         https://bugs.webkit.org/show_bug.cgi?id=40233
1740         
1741         Add UpdateChunk. This one is mmap based, using Qt abstractions.
1742
1743         * Shared/qt: Added.
1744         * Shared/qt/UpdateChunk.cpp: Added.
1745         (WebKit::MappedMemory::markUsed):
1746         (WebKit::MappedMemory::markFree):
1747         (WebKit::MappedMemory::isFree):
1748         (WebKit::mapMemory):
1749         (WebKit::mapFile):
1750         (WebKit::UpdateChunk::UpdateChunk):
1751         (WebKit::UpdateChunk::~UpdateChunk):
1752         (WebKit::UpdateChunk::data):
1753         (WebKit::UpdateChunk::encode):
1754         (WebKit::UpdateChunk::decode):
1755         (WebKit::UpdateChunk::createImage):
1756         * Shared/qt/UpdateChunk.h: Added.
1757         (WebKit::UpdateChunk::rect):
1758         (WebKit::UpdateChunk::size):
1759
1760 2010-07-01  Antti Koivisto  <koivisto@iki.fi>
1761
1762         Reviewed by Kenneth Rohde Christiansen.
1763
1764         [Qt] Initial WebKit2 implementation
1765         https://bugs.webkit.org/show_bug.cgi?id=40233
1766         
1767         Include some stdlib headers to fix linux build.
1768
1769         * Platform/CoreIPC/ArgumentDecoder.cpp:
1770         * Platform/CoreIPC/ArgumentEncoder.cpp:
1771         * UIProcess/WebLoaderClient.cpp:
1772         * UIProcess/WebPageProxy.cpp:
1773         * UIProcess/WebUIClient.cpp:
1774
1775 2010-07-01  Antti Koivisto  <koivisto@iki.fi>
1776
1777         Reviewed by Kenneth Rohde Christiansen.
1778
1779         [Qt] Initial WebKit2 implementation
1780         https://bugs.webkit.org/show_bug.cgi?id=40233
1781         
1782         Implement CoreIPC::Connection and PlatformProcessIdentifier for Qt. Not built yet.
1783
1784         * Platform/CoreIPC/Connection.h:
1785         * Platform/CoreIPC/qt: Added.
1786         * Platform/CoreIPC/qt/ConnectionQt.cpp: Added.
1787         (CoreIPC::Connection::platformInitialize):
1788         (CoreIPC::Connection::platformInvalidate):
1789         (CoreIPC::Connection::newConnectionHandler):
1790         (CoreIPC::Connection::readyReadHandler):
1791         (CoreIPC::Connection::openConnection):
1792         (CoreIPC::Connection::open):
1793         (CoreIPC::Connection::sendOutgoingMessage):
1794         * Platform/PlatformProcessIdentifier.h:
1795
1796 2010-07-01  Antti Koivisto  <koivisto@iki.fi>
1797
1798         Reviewed by Kenneth Rohde Christiansen.
1799
1800         [Qt] Initial WebKit2 implementation
1801         https://bugs.webkit.org/show_bug.cgi?id=40233
1802         
1803         Implement WorkQueue for Qt. Not built yet.
1804
1805         * Platform/WorkQueue.h:
1806         * Platform/qt/WorkQueueQt.cpp: Added.
1807         (WorkQueue::WorkItemQt::WorkItemQt):
1808         (WorkQueue::WorkItemQt::~WorkItemQt):
1809         (WorkQueue::WorkItemQt::execute):
1810         (WorkQueue::WorkItemQt::timerEvent):
1811         (WorkQueue::connectSignal):
1812         (WorkQueue::disconnectSignal):
1813         (WorkQueue::platformInitialize):
1814         (WorkQueue::platformInvalidate):
1815         (WorkQueue::scheduleWork):
1816
1817 2010-07-01  Antti Koivisto  <koivisto@iki.fi>
1818
1819         Reviewed by Kenneth Rohde Christiansen.
1820
1821         [Qt] Initial WebKit2 implementation
1822         https://bugs.webkit.org/show_bug.cgi?id=40233
1823         
1824         Implement RunLoop for Qt. Not built yet.
1825
1826         * Platform/RunLoop.h:
1827         * Platform/qt: Added.
1828         * Platform/qt/RunLoopQt.cpp: Added.
1829         (RunLoop::TimerObject::TimerObject):
1830         (RunLoop::TimerObject::performWork):
1831         (RunLoop::TimerObject::wakeUp):
1832         (RunLoop::TimerObject::timerEvent):
1833         (RunLoop::run):
1834         (RunLoop::stop):
1835         (RunLoop::RunLoop):
1836         (RunLoop::~RunLoop):
1837         (RunLoop::wakeUp):
1838         (RunLoop::TimerBase::timerFired):
1839         (RunLoop::TimerBase::TimerBase):
1840         (RunLoop::TimerBase::~TimerBase):
1841         (RunLoop::TimerBase::start):
1842         (RunLoop::TimerBase::stop):
1843         (RunLoop::TimerBase::isActive):
1844
1845 2010-06-30  Sam Weinig  <sam@webkit.org>
1846
1847         Reviewed by Darin Adler.
1848
1849         Patch for https://bugs.webkit.org/show_bug.cgi?id=41426
1850         Add ImmutableArray class and WKArrayRef API to go with it. This will be used
1851         in a few follow up patches.
1852
1853         * Shared/ImmutableArray.cpp: Added.
1854         (WebKit::ImmutableArray::ImmutableArray):
1855         (WebKit::ImmutableArray::~ImmutableArray):
1856         * Shared/ImmutableArray.h: Added.
1857         * UIProcess/API/C/WKAPICast.h:
1858         * UIProcess/API/C/WKArray.cpp: Added.
1859         * UIProcess/API/C/WKArray.h: Added.
1860         * UIProcess/API/C/WKBase.h:
1861         * WebKit2.xcodeproj/project.pbxproj:
1862         * mac/WebKit2.exp:
1863         * win/WebKit2.vcproj:
1864
1865 2010-06-30  Anders Carlsson  <andersca@apple.com>
1866
1867         Reviewed by Adam Roben.
1868
1869         Add WebProcessProxy::send
1870         https://bugs.webkit.org/show_bug.cgi?id=41416
1871
1872         * Platform/CoreIPC/Connection.h:
1873         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
1874         (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
1875         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
1876         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
1877         * UIProcess/WebContext.cpp:
1878         (WebKit::WebContext::postMessageToInjectedBundle):
1879         * UIProcess/WebPageProxy.cpp:
1880         (WebKit::WebPageProxy::initializeWebPage):
1881         (WebKit::WebPageProxy::reinitializeWebPage):
1882         (WebKit::WebPageProxy::close):
1883         (WebKit::WebPageProxy::tryClose):
1884         (WebKit::WebPageProxy::loadURL):
1885         (WebKit::WebPageProxy::stopLoading):
1886         (WebKit::WebPageProxy::reload):
1887         (WebKit::WebPageProxy::goForward):
1888         (WebKit::WebPageProxy::goBack):
1889         (WebKit::WebPageProxy::setFocused):
1890         (WebKit::WebPageProxy::setActive):
1891         (WebKit::WebPageProxy::mouseEvent):
1892         (WebKit::WebPageProxy::wheelEvent):
1893         (WebKit::WebPageProxy::keyEvent):
1894         (WebKit::WebPageProxy::receivedPolicyDecision):
1895         (WebKit::WebPageProxy::runJavaScriptInMainFrame):
1896         (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
1897         (WebKit::WebPageProxy::preferencesDidChange):
1898         * UIProcess/WebProcessProxy.cpp:
1899         (WebKit::WebProcessProxy::WebProcessProxy):
1900         (WebKit::WebProcessProxy::sendMessage):
1901         * UIProcess/WebProcessProxy.h:
1902         (WebKit::WebProcessProxy::connection):
1903         (WebKit::WebProcessProxy::send):
1904
1905 2010-06-29  Anders Carlsson  <andersca@apple.com>
1906
1907         Reviewed by Sam Weinig.
1908
1909         Add a private Message class template
1910         https://bugs.webkit.org/show_bug.cgi?id=41370
1911
1912         * Platform/CoreIPC/Connection.h:
1913         (CoreIPC::Connection::Message::Message):
1914         (CoreIPC::Connection::Message::arguments):
1915
1916 2010-06-28  John Gregg  <johnnyg@google.com>
1917
1918         Unreviewed, build fix (removing merge conflict from previous).
1919
1920         * Configurations/FeatureDefines.xcconfig:
1921
1922 2010-06-23  John Gregg  <johnnyg@google.com>
1923
1924         Reviewed by Kent Tamura.
1925
1926         add ENABLE_DIRECTORY_UPLOAD build support
1927         https://bugs.webkit.org/show_bug.cgi?id=41100
1928
1929         * Configurations/FeatureDefines.xcconfig:
1930
1931 2010-06-28  Sam Weinig  <sam@webkit.org>
1932
1933         Rubber-stamped Geoffrey Garen.
1934
1935         Add WKBundleFrameIsMainFrame to exports file.
1936
1937         * mac/WebKit2.exp:
1938
1939 2010-06-28  Sam Weinig  <sam@webkit.org>
1940
1941         Reviewed by Anders Carlsson.
1942
1943         Patch for https://bugs.webkit.org/show_bug.cgi?id=41288
1944         WebKit2: Add frame API for InjectedBundle code
1945
1946         * WebKit2.xcodeproj/project.pbxproj:
1947         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: Added.
1948         (WKBundleFrameIsMainFrame):
1949         (WKBundleFrameGetURL):
1950         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Added.
1951         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1952         (WKBundlePageGetMainFrame):
1953         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1954         * WebProcess/WebPage/WebFrame.cpp:
1955         (WebKit::WebFrame::isMainFrame):
1956         (WebKit::WebFrame::url):
1957         * WebProcess/WebPage/WebFrame.h:
1958         * WebProcess/WebPage/WebPage.cpp:
1959         * WebProcess/WebPage/WebPage.h:
1960         (WebKit::WebPage::mainFrame):
1961         * mac/WebKit2.exp:
1962         * win/WebKit2.vcproj:
1963
1964 2010-06-27  Mark Rowe  <mrowe@apple.com>
1965
1966         Rubber-stamped by Maciej Stachowiak.
1967
1968         Update guards related to blocks to check whether __BLOCKS__ is defined, rather than checking its value.
1969         This matches how similar checks are performed in system headers, and avoids a compile error when __BLOCKS__
1970         is not defined.
1971
1972         * UIProcess/API/C/WKPage.cpp:
1973         * UIProcess/API/C/WKPage.h:
1974         * UIProcess/API/C/WKPagePrivate.h:
1975
1976 2010-06-26  Tony Gentilcore  <tonyg@chromium.org>
1977
1978         Reviewed by Dimitri Glazkov.
1979
1980         Add an ENABLE_WEB_TIMING option for enabling Web Timing support.
1981         https://bugs.webkit.org/show_bug.cgi?id=38924
1982
1983         * Configurations/FeatureDefines.xcconfig:
1984
1985 2010-06-25  Steve Falkenburg  <sfalken@apple.com>
1986
1987         Windows build fix.
1988
1989         * win/WebKit2.vcproj:
1990
1991 2010-06-25  Ada Chan  <adachan@apple.com>
1992
1993         Rubber-stamped by Mark Rowe.
1994
1995         Add additional include search paths relative to $(WebKitLibrariesDir) to fix a build.
1996
1997         * win/WebKit2.vcproj:
1998
1999 2010-06-25  Sam Weinig  <sam@webkit.org>
2000
2001         Reviewed by Anders Carlsson.
2002
2003         WKBundlePageRenderTreeExternalRepresentation really needs to be 
2004         WKBundlePageCopyRenderTreeExternalRepresentation so we don't have dangling
2005         pointers and adhere to naming conventions.
2006
2007         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2008         (WKBundlePageCopyRenderTreeExternalRepresentation):
2009         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
2010         * mac/WebKit2.exp:
2011
2012 2010-06-24  Steve Falkenburg  <sfalken@apple.com>
2013
2014         Windows build fix.
2015
2016         * win/WebKit2.make: Added.
2017         * win/WebKit2.submit.sln: Added.
2018
2019 2010-06-24  Steve Falkenburg  <sfalken@apple.com>
2020
2021         Windows build fix.
2022
2023         * win/WebKit2WebProcess.vcproj:
2024
2025 2010-06-24  Sam Weinig  <sam@webkit.org>
2026
2027         Reviewed by Brady Eidson.
2028
2029         Add WKBundlePageRenderTreeExternalRepresentation for WebKitTestRunner.
2030
2031         * WebKit2.xcodeproj/project.pbxproj:
2032         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2033         (WKBundlePageRenderTreeExternalRepresentation):
2034         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Added.
2035         * WebProcess/WebPage/WebPage.cpp:
2036         (WebKit::WebPage::renderTreeExternalRepresentation):
2037         (WebKit::WebPage::getRenderTreeExternalRepresentation):
2038         * WebProcess/WebPage/WebPage.h:
2039         * mac/WebKit2.exp:
2040         * win/WebKit2.vcproj:
2041
2042 2010-06-24  John Sullivan  <sullivan@apple.com>
2043
2044         Rubber-stamped by Ada Chan.
2045
2046         * mac/WebKit2.exp:
2047         Added _WKNavigationDataRelease and _WKNavigationDataRetain.
2048
2049 2010-06-24  John Sullivan  <sullivan@apple.com>
2050
2051         Rubber-stamped by Anders Carlsson.
2052
2053         * mac/WebKit2.exp:
2054         Added _WKPageReloadFromOrigin.
2055
2056 2010-06-24  Sam Weinig  <sam@webkit.org>
2057
2058         Reviewed by Anders Carlsson.
2059
2060         Fix for https://bugs.webkit.org/show_bug.cgi?id=41168
2061         <rdar://problem/8124605>
2062         Webkit2: Add WKPageReloadFromOrigin() to match old-WebKit functionality
2063
2064         * UIProcess/API/C/WKPage.cpp:
2065         (WKPageReload):
2066         (WKPageReloadFromOrigin):
2067         * UIProcess/API/C/WKPage.h:
2068         * UIProcess/WebPageProxy.cpp:
2069         (WebKit::WebPageProxy::reload):
2070         * UIProcess/WebPageProxy.h:
2071         * WebProcess/WebPage/WebPage.cpp:
2072         (WebKit::WebPage::reload):
2073         (WebKit::WebPage::didReceiveMessage):
2074         * WebProcess/WebPage/WebPage.h:
2075
2076 2010-06-24  Adam Roben  <aroben@apple.com>
2077
2078         Windows build fix
2079
2080         Fixes <http://webkit.org/b/41158>.
2081
2082         Reviewed by Anders Carlsson.
2083
2084         * Shared/win/UpdateChunk.cpp: Updated header name.
2085
2086         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: Added.
2087         (WebKit::PluginInfoStore::pluginDirectories):
2088         (WebKit::PluginInfoStore::pluginPathsInDirectory):
2089         (WebKit::PluginInfoStore::getPluginInfo):
2090         (WebKit::PluginInfoStore::shouldUsePlugin):
2091         Stubbed these out.
2092
2093         * win/WebKit2.vcproj: Added UIProcess/Plugins to the include path for
2094         all configurations. Added UIProcess/Plugins files to the project.
2095
2096 2010-06-23  Anders Carlsson  <andersca@apple.com>
2097
2098         Reviewed by Sam Weinig.
2099
2100         Have the UI process compute the plug-in data
2101         https://bugs.webkit.org/show_bug.cgi?id=41118
2102
2103         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
2104         (WebProcessProxyMessage::):
2105         Add GetPlugin message kind.
2106
2107         * Shared/WebCoreArgumentCoders.h:
2108         Add argument coders for PluginInfo and MimeClassInfo.
2109         
2110         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2111         (WebKit::safeCreateCFString):
2112         (WebKit::PluginInfoStore::pluginPathsInDirectory):
2113         (WebKit::PluginInfoStore::getPluginInfo):
2114         Use safeCreateCFString.
2115         
2116         * UIProcess/WebProcessProxy.cpp:
2117         (WebKit::WebProcessProxy::getPlugins):
2118         Ask the plug-in info store for the plug-in list.
2119
2120         (WebKit::WebProcessProxy::didReceiveSyncMessage):
2121         Handle GetPlugins.
2122
2123         * UIProcess/WebProcessProxy.h:
2124         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2125         (WebKit::WebFrameLoaderClient::objectContentType):
2126         Implement.
2127
2128         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2129         (WebKit::WebPlatformStrategies::populatePluginCache):
2130         Send a sync GetPlugins message.
2131
2132 2010-06-23  Anders Carlsson  <andersca@apple.com>
2133
2134         Reviewed by Dan Bernstein.
2135
2136         Add ArgumentCoder for vectors.
2137
2138         * Platform/CoreIPC/ArgumentCoders.h:
2139         (CoreIPC::):
2140
2141 2010-06-23  Anders Carlsson  <andersca@apple.com>
2142
2143         Reviewed by Dan Bernstein.
2144
2145         Rename WebCoreTypeArgumentMarshalling.h to WebCoreArgumentCoders.h
2146
2147         * Shared/WebCoreArgumentCoders.h: Copied from Shared/WebCoreTypeArgumentMarshalling.h.
2148         * Shared/WebCoreTypeArgumentMarshalling.h: Removed.
2149         * Shared/WebEvent.h:
2150         * Shared/WebNavigationDataStore.h:
2151         * Shared/WebPreferencesStore.h:
2152         * Shared/mac/UpdateChunk.cpp:
2153         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
2154         * UIProcess/WebContext.cpp:
2155         * UIProcess/WebPageProxy.cpp:
2156         * WebKit2.xcodeproj/project.pbxproj:
2157         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2158         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2159         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2160         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
2161         * WebProcess/WebPage/WebPage.cpp:
2162         * WebProcess/WebProcess.cpp:
2163
2164 2010-06-23  Anders Carlsson  <andersca@apple.com>
2165
2166         Reviewed by Dan Bernstein.
2167
2168         MessageIDs should always have the most significant bit zeroed out
2169         https://bugs.webkit.org/show_bug.cgi?id=41112
2170
2171         The most significant bit is used by the Mac implementation of CoreIPC, and
2172         should always be zero in MessageID objects.
2173
2174         * Platform/CoreIPC/Connection.cpp:
2175         (CoreIPC::Connection::waitForMessage):
2176         * Platform/CoreIPC/MessageID.h:
2177         (CoreIPC::MessageID::):
2178         (CoreIPC::MessageID::MessageID):
2179         (CoreIPC::MessageID::operator==):
2180         (CoreIPC::MessageID::fromInt):
2181         (CoreIPC::MessageID::isSync):
2182         (CoreIPC::MessageID::stripMostSignificantBit):
2183         * Platform/CoreIPC/mac/ConnectionMac.cpp:
2184         (CoreIPC::Connection::sendOutgoingMessage):
2185         (CoreIPC::createArgumentDecoder):
2186
2187 2010-06-23  John Sullivan  <sullivan@apple.com>
2188
2189         Rubber-stamped by Anders Carlsson.
2190
2191         * mac/WebKit2.exp:
2192         Added yet another symbol needed by Mac clients.
2193
2194 2010-06-23  John Sullivan  <sullivan@apple.com>
2195
2196         Rubber-stamped by Anders Carlsson.
2197
2198         * mac/WebKit2.exp:
2199         Added another symbol needed by Mac clients.
2200
2201 2010-06-23  Anders Carlsson  <andersca@apple.com>
2202
2203         Reviewed by Sam Weinig.
2204
2205         Rename SimpleArgumentCoder.h to ArgumentCoders.h
2206
2207         * Platform/CoreIPC/ArgumentCoders.h: Copied from Platform/CoreIPC/SimpleArgumentCoder.h.
2208         * Platform/CoreIPC/SimpleArgumentCoder.h: Removed.
2209         * Shared/WebCoreTypeArgumentMarshalling.h:
2210         * WebKit2.xcodeproj/project.pbxproj:
2211
2212 2010-06-23  Anders Carlsson  <andersca@apple.com>
2213
2214         Reviewed by Sam Weinig.
2215
2216         Add a plug-in info cache to WebPlatformStrategies
2217         https://bugs.webkit.org/show_bug.cgi?id=41087
2218
2219         This is in preparation for proxying the getPlugins call over to the UI process.
2220
2221         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2222         (WebKit::WebPlatformStrategies::WebPlatformStrategies):
2223         (WebKit::WebPlatformStrategies::populatePluginCache):
2224         (WebKit::WebPlatformStrategies::refreshPlugins):
2225         (WebKit::WebPlatformStrategies::getPluginInfo):
2226         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2227
2228 2010-06-23  Sam Weinig  <sam@webkit.org>
2229
2230         Reviewed by John Sullivan.
2231
2232         Stop silently ignoring crashes.
2233
2234         * WebProcess/Launching/mac/WebProcessMain.mm:
2235
2236 2010-06-23  Sam Weinig  <sam@webkit.org>
2237
2238         Reviewed by Anders Carlsson.
2239
2240         Add missing include to WKRetainPtr.
2241
2242         * UIProcess/API/cpp/WKRetainPtr.h:
2243
2244 2010-06-23  Sam Weinig  <sam@webkit.org>
2245
2246         Reviewed by Anders Carlsson.
2247
2248         Fix for https://bugs.webkit.org/show_bug.cgi?id=41073
2249         WebKit2: Flesh out more of the InjectedBundle client API
2250
2251         * WebProcess/InjectedBundle/API/c/WKBundle.h:
2252         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2253         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2254         (WebKit::InjectedBundle::willDestroyPage):
2255         * WebProcess/InjectedBundle/InjectedBundle.h:
2256         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp:
2257         (WebKit::InjectedBundlePageClient::didStartProvisionalLoadForFrame):
2258         (WebKit::InjectedBundlePageClient::didReceiveServerRedirectForProvisionalLoadForFrame):
2259         (WebKit::InjectedBundlePageClient::didFailProvisionalLoadWithErrorForFrame):
2260         (WebKit::InjectedBundlePageClient::didCommitLoadForFrame):
2261         (WebKit::InjectedBundlePageClient::didFinishLoadForFrame):
2262         (WebKit::InjectedBundlePageClient::didFailLoadWithErrorForFrame):
2263         (WebKit::InjectedBundlePageClient::didReceiveTitleForFrame):
2264         * WebProcess/InjectedBundle/InjectedBundlePageClient.h:
2265         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
2266         (WebKit::InjectedBundle::load): Add some error logging on failure to load the bundle.
2267         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2268         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
2269         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
2270         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
2271         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
2272         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
2273         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
2274         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
2275         * WebProcess/WebPage/WebPage.cpp:
2276         (WebKit::WebPage::close):
2277         * mac/WebKit2.exp:
2278
2279 2010-06-22  Anders Carlsson  <andersca@apple.com>
2280
2281         Reviewed by Sam Weinig.
2282
2283         Add a SimpleArgumentCoder class template that works on POD types
2284         https://bugs.webkit.org/show_bug.cgi?id=41023
2285
2286         * Platform/CoreIPC/SimpleArgumentCoder.h: Added.
2287         (CoreIPC::SimpleArgumentCoder::encode):
2288         (CoreIPC::SimpleArgumentCoder::decode):
2289         * Shared/WebCoreTypeArgumentMarshalling.h:
2290         (CoreIPC::):
2291         * WebKit2.xcodeproj/project.pbxproj:
2292
2293 2010-06-22  Anders Carlsson  <andersca@apple.com>
2294
2295         Reviewed by Sam Weinig.
2296
2297         Use the ArgumentCoder class template for decoding
2298         https://bugs.webkit.org/show_bug.cgi?id=41021
2299
2300         * Platform/CoreIPC/ArgumentCoder.h:
2301         (CoreIPC::ArgumentCoder::decode):
2302         * Platform/CoreIPC/ArgumentDecoder.h:
2303         (CoreIPC::ArgumentDecoder::decode):
2304         * Shared/WebCoreTypeArgumentMarshalling.h:
2305         (CoreIPC::):
2306
2307 2010-06-22  Anders Carlsson  <andersca@apple.com>
2308
2309         Reviewed by Dan Bernstein.
2310
2311         Change the encode functions to be specializations of a class template
2312         https://bugs.webkit.org/show_bug.cgi?id=41015
2313
2314         * Platform/CoreIPC/ArgumentCoder.h: Added.
2315         (CoreIPC::ArgumentCoder::encode):
2316         * Platform/CoreIPC/ArgumentEncoder.h:
2317         (CoreIPC::ArgumentEncoder::encode):
2318         * Shared/WebCoreTypeArgumentMarshalling.h:
2319         (CoreIPC::):
2320         * WebKit2.xcodeproj/project.pbxproj:
2321
2322 2010-06-22  Anders Carlsson  <andersca@apple.com>
2323
2324         Reviewed by Sam Weinig.
2325
2326         Implement PluginInfoStore::shouldUsePlugin.
2327
2328         * UIProcess/Plugins/PluginInfoStore.h:
2329         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2330         (WebKit::PluginInfoStore::getPluginInfo):
2331         (WebKit::PluginInfoStore::shouldUsePlugin):
2332         * WebKit2.xcodeproj/project.pbxproj:
2333
2334 2010-06-21  Anders Carlsson  <andersca@apple.com>
2335
2336         Reviewed by Sam Weinig.
2337
2338         Support reading plug-in info from Carbon resources
2339         https://bugs.webkit.org/show_bug.cgi?id=40959
2340
2341         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2342         (WebKit::ResourceMap::ResourceMap):
2343         (WebKit::ResourceMap::~ResourceMap):
2344         (WebKit::ResourceMap::isValid):
2345         (WebKit::getStringListResource):
2346         (WebKit::getPluginInfoFromCarbonResources):
2347         (WebKit::PluginInfoStore::getPluginInfo):
2348
2349 2010-06-21  Anders Carlsson  <andersca@apple.com>
2350
2351         Build fix.
2352
2353         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2354         (WebKit::PluginInfoStore::getPluginInfo):
2355
2356 2010-06-21  Anders Carlsson  <andersca@apple.com>
2357
2358         Reviewed by Sam Weinig.
2359
2360         Have PluginInfoStoreMac actually get plug-in info and populate the plug-in list
2361         https://bugs.webkit.org/show_bug.cgi?id=40957
2362
2363         * UIProcess/Plugins/PluginInfoStore.cpp:
2364         (WebKit::PluginInfoStore::loadPluginsIfNecessary):
2365         (WebKit::PluginInfoStore::loadPluginsInDirectory):
2366         (WebKit::PluginInfoStore::loadPlugin):
2367         (WebKit::PluginInfoStore::getPlugins):
2368         * UIProcess/Plugins/PluginInfoStore.h:
2369         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm: Added.
2370         (WebKit::PluginInfoStore::pluginDirectories):
2371         (WebKit::PluginInfoStore::pluginPathsInDirectory):
2372         (WebKit::getPluginArchitecture):
2373         (WebKit::getPluginInfoFromPropertyLists):
2374         (WebKit::PluginInfoStore::getPluginInfo):
2375         (WebKit::PluginInfoStore::shouldUsePlugin):
2376         * WebKit2.xcodeproj/project.pbxproj:
2377
2378 2010-06-21  Anders Carlsson  <andersca@apple.com>
2379
2380         Reviewed by Sam Weinig.
2381
2382         Add PluginInfoStore class
2383         https://bugs.webkit.org/show_bug.cgi?id=40949
2384
2385         * Shared/WebPreferencesStore.cpp:
2386         (WebKit::WebPreferencesStore::WebPreferencesStore):
2387         * Shared/WebPreferencesStore.h:
2388         (WebKit::WebPreferencesStore::encode):
2389         (WebKit::WebPreferencesStore::decode):
2390         Add plugInsEnabled to the preferences store.
2391
2392         * UIProcess/Plugins: Added.
2393         * UIProcess/Plugins/PluginInfoStore.cpp: Added.
2394         (WebKit::PluginInfoStore::shared):
2395         (WebKit::PluginInfoStore::PluginInfoStore):
2396         (WebKit::PluginInfoStore::refresh):
2397         (WebKit::PluginInfoStore::getPlugins):
2398         * UIProcess/Plugins/PluginInfoStore.h: Added.
2399         * UIProcess/Plugins/mac: Added.
2400         * WebKit2.xcodeproj/project.pbxproj:
2401         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2402         (WebKit::WebPlatformStrategies::refreshPlugins):
2403         (WebKit::WebPlatformStrategies::getPluginInfo):
2404         * WebProcess/WebPage/WebPage.cpp:
2405         (WebKit::WebPage::WebPage):
2406
2407 2010-06-21  Simon Fraser  <simon.fraser@apple.com>
2408
2409         Reviewed by Anders Carlsson.
2410
2411         Rename DrawingAreaProxyUpdateChunk to ChunkedUpdateDrawingArea
2412         https://bugs.webkit.org/show_bug.cgi?id=40948
2413
2414         Rename UIProcess version of DrawingAreaUpdateChunk to ChunkedUpdateDrawingAreaProxy,
2415         and rename the Mac/Win versions of the various DrawingArea files too.
2416         
2417         Also rename the DrawingAreaUpdateChunkType enum to ChunkedUpdateDrawingAreaType.
2418
2419         * UIProcess/API/mac/WKView.mm:
2420         (-[WKView initWithFrame:pageNamespaceRef:]):
2421         * UIProcess/ChunkedUpdateDrawingArea.cpp: Removed.
2422         * UIProcess/ChunkedUpdateDrawingArea.h: Removed.
2423         * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp: Added.
2424         (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
2425         (WebKit::ChunkedUpdateDrawingAreaProxy::~ChunkedUpdateDrawingAreaProxy):
2426         (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
2427         (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
2428         (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
2429         (WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
2430         (WebKit::ChunkedUpdateDrawingAreaProxy::update):
2431         (WebKit::ChunkedUpdateDrawingAreaProxy::didReceiveMessage):
2432         * UIProcess/ChunkedUpdateDrawingAreaProxy.h: Added.
2433         (WebKit::ChunkedUpdateDrawingAreaProxy::encode):
2434         * UIProcess/DrawingAreaProxy.h:
2435         (WebKit::DrawingAreaProxy::):
2436         * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm: Added.
2437         (WebKit::ChunkedUpdateDrawingAreaProxy::page):
2438         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
2439         (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
2440         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
2441         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
2442         * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm: Removed.
2443         * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp: Added.
2444         (WebKit::ChunkedUpdateDrawingAreaProxy::page):
2445         (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
2446         (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
2447         (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
2448         (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
2449         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp: Removed.
2450         * UIProcess/win/WebView.cpp:
2451         (WebKit::WebView::WebView):
2452         * WebKit2.xcodeproj/project.pbxproj:
2453         * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp: Added.
2454         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
2455         (WebKit::ChunkedUpdateDrawingArea::~ChunkedUpdateDrawingArea):
2456         (WebKit::ChunkedUpdateDrawingArea::invalidateWindow):
2457         (WebKit::ChunkedUpdateDrawingArea::invalidateContentsAndWindow):
2458         (WebKit::ChunkedUpdateDrawingArea::invalidateContentsForSlowScroll):
2459         (WebKit::ChunkedUpdateDrawingArea::scroll):
2460         (WebKit::ChunkedUpdateDrawingArea::setNeedsDisplay):
2461         (WebKit::ChunkedUpdateDrawingArea::display):
2462         (WebKit::ChunkedUpdateDrawingArea::scheduleDisplay):
2463         (WebKit::ChunkedUpdateDrawingArea::setSize):
2464         (WebKit::ChunkedUpdateDrawingArea::suspendPainting):
2465         (WebKit::ChunkedUpdateDrawingArea::resumePainting):
2466         (WebKit::ChunkedUpdateDrawingArea::didUpdate):
2467         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
2468         * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Added.
2469         * WebProcess/WebPage/DrawingArea.cpp:
2470         (WebKit::DrawingArea::create):
2471         * WebProcess/WebPage/DrawingArea.h:
2472         (WebKit::DrawingArea::):
2473         * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp: Removed.
2474         * WebProcess/WebPage/DrawingAreaUpdateChunk.h: Removed.
2475         * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp: Added.
2476         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
2477         * WebProcess/WebPage/mac/DrawingAreaUpdateChunkMac.cpp: Removed.
2478         * WebProcess/WebPage/win/ChunkedUpdateDrawingAreaWin.cpp: Added.
2479         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
2480         * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp: Removed.
2481         * win/WebKit2.vcproj:
2482
2483 2010-06-21  Simon Fraser  <simon.fraser@apple.com>
2484
2485         Reviewed by Anders Carlsson.
2486
2487         Rename DrawingAreaProxyUpdateChunk to ChunkedUpdateDrawingArea
2488         https://bugs.webkit.org/show_bug.cgi?id=40948
2489         
2490         Rename DrawingAreaUpdateChunk to ChunkedUpdateDrawingArea.
2491
2492         * UIProcess/API/mac/WKView.mm:
2493         (-[WKView initWithFrame:pageNamespaceRef:]):
2494         * UIProcess/ChunkedUpdateDrawingArea.cpp: Added.
2495         (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
2496         (WebKit::ChunkedUpdateDrawingArea::~ChunkedUpdateDrawingArea):
2497         (WebKit::ChunkedUpdateDrawingArea::paint):
2498         (WebKit::ChunkedUpdateDrawingArea::setSize):
2499         (WebKit::ChunkedUpdateDrawingArea::setPageIsVisible):
2500         (WebKit::ChunkedUpdateDrawingArea::didSetSize):
2501         (WebKit::ChunkedUpdateDrawingArea::update):
2502         (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
2503         * UIProcess/ChunkedUpdateDrawingArea.h: Added.
2504         (WebKit::ChunkedUpdateDrawingArea::encode):
2505         * UIProcess/DrawingAreaProxyUpdateChunk.cpp: Removed.
2506         * UIProcess/DrawingAreaProxyUpdateChunk.h: Removed.
2507         * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm:
2508         (WebKit::ChunkedUpdateDrawingArea::page):
2509         (WebKit::ChunkedUpdateDrawingArea::ensureBackingStore):
2510         (WebKit::ChunkedUpdateDrawingArea::invalidateBackingStore):
2511         (WebKit::ChunkedUpdateDrawingArea::platformPaint):
2512         (WebKit::ChunkedUpdateDrawingArea::drawUpdateChunkIntoBackingStore):
2513         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp:
2514         (WebKit::ChunkedUpdateDrawingArea::page):
2515         (WebKit::ChunkedUpdateDrawingArea::ensureBackingStore):
2516         (WebKit::ChunkedUpdateDrawingArea::invalidateBackingStore):
2517         (WebKit::ChunkedUpdateDrawingArea::platformPaint):
2518         (WebKit::ChunkedUpdateDrawingArea::drawUpdateChunkIntoBackingStore):
2519         * UIProcess/win/WebView.cpp:
2520         (WebKit::WebView::WebView):
2521         * WebKit2.xcodeproj/project.pbxproj:
2522         * win/WebKit2.vcproj:
2523
2524 2010-06-21  Sam Weinig  <sam@webkit.org>
2525
2526         Reviewed by Anders Carlsson.
2527
2528         Patch for https://bugs.webkit.org/show_bug.cgi?id=40940
2529         Add message passing support to the WebKit2 API.
2530
2531         Adds message passing for both InjectedBundle -> WebContext
2532         and WebContext -> InjectedBundle.
2533
2534         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
2535         (WebProcessMessage::):
2536         * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h: Added.
2537         (WebProcessProxyMessage::):
2538         (CoreIPC::):
2539         * UIProcess/API/C/WKContext.cpp:
2540         (WKContextSetInjectedBundleClient):
2541         (WKContextPostMessageToInjectedBundle):
2542         * UIProcess/API/C/WKContext.h:
2543         * UIProcess/WebContext.cpp:
2544         (WebKit::WebContext::initializeInjectedBundleClient):
2545         (WebKit::WebContext::forwardMessageToWebContext):
2546         (WebKit::WebContext::postMessageToInjectedBundle):
2547         * UIProcess/WebContext.h:
2548         * UIProcess/WebContextInjectedBundleClient.cpp: Added.
2549         (WebKit::WebContextInjectedBundleClient::WebContextInjectedBundleClient):
2550         (WebKit::WebContextInjectedBundleClient::initialize):
2551         (WebKit::WebContextInjectedBundleClient::didRecieveMessageFromInjectedBundle):
2552         * UIProcess/WebContextInjectedBundleClient.h: Added.
2553         * UIProcess/WebProcessManager.cpp:
2554         (WebKit::WebProcessManager::processDidClose):
2555         * UIProcess/WebProcessProxy.cpp:
2556         (WebKit::WebProcessProxy::didReceiveInjectedBundleMessage):
2557         (WebKit::WebProcessProxy::didReceiveMessage):
2558         * UIProcess/WebProcessProxy.h:
2559         * WebKit2.xcodeproj/project.pbxproj:
2560         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
2561         (WKBundlePostMessage):
2562         * WebProcess/InjectedBundle/API/c/WKBundle.h:
2563         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2564         (WebKit::InjectedBundle::postMessage):
2565         (WebKit::InjectedBundle::didCreatePage):
2566         (WebKit::InjectedBundle::didRecieveMessage):
2567         * WebProcess/InjectedBundle/InjectedBundle.h:
2568         * WebProcess/WebProcess.cpp:
2569         (WebKit::WebProcess::loadInjectedBundle):
2570         (WebKit::WebProcess::forwardMessageToInjectedBundle):
2571         (WebKit::WebProcess::didReceiveMessage):
2572         * WebProcess/WebProcess.h:
2573         * mac/WebKit2.exp:
2574         * win/WebKit2.vcproj:
2575
2576 2010-06-21  Anders Carlsson  <andersca@apple.com>
2577
2578         Reviewed by Sam Weinig.
2579
2580         Make WebKit2 build with clang++
2581
2582         * Platform/CoreIPC/Connection.h:
2583         * UIProcess/API/mac/WKView.mm:
2584         (-[WKView keyUp:]):
2585         (-[WKView keyDown:]):
2586         * UIProcess/WebHistoryClient.h:
2587         * UIProcess/WebPageProxy.h:
2588         * WebProcess/WebPage/WebPage.h:
2589         * WebProcess/WebProcess.h:
2590
2591 2010-06-21  Satish Sampath  <satish@chromium.org>
2592
2593         Reviewed by Steve Block.
2594
2595         Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
2596
2597         Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
2598         https://bugs.webkit.org/show_bug.cgi?id=40878
2599
2600         * Configurations/FeatureDefines.xcconfig:
2601
2602 2010-06-20  Jessie Berlin  <jberlin@apple.com>
2603
2604         Reviewed by Dan Bernstein.
2605
2606         Add #if USE(PLATFORM_STRATEGIES) where WebPlatformStrategies is being used.
2607
2608         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2609         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2610         * WebProcess/WebProcess.cpp:
2611         (WebKit::WebProcess::WebProcess):
2612         Only initialize the web platform strategies if PLATFORM_STRATEGIES is being used.
2613
2614 2010-06-19  Sam Weinig  <sam@webkit.org>
2615
2616         Reviewed by Anders Carlsson.
2617
2618         Fix for https://bugs.webkit.org/show_bug.cgi?id=40882
2619         Add ability to have a WebProcess per WebContext.
2620
2621         - Move to a one-to-one correspondence of WebContexts to WebProcessProxies.
2622         - Add explicit shared contexts for general use.
2623         - Only non-shared contexts can use injected bundles.
2624
2625         * UIProcess/API/C/WKContext.cpp:
2626         (WKContextCreate):
2627         (WKContextCreateWithInjectedBundlePath):
2628         (WKContextGetSharedProcessContext):
2629         (WKContextGetSharedThreadContext):
2630         * UIProcess/API/C/WKContext.h:
2631         * UIProcess/API/C/WKContextPrivate.h:
2632         Change API for WKContext to no longer take a WKProcessModel type and instead
2633         have explicit Create/Get functions for the different kind of contexts. Added
2634         two shared contexts, one threaded, one process, and made the threaded on private
2635         for now.
2636
2637         * UIProcess/API/mac/WKView.mm:
2638         (-[WKView initWithFrame:]):
2639         Make WKViews that don't have an explicit context use the shared process
2640         context by default.
2641
2642         * UIProcess/Launcher/WebProcessLauncher.h:
2643         * UIProcess/Launcher/mac/WebProcessLauncher.mm:
2644         (WebKit::launchWebProcess):
2645         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
2646         (WebKit::launchWebProcess):
2647         Use a boolean argument to note whether we are using a thread or a process
2648         instead of using the process model enum.
2649
2650         * UIProcess/ProcessModel.h:
2651         (WebKit::):
2652         Convert to using explicit Shared modifier for shared contexts.
2653
2654         * UIProcess/WebContext.cpp:
2655         (WebKit::WebContext::sharedProcessContext):
2656         (WebKit::WebContext::sharedThreadContext):
2657         (WebKit::WebContext::ensureWebProcess):
2658         (WebKit::WebContext::createWebPage):
2659         (WebKit::WebContext::reviveIfNecessary):
2660         * UIProcess/WebContext.h:
2661         (WebKit::WebContext::create):
2662         (WebKit::WebContext::process):
2663         * UIProcess/WebPageNamespace.cpp:
2664         (WebKit::WebPageNamespace::createWebPage):
2665         (WebKit::WebPageNamespace::preferencesDidChange):
2666         (WebKit::WebPageNamespace::getStatistics):
2667         * UIProcess/WebPageNamespace.h:
2668         (WebKit::WebPageNamespace::process):
2669         (WebKit::WebPageNamespace::reviveIfNecessary):
2670         Move WebProcessProxy creation logic up into WebContext.
2671
2672         * UIProcess/WebProcessManager.cpp:
2673         (WebKit::WebProcessManager::getWebProcess):
2674         (WebKit::WebProcessManager::processDidClose):
2675         * UIProcess/WebProcessManager.h:
2676         Keep a map of WebContexts to WebProcessProxies in addition to the two
2677         shared processes.
2678
2679         * UIProcess/WebProcessProxy.cpp:
2680         (WebKit::WebProcessProxy::create):
2681         (WebKit::WebProcessProxy::WebProcessProxy):
2682         (WebKit::WebProcessProxy::connect):
2683         (WebKit::WebProcessProxy::didClose):
2684         * UIProcess/WebProcessProxy.h:
2685         Store a WebContext instead of the process model.
2686
2687         * mac/WebKit2.exp:
2688         Add new functions.
2689
2690 2010-06-18  Anders Carlsson  <andersca@apple.com>
2691
2692         Reviewed by Sam Weinig.
2693
2694         Make WebCoreSystemInterface.h a C++ only header
2695         https://bugs.webkit.org/show_bug.cgi?id=40867
2696
2697         * WebKit2.xcodeproj/project.pbxproj:
2698         * WebProcess/WebCoreSupport/mac/WebSystemInterface.h:
2699         * WebProcess/WebCoreSupport/mac/WebSystemInterface.m: Removed.
2700         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: Copied from WebKit2/WebProcess/WebCoreSupport/mac/WebSystemInterface.m.
2701         * mac/WebKit2.exp:
2702
2703 2010-06-18  Anders Carlsson  <andersca@apple.com>
2704
2705         Reviewed by Sam Weinig.
2706
2707         Add platform strategies for WebKit2.
2708         https://bugs.webkit.org/show_bug.cgi?id=40863
2709
2710         * WebKit2.xcodeproj/project.pbxproj:
2711         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Added.
2712         (WebKit::WebPlatformStrategies::initialize):
2713         (WebKit::WebPlatformStrategies::WebPlatformStrategies):
2714         (WebKit::WebPlatformStrategies::createPluginStrategy):
2715         (WebKit::WebPlatformStrategies::refreshPlugins):
2716         (WebKit::WebPlatformStrategies::getPluginInfo):
2717         * WebProcess/WebCoreSupport/WebPlatformStrategies.h: Added.
2718         * WebProcess/WebProcess.cpp:
2719         (WebKit::WebProcess::WebProcess):
2720
2721 2010-06-18  Sam Weinig  <weinig@apple.com>
2722
2723         Rolling http://trac.webkit.org/changeset/61297 back in.
2724
2725         * WebKit2.xcodeproj/project.pbxproj:
2726         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Added.
2727         (WKBundlePageSetClient):
2728         (WKBundlePageGetMainFrameURL):
2729         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Added.
2730         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Added.
2731         (WebKit::InjectedBundlePageClient::InjectedBundlePageClient):
2732         (WebKit::InjectedBundlePageClient::initialize):
2733         (WebKit::InjectedBundlePageClient::didClearWindowObjectForFrame):
2734         * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Added.
2735         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2736         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2737         * WebProcess/WebPage/WebPage.cpp:
2738         (WebKit::WebPage::initializeInjectedBundleClient):
2739         (WebKit::WebPage::mainFrameURL):
2740         * WebProcess/WebPage/WebPage.h:
2741         (WebKit::WebPage::injectedBundleClient):
2742         * mac/WebKit2.exp:
2743         * win/WebKit2.vcproj:
2744
2745 2010-06-17  Anders Carlsson  <andersca@apple.com>
2746
2747         Reviewed by Sam Weinig.
2748
2749         Fix a race condition during startup where we would never send the InitializeConnection message to the server.
2750
2751         * Platform/CoreIPC/mac/ConnectionMac.cpp:
2752         (CoreIPC::Connection::open):
2753
2754 2010-06-17  Ada Chan  <adachan@apple.com>
2755
2756         Rolling out http://trac.webkit.org/changeset/61297 due to build errors.
2757
2758         * WebKit2.xcodeproj/project.pbxproj:
2759         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Removed.
2760         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Removed.
2761         * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Removed.
2762         * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Removed.
2763         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2764         (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2765         * WebProcess/WebPage/WebPage.cpp:
2766         * WebProcess/WebPage/WebPage.h:
2767         * mac/WebKit2.exp:
2768         * win/WebKit2.vcproj:
2769
2770 2010-06-15  Sam Weinig  <sam@webkit.org>
2771
2772         Reviewed by Anders Carlsson.
2773
2774         Fix for <rdar://problem/8010805>
2775         Assertion failure ("mainThreadPthread") in isMainThread() mousing over cnn.com in Mini Browser
2776
2777         Don't use WebCore::String::operator NSString*() from the UIProcess, since it uses
2778         StringImpl::createCFString() which expects to be called from WebCore's main thread.
2779
2780         * UIProcess/API/mac/PageClientImpl.h:
2781         * UIProcess/API/mac/PageClientImpl.mm:
2782         (WebKit::nsStringFromWebCoreString):
2783         (WebKit::PageClientImpl::toolTipChanged):
2784         * UIProcess/API/mac/WKView.mm:
2785         (-[WKView view:stringForToolTip:point:userData:]):
2786
2787 2010-06-15  Sam Weinig  <sam@webkit.org>
2788
2789         Reviewed by Anders Carlsson.
2790
2791         Fix for https://bugs.webkit.org/show_bug.cgi?id=40630
2792         WebKit2: Add mechanism to inject code into the WebProcess on startup
2793
2794         Add initial InjectedBundle support.
2795
2796         * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
2797         (WebProcessMessage::):
2798         Add new LoadInjectedBundle message kind.
2799
2800         * UIProcess/API/C/WKContext.cpp:
2801         (toWK):
2802         (WKContextCreate):
2803         (WKContextCreateWithInjectedBundlePath):
2804         * UIProcess/API/C/WKContext.h:
2805         Rename WKContextCreateWithProcessModel to WKContextCreate and add
2806         WKContextCreateWithInjectedBundlePath for creating a context with
2807         a bundle.
2808
2809         * UIProcess/WebContext.cpp:
2810         (WebKit::WebContext::WebContext):
2811         * UIProcess/WebContext.h:
2812         (WebKit::WebContext::create):
2813         (WebKit::WebContext::processModel):
2814         (WebKit::WebContext::bundlePath):
2815         * UIProcess/WebPageNamespace.cpp:
2816         (WebKit::WebPageNamespace::ensureWebProcess):
2817         (WebKit::WebPageNamespace::reviveIfNecessary):
2818         * UIProcess/WebProcessManager.cpp:
2819         (WebKit::WebProcessManager::getWebProcess):
2820         * UIProcess/WebProcessManager.h:
2821         * UIProcess/WebProcessProxy.cpp:
2822         (WebKit::WebProcessProxy::create):
2823         (WebKit::WebProcessProxy::WebProcessProxy):
2824         * UIProcess/WebProcessProxy.h:
2825         Thread the bundle path through process creation.
2826
2827         * WebProcess/InjectedBundle: Added.
2828         * WebProcess/InjectedBundle/API: Added.
2829         * WebProcess/InjectedBundle/API/c: Added.
2830         * WebProcess/InjectedBundle/API/c/WKBundle.cpp: Added.
2831         (WKBundleSetClient):
2832         * WebProcess/InjectedBundle/API/c/WKBundle.h: Added.
2833         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h: Added.
2834         (WebKit::):
2835         (toWK):
2836         (toRef):
2837         * WebProcess/InjectedBundle/API/c/WKBundleBase.h: Added.
2838         * WebProcess/InjectedBundle/API/c/WKBundleInitialize.h: Added.
2839         * WebProcess/InjectedBundle/InjectedBundle.cpp: Added.
2840         (WebKit::InjectedBundle::InjectedBundle):
2841         (WebKit::InjectedBundle::~InjectedBundle):
2842         (WebKit::InjectedBundle::initializeClient):
2843         (WebKit::InjectedBundle::didCreatePage):
2844         * WebProcess/InjectedBundle/InjectedBundle.h: Added.
2845         (WebKit::InjectedBundle::create):
2846         Add bundle boilerplate.
2847
2848         * WebProcess/InjectedBundle/mac: Added.
2849         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: Added.
2850         (WebKit::InjectedBundle::load):
2851         Load the InjectedBundle using CFBundle.
2852
2853         * WebProcess/InjectedBundle/win: Added.
2854         * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: Added.
2855         (WebKit::pathGetFileName):
2856         (WebKit::directoryName):
2857         (WebKit::InjectedBundle::load):
2858         Load the InjectedBundle using HMODULE.
2859
2860         * WebProcess/WebPage/WebPage.cpp:
2861         (WebKit::WebPage::WebPage):
2862         Add initial bundle callback for page creation. More to come.
2863
2864         * WebProcess/WebProcess.cpp:
2865         (WebKit::WebProcess::loadInjectedBundle):
2866         (WebKit::WebProcess::didReceiveMessage):
2867         * WebProcess/WebProcess.h:
2868         (WebKit::WebProcess::injectedBundle):
2869         Load the InjectedBundle on LoadInjectedBundle message.
2870
2871         * WebKit2.xcodeproj/project.pbxproj:
2872         * mac/WebKit2.exp:
2873         * win/WebKit2.vcproj:
2874         * win/WebKit2Generated.make:
2875         Add the new files.
2876
2877 2010-06-15  Darin Adler  <darin@apple.com>
2878
2879         Reviewed by Adam Barth.
2880
2881         Move functions out of Frame class that were marked "move to Chrome"
2882         https://bugs.webkit.org/show_bug.cgi?id=39636
2883
2884         * WebProcess/WebPage/WebPage.cpp:
2885         (WebKit::WebPage::tryClose): Call shouldClose on FrameLoader instead of
2886         going through Frame.
2887
2888 2010-06-14  Steve Falkenburg  <sfalken@apple.com>
2889
2890         Windows build fix.
2891         Reorder build event to fix cygwin path issue.
2892
2893         * win/WebKit2Generated.vcproj:
2894
2895 2010-06-14  Steve Falkenburg  <sfalken@apple.com>
2896
2897         Windows build fix.
2898         Add build failure stopping code.
2899
2900         * win/WebKit2WebProcess.vcproj:
2901
2902 2010-06-14  Steve Falkenburg  <sfalken@apple.com>
2903
2904         Windows build fix.
2905         Add build failure stopping code.
2906
2907         * win/WebKit2Generated.vcproj:
2908
2909 2010-06-14  Ada Chan  <adachan@apple.com>
2910
2911         Rubber-stamped by Steve Falkenburg.
2912
2913         - Fix the release configuration to use release.vsprops.
2914         - Add Debug_Internal and Debug_All configurations to the WebKit2WebProcess project.
2915         - Fix launchWebProcess() to get the right path to the WebKit2WebProcess executable.
2916
2917         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
2918         (WebKit::launchWebProcess):
2919         * win/WebKit2WebProcess.vcproj:
2920
2921 2010-06-12  Ada Chan  <adachan@apple.com>
2922
2923         Unreviewed fix for a linking error with WebKit2LocalizableStringsBundle for Windows release build.
2924
2925         * WebProcess/win/WebLocalizableStrings.cpp:
2926         (findCachedString):
2927
2928 2010-06-11  Sam Weinig  <sam@webkit.org>
2929
2930         Reviewed by Mark Rowe.
2931
2932         Use -Os for optimized builds instead of -02. -02 wasn't giving the 
2933         right trade off at this time.
2934
2935         * Configurations/Base.xcconfig:
2936
2937 2010-06-11  Sam Weinig  <sam@webkit.org>
2938
2939         Reviewed by Anders Carlsson.
2940
2941         Move WKRetain and WKRelease overloaded functions out of WKRetainPtr
2942         and into the files of the type they overload (eg, WKRetain(WKFrameRef 
2943         moves to WKFrame.h)).
2944
2945         * UIProcess/API/C/WKBase.h:
2946         * UIProcess/API/C/WKContext.h:
2947         * UIProcess/API/C/WKFrame.h:
2948         * UIProcess/API/C/WKFramePolicyListener.h:
2949         * UIProcess/API/C/WKNavigationData.h:
2950         * UIProcess/API/C/WKPage.h:
2951         * UIProcess/API/C/WKPageNamespace.h:
2952         * UIProcess/API/C/WKPreferences.h:
2953         * UIProcess/API/C/WKString.h:
2954         * UIProcess/API/C/WKURL.h:
2955         * UIProcess/API/cpp/WKRetainPtr.h:
2956         * UIProcess/API/win/WKView.h:
2957
2958 2010-06-10  John Sullivan  <sullivan@apple.com>
2959
2960         Reviewed by Dan Bernstein.
2961
2962         * mac/WebKit2.exp:
2963         Added another symbol needed by Mac clients.
2964
2965 2010-06-09  Ilya Tikhonovsky  <loislo@chromium.org>
2966
2967         Unreviewed build fix.
2968
2969         * WebProcess/WebCoreSupport/WebInspectorClient.h:
2970
2971 2010-06-09  Ilya Tikhonovsky  <loislo@chromium.org>
2972
2973         Unreviewed build fix.
2974
2975         WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
2976         data from inspected page to WebInspector as JSON string via http. The native
2977         serialization to JSON string is supported by InspectorValue's classes. This patch
2978         has the implementation of sendMessageToFrontend function. WebKit version of it still
2979         uses ScriptFunctionCall and will be switched to another transport a little bit later.
2980         https://bugs.webkit.org/show_bug.cgi?id=40134
2981
2982         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
2983         (WebKit::WebInspectorClient::sendMessageToFrontend):
2984         * WebProcess/WebCoreSupport/WebInspectorClient.h:
2985
2986 2010-06-08  Anders Carlsson  <andersca@apple.com>
2987
2988         Reviewed by John Sullivan.
2989
2990         <rdar://problem/8071268> WebKit2 URLs are displayed as 1-character strings in log statements
2991
2992         Create a CFString from our WebCore string and then create the CFURL from the CFString.
2993
2994         * UIProcess/API/C/cf/WKURLCF.cpp:
2995         (WKURLCopyCFURL):
2996
2997 2010-06-08  John Sullivan  <sullivan@apple.com>
2998
2999         Rubber-stamped by Anders Carlsson.
3000
3001         * mac/WebKit2.exp:
3002         Added _WKPageGetEstimatedProgress and _WKFrameGetPage
3003
3004 2010-06-08  Anders Carlsson  <andersca@apple.com>
3005
3006         Reviewed by John Sullivan.
3007
3008         Would like a way to query WKPageRef for the current progress value
3009         https://bugs.webkit.org/show_bug.cgi?id=40310
3010         <rdar://problem/8071299>
3011
3012         Add WKPageGetEstimatedProgress. Remove the progress parameter from the didChangeProgress
3013         loader client callback function.
3014
3015         * UIProcess/API/C/WKPage.cpp:
3016         (WKPageGetEstimatedProgress):
3017         * UIProcess/API/C/WKPage.h:
3018         * UIProcess/WebLoaderClient.cpp:
3019         (WebKit::WebLoaderClient::didChangeProgress):
3020         * UIProcess/WebLoaderClient.h:
3021         * UIProcess/WebPageProxy.cpp:
3022         (WebKit::WebPageProxy::WebPageProxy):
3023         (WebKit::WebPageProxy::close):
3024         (WebKit::WebPageProxy::didStartProgress):
3025         (WebKit::WebPageProxy::didChangeProgress):
3026         (WebKit::WebPageProxy::didFinishProgress):
3027         (WebKit::WebPageProxy::processDidExit):
3028         * UIProcess/WebPageProxy.h:
3029         (WebKit::WebPageProxy::estimatedProgress):
3030
3031 2010-06-08  Anders Carlsson  <andersca@apple.com>
3032
3033         Reviewed by John Sullivan.
3034
3035         Would like a way to tell which WKPageRef a WKFrameRef is part of
3036         https://bugs.webkit.org/show_bug.cgi?id=40308
3037         <rdar://problem/8071251>
3038
3039         Add and implement WKFrameGetPage.
3040
3041         * UIProcess/API/C/WKFrame.cpp:
3042         (WKFrameGetPage):
3043         * UIProcess/API/C/WKFrame.h:
3044         * UIProcess/WebFrameProxy.h:
3045         (WebKit::WebFrameProxy::page):
3046
3047 2010-06-08  John Sullivan  <sullivan@apple.com>
3048
3049         Rubber-stamped by Mark Rowe.
3050
3051         * mac/WebKit2.exp:
3052         Added a few more symbols needed by Mac clients.
3053
3054 2010-06-08  MORITA Hajime  <morrita@google.com>
3055
3056         Unreviewed. An attempt to fix test break.
3057
3058         * Configurations/FeatureDefines.xcconfig:
3059
3060 2010-06-06  MORITA Hajime  <morrita@google.com>
3061
3062         Unreviewd, follow up to r60820
3063
3064         https://bugs.webkit.org/show_bug.cgi?id=40219
3065         [Mac] ENABLE_METER_TAG should be enabled
3066         
3067         * Configurations/FeatureDefines.xcconfig:
3068
3069 2010-06-05  Mark Rowe  <mrowe@apple.com>
3070
3071         Rubber-stamped by Dan Bernstein.
3072
3073         <rdar://problem/8063622> Failure to launch WebProcess.app when framework is outside of the build directory
3074
3075         * Configurations/WebProcess.xcconfig:
3076
3077 2010-06-04  John Sullivan  <sullivan@apple.com>
3078
3079         Rubber-stamped by Ada Chan.
3080
3081         Added a couple of symbols needed to start using WKFrameRefs in Mac clients.
3082
3083         * mac/WebKit2.exp:
3084         Added _WKFrameRelease and _WKFrameRetain.
3085
3086 2010-06-04  Ada Chan  <adachan@apple.com>
3087
3088         Reviewed by Anders Carlsson.
3089
3090         http://bugs.webkit.org/show_bug.cgi?id=40186
3091         
3092         Need to close WebPageProxy when the WebView is destroyed.
3093         Also, WebPageProxy shouldn't hold an OwnPtr to the PageClient, which is the WebView on Windows.
3094
3095         * UIProcess/WebPageProxy.cpp:
3096         (WebKit::WebPageProxy::WebPageProxy):
3097         (WebKit::WebPageProxy::setPageClient):
3098         * UIProcess/WebPageProxy.h:
3099         * UIProcess/win/WebView.cpp:
3100         (WebKit::WebView::close):
3101
3102 2010-06-03  Ada Chan  <adachan@apple.com>
3103
3104         Reviewed by Adam Roben.
3105
3106         https://bugs.webkit.org/show_bug.cgi?id=40152
3107         
3108         Need to remove the WebView from WindowMessageBroadcaster's listeners list when the WebView is destroyed.
3109
3110         * UIProcess/API/win/WKView.cpp:
3111         (WKViewSetHostWindow): Expose API to change the host window of a WKView.
3112         (WKViewWindowAncestryDidChange): Expose API to allow clients to notify WebKit when a WKView's window ancestry has changed.
3113         * UIProcess/API/win/WKView.h:
3114         * UIProcess/win/WebView.cpp:
3115         (WebKit::WebView::wndProc): Set the WebView's host window to 0 when it's destroyed.  setHostWindow() will call 
3116         windowAncestryDidChange(), which will remove this WebView from the WindowMessageBroadcaster's listeners list.
3117         (WebKit::WebView::WebView): Initialize m_isBeingDestroyed.
3118         (WebKit::WebView::setHostWindow): Update the window's parent window and call windowAncestryDidChange().
3119         (WebKit::WebView::close): Set the host window to 0.
3120         * UIProcess/win/WebView.h:
3121
3122 2010-06-04  Tony Gentilcore  <tonyg@chromium.org>
3123
3124         Reviewed by Adam Barth.
3125
3126         Utilize new takeFirst() method where appropriate.
3127         https://bugs.webkit.org/show_bug.cgi?id=40089
3128
3129         * Platform/CoreIPC/ArgumentDecoder.cpp:
3130         (CoreIPC::ArgumentDecoder::removeAttachment):
3131
3132 2010-06-03  Ada Chan  <adachan@apple.com>
3133
3134         Reviewed by Anders Carlsson.
3135
3136         Add UIProcess\API\cpp to the list of additional include directories.
3137         Allow WKViewRef to work with WKRetainPtr on Windows.
3138
3139         * UIProcess/API/cpp/WKRetainPtr.h:
3140         * win/WebKit2.vcproj:
3141
3142 2010-06-01  Alice Liu  <alice.liu@apple.com>
3143
3144         Build fix. Not reviewed
3145
3146         * win/WebKit2Generated.make: Added WKRetainPtr.h
3147
3148 2010-06-01  John Sullivan  <sullivan@apple.com>
3149
3150         Rubber-stamped by Anders Carlsson.
3151
3152         Added _WKRetainPtr to .exp file, and added .exp file to Xcode project.
3153
3154         * WebKit2.xcodeproj/project.pbxproj:
3155         Added mac/WebKit2.exp.
3156         
3157         * mac/WebKit2.exp:
3158         Added _WKRetainPtr.
3159
3160 2010-06-01  John Sullivan  <sullivan@apple.com>
3161
3162         Rubber-stamped by Anders Carlsson.
3163
3164         Fixed typo/wordo that prevented a certain flavor of constructor from compiling.
3165
3166         * UIProcess/API/cpp/WKRetainPtr.h:
3167         (WebKit::WKRetainPtr::WKRetainPtr):
3168         Changed the mysterious "retainWKPtr" to "WKRetain".
3169
3170 2010-05-28  John Sullivan  <sullivan@apple.com>
3171
3172         Rubber-stamped by Dan Bernstein.
3173
3174         Add a using declaration for AdoptWK to match the one just added for WKRetainPtr.
3175
3176         * UIProcess/API/cpp/WKRetainPtr.h:
3177
3178 2010-05-28  Sam Weinig  <sam@webkit.org>
3179
3180         Reviewed by Anders Carlsson.
3181
3182         Add a using declaration for WKRetainPtr matching what we do for our
3183         other smart pointers and fix the destructor.
3184
3185         * UIProcess/API/cpp/WKRetainPtr.h:
3186         (WebKit::WKRetainPtr::~WKRetainPtr):
3187
3188 2010-05-25  Ada Chan  <adachan@apple.com>
3189
3190         Reviewed by Darin Adler.
3191
3192         https://bugs.webkit.org/show_bug.cgi?id=39686
3193
3194         Fix the ProjectGUID of the WebKit2 project so it doesn't conflict with the one in WebKit.        
3195
3196         * WebKit2.sln:
3197         * win/WebKit2.vcproj:
3198
3199 2010-05-24  Ada Chan  <adachan@apple.com>
3200
3201         Rubber-stamped by Mark Rowe.
3202         
3203         Build fix for 32bit systems.
3204
3205         * mac/WebKit2.exp:
3206
3207 2010-05-21  Mark Rowe  <mrowe@apple.com>
3208
3209         Reviewed by Oliver Hunt.
3210
3211         Teach WebKit2 to build in the Production configuration.
3212
3213         * Configurations/Base.xcconfig: Restrict WebKit2 to Intel, and disable the order file.
3214         * Configurations/BaseTarget.xcconfig: Fix the path to the umbrella framework directory.
3215         This path is used to locate WebCore.framework, so it needs to be relative to WebKit.framework
3216         rather than WebKit2.framework.
3217         * Configurations/WebKit2.xcconfig: Update the install path.  Add an exports file.
3218         * Configurations/WebProcess.xcconfig: Update the install path.
3219         * WebKit2.xcodeproj/project.pbxproj: Add a Production configuration.
3220         * mac/WebKit2.exp: Added.
3221
3222 2010-05-21  Steve Block  <steveblock@google.com>
3223
3224         Unreviewed build fix for WebKit2
3225
3226         Pass 0 to Page constructor for DeviceOrientationClient.
3227         See http://trac.webkit.org/changeset/59935
3228
3229         * WebProcess/WebPage/WebPage.cpp:
3230         (WebKit::WebPage::WebPage):
3231
3232 2010-05-11  Mark Rowe  <mrowe@apple.com>
3233
3234         Fix the world.
3235
3236         In r59162 a change was made to WebCore's FeatureDefines.xcconfig that enabled FILE_READER and FILE_WRITER.
3237         The author and reviewer of that patch ignored the carefully-worded warning at the top of that file asking
3238         that changes to the file be kept in sync across JavaScriptCore, WebCore and WebKit, as well as being kept
3239         in sync with build-webkit.  This led to WebCore and WebKit having different views of Document's vtable
3240         and results in crashes in Safari shortly after launch when virtual function calls resulted in the wrong
3241         function in WebCore being called.
3242
3243         We fix this by bringing the FeatureDefines.xcconfig files in to sync.  Based on the ChangeLog message and
3244         other changes in r59162 it appears that enabling FILE_WRITER was unintentional so that particular change
3245         has been reverted.
3246
3247         * Configurations/FeatureDefines.xcconfig:
3248
3249 2010-05-04  Anders Carlsson  <andersca@apple.com>
3250
3251         Reviewed by Dan Bernstein.
3252
3253         [WebKit2] The web process doesn't need to paint when the web view is hidden.
3254         https://bugs.webkit.org/show_bug.cgi?id=38549
3255
3256         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
3257         (DrawingAreaMessage::):
3258         Add SuspendPainting/ResumePainting messages.
3259         
3260         * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
3261         (WebKit::DrawingAreaProxyUpdateChunk::setPageIsVisible):
3262         Suspend and resume painting accordingly.
3263         
3264         * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp:
3265         (WebKit::DrawingAreaUpdateChunk::DrawingAreaUpdateChunk):
3266         Initialize m_shouldPaint to true.
3267         
3268         (WebKit::DrawingAreaUpdateChunk::display):
3269         Return if m_shouldPaint is false.
3270         
3271         (WebKit::DrawingAreaUpdateChunk::scheduleDisplay):
3272         Ditto.
3273         
3274         (WebKit::DrawingAreaUpdateChunk::setSize):
3275         Assert that we should paint here.
3276
3277         (WebKit::DrawingAreaUpdateChunk::suspendPainting):
3278         Set m_shouldPaint to false and stop the timer.
3279         
3280         (WebKit::DrawingAreaUpdateChunk::resumePainting):
3281         Set m_shouldPaint to true and paint if needed.
3282
3283         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
3284         handle SuspendPainting/ResumePainting messages.
3285
3286         * WebProcess/WebPage/DrawingAreaUpdateChunk.h:
3287
3288 2010-05-03  Anders Carlsson  <andersca@apple.com>
3289
3290         Reviewed by Jon Honeycutt.
3291
3292         [WebKit2] WKView should respond to WM_SHOWWINDOW messages
3293         https://bugs.webkit.org/show_bug.cgi?id=38496
3294
3295         * UIProcess/win/WebView.cpp:
3296         (WebKit::WebView::wndProc):
3297         Add case for WM_SHOWWINDOW.
3298
3299         (WebKit::WebView::onShowWindowEvent):
3300         Update the page visibility accordingly.
3301
3302         * UIProcess/win/WebView.h:
3303
3304 2010-05-03  Anders Carlsson  <andersca@apple.com>
3305
3306         Reviewed by Dan Bernstein.
3307
3308         Get rid of PageClient::isPageVisible and pass visibility directly in setPageIsVisible
3309         https://bugs.webkit.org/show_bug.cgi?id=38493
3310
3311         * UIProcess/API/mac/PageClientImpl.h:
3312         * UIProcess/API/mac/PageClientImpl.mm:
3313         Remove isPageVisible.
3314         
3315         * UIProcess/API/mac/WKView.mm:
3316         (isViewVisible):
3317         New function (moved here from PageClientImpl).
3318         
3319         (-[WKView _updateVisibility]):
3320         Call didChangeVisibility.
3321         
3322         (-[WKView viewDidMoveToWindow]):
3323         (-[WKView viewDidHide]):
3324         (-[WKView viewDidUnhide]):
3325         Call _updateVisibility.
3326         
3327         * UIProcess/DrawingAreaProxy.h:
3328         Rename didChangeVisibility to setPageIsVisible and add an isVisible parameter.
3329         
3330         * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
3331         (WebKit::DrawingAreaProxyUpdateChunk::setPageIsVisible):
3332         Don't call WebPageProxy::isVisible.
3333
3334         * UIProcess/DrawingAreaProxyUpdateChunk.h:
3335         
3336         * UIProcess/PageClient.h:
3337         Remove isPageVisible.
3338
3339         * UIProcess/WebPageProxy.cpp:
3340         * UIProcess/WebPageProxy.h:
3341         Remove isVisible.
3342
3343 2010-05-03  Anders Carlsson  <andersca@apple.com>
3344
3345         Reviewed by Adam Roben.
3346
3347         Implement PageClient::isPageVisible on Windows.
3348         https://bugs.webkit.org/show_bug.cgi?id=38483
3349
3350         * UIProcess/PageClient.h:
3351         * UIProcess/win/WebView.cpp:
3352         (WebKit::WebView::isPageVisible):
3353         * UIProcess/win/WebView.h:
3354
3355 2010-05-03  Anders Carlsson  <andersca@apple.com>
3356
3357         Fix Windows build.
3358
3359         * Platform/CoreIPC/win/ConnectionWin.cpp:
3360         (CoreIPC::Connection::sendOutgoingMessage):
3361         * Shared/win/UpdateChunk.cpp:
3362         (WebKit::UpdateChunk::UpdateChunk):
3363         (WebKit::UpdateChunk::encode):
3364         (WebKit::UpdateChunk::decode):
3365         * Shared/win/UpdateChunk.h:
3366         (WebKit::UpdateChunk::rect):
3367         * UIProcess/DrawingAreaProxy.h:
3368         * UIProcess/DrawingAreaProxyUpdateChunk.h:
3369         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp:
3370         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
3371         * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp:
3372         (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
3373         * WebProcess/win/WebProcessMain.cpp:
3374
3375 2010-04-30  Anders Carlsson  <andersca@apple.com>
3376
3377         Reviewed by Sam Weinig.
3378
3379         https://bugs.webkit.org/show_bug.cgi?id=38415
3380         Have the WKView notify the DrawingAreaProxy when its visibility changes.
3381
3382         * UIProcess/API/mac/PageClientImpl.h:
3383         * UIProcess/API/mac/PageClientImpl.mm:
3384         (WebKit::PageClientImpl::isPageVisible):
3385         * UIProcess/API/mac/WKView.mm:
3386         (-[WKView viewDidMoveToWindow]):
3387         (-[WKView viewDidHide]):
3388         (-[WKView viewDidUnhide]):
3389         * UIProcess/DrawingAreaProxy.h:
3390         * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
3391         (WebKit::DrawingAreaProxyUpdateChunk::DrawingAreaProxyUpdateChunk):
3392         (WebKit::DrawingAreaProxyUpdateChunk::didChangeVisibility):
3393         * UIProcess/DrawingAreaProxyUpdateChunk.h:
3394         * UIProcess/PageClient.h:
3395         * UIProcess/WebPageProxy.cpp:
3396         (WebKit::WebPageProxy::isVisible):
3397         * UIProcess/WebPageProxy.h:
3398
3399 2010-05-03  Jens Alfke  <snej@chromium.org>
3400
3401         Reviewed by Darin Fisher.
3402
3403         [chromium] Add "willSendSubmitEvent" hook to WebFrameClient and FrameLoaderClient
3404         https://bugs.webkit.org/show_bug.cgi?id=38397
3405
3406         No tests (functionality is exposed only through native WebKit API.)
3407
3408         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3409         (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
3410
3411 2010-05-01  Sam Weinig  <sam@webkit.org>
3412
3413         Reviewed by Anders Carlsson.
3414
3415         Fix for https://bugs.webkit.org/show_bug.cgi?id=38471
3416         Add generic callback mechanism
3417
3418         Added GenericCallback class replacing RenderTreeExternalRepresentationCallback
3419         and ScriptReturnValueCallback.
3420         
3421         Also,
3422         - Standardize C API callbacks to take the context last.
3423         - Standardize C API callbacks to not have the _f suffix (now the block
3424           variants have a _b suffix).
3425         - Re-write toWK and toRef methods as a set of template functions using
3426           the generic API->implementation mapping information.
3427
3428         * UIProcess/API/C/WKAPICast.h:
3429         * UIProcess/API/C/WKPage.cpp:
3430         (WKPageRunJavaScriptInMainFrame):
3431         (callRunJavaScriptBlockAndRelease):
3432         (disposeRunJavaScriptBlock):
3433         (WKPageRunJavaScriptInMainFrame_b):
3434         (WKPageRenderTreeExternalRepresentation):
3435         (WKPageRenderTreeExternalRepresentation_b):
3436         * UIProcess/API/C/WKPage.h:
3437         * UIProcess/API/C/WKPagePrivate.h:
3438         * UIProcess/GenericCallback.h: Added.
3439         (WebKit::GenericCallback::create):
3440         (WebKit::GenericCallback::~GenericCallback):
3441         (WebKit::GenericCallback::performCallbackWithReturnValue):
3442         (WebKit::GenericCallback::invalidate):
3443         (WebKit::GenericCallback::callbackID):
3444         (WebKit::GenericCallback::generateCallbackID):
3445         (WebKit::GenericCallback::GenericCallback):
3446         * UIProcess/RenderTreeExternalRepresentationCallback.cpp: Removed.
3447         * UIProcess/RenderTreeExternalRepresentationCallback.h: Removed.
3448         * UIProcess/ScriptReturnValueCallback.cpp: Removed.
3449         * UIProcess/ScriptReturnValueCallback.h: Removed.
3450         * UIProcess/WebPageProxy.cpp:
3451         (WebKit::WebPageProxy::didRunJavaScriptInMainFrame):
3452         (WebKit::WebPageProxy::didGetRenderTreeExternalRepresentation):
3453         * UIProcess/WebPageProxy.h:
3454         * WebKit2.xcodeproj/project.pbxproj:
3455         * win/WebKit2.vcproj:
3456
3457 2010-04-30  Sam Weinig  <sam@webkit.org>
3458
3459         Fix the build.
3460
3461         * Platform/CoreIPC/mac/ConnectionMac.cpp: Add missing #include.
3462
3463 2010-04-30  Sam Weinig  <sam@webkit.org>
3464
3465         Reviewed by Anders Carlsson.
3466
3467         https://bugs.webkit.org/show_bug.cgi?id=38413
3468         Add callback based API to get the textual representation of the RenderTree.
3469
3470         - Also ensures that any pending callbacks are invalidated if the WebPage
3471           closes (expectedly or unexpectedly).
3472         - A follow up patch will unify the callback mechanism with a common base
3473           class.
3474
3475         * Shared/CoreIPCSupport/WebPageMessageKinds.h:
3476         (WebPageMessage::):
3477         * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
3478         (WebPageProxyMessage::):
3479         * UIProcess/API/C/WKPage.cpp:
3480         (WKPageRunJavaScriptInMainFrame_f):
3481         (WKPageRenderTreeExternalRepresentation_f):
3482         (callRenderTreeExternalRepresentationBlockAndDispose):
3483         (disposeRenderTreeExternalRepresentationBlock):
3484         (WKPageRenderTreeExternalRepresentation):
3485         * UIProcess/API/C/WKPagePrivate.h: Added.
3486         * UIProcess/RenderTreeExternalRepresentationCallback.cpp: Added.
3487         (WebKit::generateCallbackID):
3488         (WebKit::RenderTreeExternalRepresentationCallback::RenderTreeExternalRepresentationCallback):
3489         (WebKit::RenderTreeExternalRepresentationCallback::~RenderTreeExternalRepresentationCallback):
3490         (WebKit::RenderTreeExternalRepresentationCallback::performCallbackWithReturnValue):
3491         (WebKit::RenderTreeExternalRepresentationCallback::invalidate):
3492         * UIProcess/RenderTreeExternalRepresentationCallback.h: Added.
3493         (WebKit::RenderTreeExternalRepresentationCallback::create):
3494         (WebKit::RenderTreeExternalRepresentationCallback::callbackID):
3495         * UIProcess/ScriptReturnValueCallback.cpp:
3496         (WebKit::ScriptReturnValueCallback::~ScriptReturnValueCallback):
3497         (WebKit::ScriptReturnValueCallback::performCallbackWithReturnValue):
3498         (WebKit::ScriptReturnValueCallback::invalidate):
3499         * UIProcess/ScriptReturnValueCallback.h:
3500         * UIProcess/WebPageProxy.cpp:
3501         (WebKit::WebPageProxy::close):
3502         (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
3503         (WebKit::WebPageProxy::didReceiveMessage):
3504         (WebKit::WebPageProxy::didRunJavaScriptInMainFrame):
3505         (WebKit::WebPageProxy::didGetRenderTreeExternalRepresentation):
3506         (WebKit::WebPageProxy::processDidExit):
3507         * UIProcess/WebPageProxy.h:
3508         * WebKit2.xcodeproj/project.pbxproj:
3509         * WebProcess/WebPage/WebPage.cpp:
3510         (WebKit::WebPage::getRenderTreeExternalRepresentation):
3511         (WebKit::WebPage::didReceiveMessage):
3512         * WebProcess/WebPage/WebPage.h:
3513         * win/WebKit2.vcproj:
3514
3515 2010-04-30  Sam Weinig  <sam@webkit.org>
3516
3517         Reviewed by Anders Carlsson.
3518
3519         Fix for https://bugs.webkit.org/show_bug.cgi?id=38406
3520         Add support for sending messages with a size greater than 4096 bytes
3521
3522         Adds support by putting message bodies that are larger than 4096 bytes
3523         in OOL memory.
3524
3525         * Platform/CoreIPC/Connection.cpp:
3526         (CoreIPC::Connection::sendMessage):
3527         (CoreIPC::Connection::waitForMessage):
3528         (CoreIPC::Connection::sendSyncMessage):
3529         (CoreIPC::Connection::dispatchMessages):
3530         * Platform/CoreIPC/Connection.h:
3531         (CoreIPC::Connection::OutgoingMessage::OutgoingMessage):
3532         (CoreIPC::Connection::OutgoingMessage::messageID):
3533         (CoreIPC::Connection::send):
3534         (CoreIPC::Connection::sendSync):
3535         * Platform/CoreIPC/MessageID.h:
3536         (CoreIPC::MessageID::):
3537         (CoreIPC::MessageID::MessageID):
3538         (CoreIPC::MessageID::equalIgnoringFlags):
3539         (CoreIPC::MessageID::copyAddingFlags):
3540         (CoreIPC::MessageID::fromInt):
3541         (CoreIPC::MessageID::toInt):
3542         (CoreIPC::MessageID::isMessageBodyOOL):
3543         * Platform/CoreIPC/mac/ConnectionMac.cpp:
3544         (CoreIPC::Connection::sendOutgoingMessage):
3545         (CoreIPC::createArgumentDecoder):
3546
3547 2010-04-28  Mike Thole  <mthole@apple.com>
3548
3549         Build fix, not reviewed.
3550
3551         Fix WebKit2 build by stubbing out WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace().
3552
3553         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3554         (WebKit::WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
3555         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3556
3557 2010-04-28  Sam Weinig  <sam@webkit.org>
3558
3559         Reviewed by Mark Rowe.
3560
3561         Only build on SnowLeopard and later when using the Makefile.
3562
3563         * Makefile:
3564
3565 2010-04-27  Sam Weinig  <sam@webkit.org>
3566
3567         Reviewed by Maciej Stachowiak.
3568
3569         Fix for https://bugs.webkit.org/show_bug.cgi?id=38238
3570         Allow both WebKit and WebKit2 to link to the same WebCore.framework
3571
3572         * Configurations/WebKit2.xcconfig: Remove the OTHER_LDFLAGS. We don't
3573         need to set WebCore as a sub_umbrella of WebKit2, since we are not
3574         reexporting any of its symbols.
3575
3576 2010-04-27  Sam Weinig  <sam@webkit.org>
3577
3578         Reviewed by Geoffrey Garen.
3579
3580         Add comment about not using StringImpl::createCFString in WKStringCopyCFString.
3581
3582         * UIProcess/API/C/cf/WKStringCF.cpp:
3583         (WKStringCopyCFString):
3584
3585 2010-04-27  Sam Weinig  <sam@webkit.org>
3586
3587         Reviewed by Geoffrey Garen.
3588
3589         Remove call to StringImpl::createCFString and instead use CFStringCreateWithCharacters
3590         directly. StringImpl::createCFString only an optimization when called
3591         from the thread that WebCore is running on, which is never the case for
3592         WKStringCopyCFString. We should revisit this later, perhaps adding a
3593         threadspecific allocator. We also now honor the passed in allocator.
3594
3595         * UIProcess/API/C/cf/WKStringCF.cpp:
3596         (WKStringCopyCFString):
3597
3598 2010-04-25  Sam Weinig  <sam@webkit.org>
3599
3600         Reviewed by Maciej Stachowiak.
3601
3602         Fix for https://bugs.webkit.org/show_bug.cgi?id=38097
3603         Disentangle initializing the main thread from initializing threading
3604
3605         * UIProcess/Launcher/mac/WebProcessLauncher.mm:
3606         (WebKit::webThreadBody): Add call to initializeMainThread.
3607         * UIProcess/Launcher/win/WebProcessLauncher.cpp:
3608         (WebKit::webThreadBody): Ditto.
3609         * WebProcess/Launching/mac/WebProcessMain.mm:
3610         (main): Ditto.
3611         * WebProcess/win/WebProcessMain.cpp:
3612         (WebKit::WebProcessMain): Ditto.
3613
3614 2010-04-23  Sam Weinig  <sam@webkit.org>
3615
3616         Reviewed by Anders Carlsson.
3617
3618         https://bugs.webkit.org/show_bug.cgi?id=38065
3619         Merge mac and win DrawingAreaProxyUpdateChunk implementations.
3620
3621         * UIProcess/API/mac/WKView.mm:
3622         (-[WKView drawRect:]):
3623         * UIProcess/DrawingAreaProxy.cpp: Copied from UIProcess/mac/DrawingAreaProxy.mm.
3624         * UIProcess/DrawingAreaProxy.h: Copied from UIProcess/mac/DrawingAreaProxy.h.
3625         * UIProcess/DrawingAreaProxyUpdateChunk.cpp: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.mm.
3626         (WebKit::DrawingAreaProxyUpdateChunk::DrawingAreaProxyUpdateChunk):
3627         (WebKit::DrawingAreaProxyUpdateChunk::paint):
3628         (WebKit::DrawingAreaProxyUpdateChunk::setSize):
3629         (WebKit::DrawingAreaProxyUpdateChunk::didSetSize):
3630         (WebKit::DrawingAreaProxyUpdateChunk::update):
3631         (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
3632         * UIProcess/DrawingAreaProxyUpdateChunk.h: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.h.
3633         * UIProcess/mac/DrawingAreaProxy.h: Removed.
3634         * UIProcess/mac/DrawingAreaProxy.mm: Removed.
3635         * UIProcess/mac/DrawingAreaProxyUpdateChunk.h: Removed.
3636         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm: Removed.
3637         * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.mm.
3638         (WebKit::DrawingAreaProxyUpdateChunk::page):
3639         (WebKit::DrawingAreaProxyUpdateChunk::invalidateBackingStore):
3640         (WebKit::DrawingAreaProxyUpdateChunk::platformPaint):
3641         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
3642         * UIProcess/win/DrawingAreaProxy.cpp: Removed.
3643         * UIProcess/win/DrawingAreaProxy.h: Removed.
3644         * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp: Copied from UIProcess/win/DrawingAreaProxy.cpp.
3645         (WebKit::DrawingAreaProxyUpdateChunk::page):
3646         (WebKit::DrawingAreaProxyUpdateChunk::ensureBackingStore):
3647         (WebKit::DrawingAreaProxyUpdateChunk::invalidateBackingStore):
3648         (WebKit::DrawingAreaProxyUpdateChunk::platformPaint):
3649         (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
3650         * UIProcess/win/WebView.cpp:
3651         (WebKit::WebView::WebView):
3652         (WebKit::WebView::onPaintEvent):
3653         * WebKit2.xcodeproj/project.pbxproj:
3654         * win/WebKit2.vcproj:
3655
3656 2010-04-23  Sam Weinig  <sam@webkit.org>
3657
3658         Reviewed by Anders Carlsson.
3659
3660         Fix for https://bugs.webkit.org/show_bug.cgi?id=38059
3661         Merge mac and win DrawingAreaUpdateChunk implementations.
3662
3663         * UIProcess/win/DrawingAreaProxy.cpp:
3664         (WebKit::DrawingAreaProxy::didSetSize):
3665         (WebKit::DrawingAreaProxy::didReceiveMessage):
3666         * UIProcess/win/DrawingAreaProxy.h:
3667         * WebKit2.xcodeproj/project.pbxproj:
3668         * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp.
3669         (WebKit::DrawingAreaUpdateChunk::setSize):
3670         * WebProcess/WebPage/DrawingAreaUpdateChunk.h: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h.
3671         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp: Removed.
3672         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h: Removed.
3673         * WebProcess/WebPage/mac/DrawingAreaUpdateChunkMac.cpp: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp.
3674         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp: Removed.
3675         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h: Removed.
3676         * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp: Copied from WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp.
3677         (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
3678         * win/WebKit2.vcproj:
3679
3680 2010-04-23  Anders Carlsson  <andersca@apple.com>
3681
3682         Reviewed by Sam Weinig.
3683
3684         Remove an assert. (It's not valid when resizing).
3685
3686         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
3687         (WebKit::DrawingAreaUpdateChunk::didUpdate):
3688
3689 2010-04-23  Anders Carlsson  <andersca@apple.com>
3690
3691         Fix build.
3692
3693         * UIProcess/win/DrawingAreaProxy.cpp:
3694         (WebKit::DrawingAreaProxy::paint):
3695         (WebKit::DrawingAreaProxy::setSize):
3696         (WebKit::DrawingAreaProxy::didReceiveMessage):
3697         * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
3698         (WebKit::DrawingAreaUpdateChunk::setSize):
3699         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
3700
3701 2010-04-22  Anders Carlsson  <andersca@apple.com>
3702
3703         Reviewed by Sam Weinig.
3704
3705         Remove an assert. (It's not valid when resizing).
3706
3707         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3708         (WebKit::DrawingAreaUpdateChunk::didUpdate):
3709
3710 2010-04-22  Sam Weinig  <sam@webkit.org>
3711
3712         Reviewed by Anders Carlsson.
3713
3714         Merge the prefix headers.
3715
3716         * Configurations/BaseTarget.xcconfig:
3717         * WebKit2.xcodeproj/project.pbxproj:
3718         * WebKit2Prefix.h:
3719         * WebKit2_Prefix.pch: Removed.
3720
3721 2010-04-22  Anders Carlsson  <andersca@apple.com>
3722
3723         Reviewed by Sam Weinig.
3724
3725         Don't pass the new size when calling didSetSize, it's possible to get
3726         the size from the update chunk.
3727
3728         * UIProcess/mac/DrawingAreaProxyUpdateChunk.h:
3729         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
3730         (WebKit::DrawingAreaProxyUpdateChunk::didSetSize):
3731         (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
3732         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3733         (WebKit::DrawingAreaUpdateChunk::setSize):
3734
3735 2010-04-22  Anders Carlsson  <andersca@apple.com>
3736
3737         Reviewed by Sam Weinig.
3738
3739         Rename SetFrame and DidSetFrame to SetSize and DidSetSize.
3740
3741         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
3742         (DrawingAreaMessage::):
3743         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
3744         (DrawingAreaProxyMessage::):
3745         * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
3746         (WebKit::DrawingAreaProxyUpdateChunk::drawRectIntoContext):
3747         (WebKit::DrawingAreaProxyUpdateChunk::setSize):
3748         (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
3749         * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3750         (WebKit::DrawingAreaUpdateChunk::setSize):
3751         (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
3752
3753 2010-04-22  Sam Weinig  <sam@webkit.org>
3754
3755         Reviewed by Anders Carlsson.
3756
3757         Fix for https://bugs.webkit.org/show_bug.cgi?id=38002
3758         Add rudimentary statistics gathering for WebKit2
3759
3760         * UIProcess/API/C/WKContext.cpp:
3761         (WKContextGetStatistics):
3762         * UIProcess/API/C/WKContextPrivate.h: Copied from WebKit2/UIProcess/API/C/WKContext.h.
3763         * UIProcess/API/C/WKPageNamespace.cpp:
3764         (WKPageNamespaceGetContext):
3765         * UIProcess/API/C/WKPageNamespace.h:
3766         * UIProcess/WebContext.cpp:
3767         (WebKit::WebContext::getStatistics):
3768         * UIProcess/WebContext.h:
3769         * UIProcess/WebPageNamespace.cpp:
3770         (WebKit::WebPageNamespace::getStatistics):
3771         * UIProcess/WebPageNamespace.h:
3772         * UIProcess/WebPageProxy.cpp:
3773         (WebKit::WebPageProxy::getStatistics):
3774         * UIProcess/WebPageProxy.h:
3775         * UIProcess/WebProcessProxy.cpp: