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