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