1 2010-07-08 Anders Carlsson <andersca@apple.com>
3 Reviewed by Sam Weinig.
5 Add a Plugin abstract base class and a DummyPlugin that implements it
6 https://bugs.webkit.org/show_bug.cgi?id=41885
8 * WebKit2.xcodeproj/project.pbxproj:
11 * WebProcess/Plugins/DummyPlugin.cpp: Added.
12 (WebKit::DummyPlugin::paint):
13 Paint a red rectangle.
15 * WebProcess/Plugins/Plugin.cpp: Added.
16 * WebProcess/Plugins/Plugin.h: Added.
17 Add Plugin, an abstract baseclass.
19 * WebProcess/Plugins/PluginView.cpp:
20 (WebKit::PluginView::PluginView):
21 (WebKit::PluginView::~PluginView):
22 (WebKit::PluginView::paint):
23 (WebKit::PluginView::viewGeometryDidChange):
24 * WebProcess/Plugins/PluginView.h:
25 (WebKit::PluginView::create):
26 Add a Plugin member function and forward PluginView calls to it.
28 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
29 (WebKit::WebFrameLoaderClient::createPlugin):
30 Make a DummyPlugin and pass it to the PluginView.
35 2010-07-08 Anders Carlsson <andersca@apple.com>
37 Reviewed by Sam Weinig.
39 Add stubbed out PluginView class
40 https://bugs.webkit.org/show_bug.cgi?id=41879
42 * WebKit2.xcodeproj/project.pbxproj:
43 Add PluginView.cpp and PluginView.h
45 * WebProcess/Plugins/PluginView.cpp: Added.
46 (WebKit::PluginView::PluginView):
47 (WebKit::PluginView::~PluginView):
48 (WebKit::PluginView::setFrameRect):
49 (WebKit::PluginView::paint):
50 (WebKit::PluginView::viewGeometryDidChange):
51 (WebKit::PluginView::invalidateRect):
52 Stub out these functions.
54 * WebProcess/Plugins/PluginView.h: Added.
55 (WebKit::PluginView::create):
56 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
57 (WebKit::WebFrameLoaderClient::createPlugin):
58 Create a plug-in view.
61 Add PluginView.cpp and PluginView.h.
63 2010-07-08 Steve Falkenburg <sfalken@apple.com>
65 Reviewed by Adam Roben.
67 WebKit2 on Windows needs a version resource
68 https://bugs.webkit.org/show_bug.cgi?id=41870
69 <rdar://problem/8170501>
71 * win/WebKit2.rc: Added.
73 * win/WebKit2WebProcess.rc: Added.
74 * win/WebKit2WebProcess.vcproj:
76 2010-07-08 Sam Weinig <sam@webkit.org>
78 Reviewed by Anders Carlsson.
80 Patch for https://bugs.webkit.org/show_bug.cgi?id=41874
81 Add stubbed out WebBackForwardListProxy
84 - Rename the old WebBackForwardListProxy to WebBackForwardList since it
85 will be the implementation, not the proxy.
87 * UIProcess/API/C/WKAPICast.h:
88 * UIProcess/API/C/WKBackForwardList.cpp:
89 * UIProcess/API/C/WKPage.cpp:
90 * UIProcess/WebBackForwardList.cpp: Copied from UIProcess/WebBackForwardListProxy.cpp.
91 * UIProcess/WebBackForwardList.h: Copied from UIProcess/WebBackForwardListProxy.h.
92 (WebKit::WebBackForwardList::create):
93 * UIProcess/WebBackForwardListProxy.cpp: Removed.
94 * UIProcess/WebBackForwardListProxy.h: Removed.
95 * UIProcess/WebPageProxy.cpp:
96 (WebKit::WebPageProxy::WebPageProxy):
97 * UIProcess/WebPageProxy.h:
98 (WebKit::WebPageProxy::backForwardList):
99 * WebKit2.xcodeproj/project.pbxproj:
100 * WebProcess/WebPage/WebBackForwardListProxy.cpp: Added.
101 * WebProcess/WebPage/WebBackForwardListProxy.h: Added.
102 (WebKit::WebBackForwardListProxy::create):
103 * win/WebKit2.vcproj:
105 2010-07-08 Sam Weinig <sam@webkit.org>
107 Reviewed by Anders Carlsson.
109 Pass Page to BackForwardControllerClient::createBackForwardList since it
110 may be called before implementations of BackForwardControllerClient have
113 * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
114 (WebKit::WebBackForwardControllerClient::createBackForwardList):
115 * WebProcess/WebCoreSupport/WebBackForwardControllerClient.h:
117 2010-07-08 Anders Carlsson <andersca@apple.com>
119 Reviewed by Sam Weinig.
121 Fix fallout from Darin's adoptRef assertion changes.
123 * UIProcess/WebContext.cpp:
124 (WebKit::WebContext::sharedProcessContext):
125 (WebKit::WebContext::sharedThreadContext):
126 * WebProcess/WebPage/WebFrame.cpp:
127 (WebKit::WebFrame::createMainFrame):
128 (WebKit::WebFrame::createSubframe):
129 (WebKit::WebFrame::create):
130 (WebKit::WebFrame::WebFrame):
131 * WebProcess/WebPage/WebFrame.h:
133 2010-07-08 Steve Falkenburg <sfalken@apple.com>
135 Reviewed by Mark Rowe.
137 WebKit2 should enable DEP (Data Execution Prevention) on Windows via /NXCOMPAT
138 https://bugs.webkit.org/show_bug.cgi?id=41837
139 <rdar://problem/8170505>
141 * win/WebKit2WebProcess.vcproj:
143 2010-07-08 Sam Weinig <sam@webkit.org>
145 Reviewed by Anders Carlsson.
147 Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
148 Convert BackForwardList to an abstract base class and add BackForwardListImpl
149 as the concrete implementation of it.
151 * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:
152 (WebKit::WebBackForwardControllerClient::createBackForwardList):
154 2010-07-08 Luiz Agostini <luiz@webkit.org>, Kenneth Rohde Christiansen <kenneth@webkit.org>
156 Reviewed by Antti Koivisto.
158 [Qt] Improve QtWebkit2 secondary process launching procedure
159 https://bugs.webkit.org/show_bug.cgi?id=41853
161 Changing secondary process launching procedure to make sure that the method
162 ProcessLauncher::didFinishLaunchingProcess will only be called after secondary
163 process has been launched and the connection has been stablished between the
164 UIProcess and WebProcess.
166 This solves the timing issues ocasionaly observed when launching MiniBrowser.
168 QLocalServer object and related code has been removed from the class Connection.
169 Server instances of the Connection class now get the QLocalSocket via ProcessLauncher.
171 * Platform/CoreIPC/Connection.h:
172 * Platform/CoreIPC/qt/ConnectionQt.cpp:
173 (CoreIPC::Connection::platformInitialize):
174 (CoreIPC::Connection::platformInvalidate):
175 (CoreIPC::Connection::open):
177 Using QProcess* as PlatformProcessIdentifier.
179 * Platform/PlatformProcessIdentifier.h:
181 A new singleton class named ProcessLauncherHelper was created to handle the QLocalServer
182 object used to receive connections. This class launches the process and waits for it to connect
183 before calling ProcessLauncher::didFinishLaunchingProcess.
185 * UIProcess/Launcher/ProcessLauncher.h:
186 * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
187 (WebKit::ProcessLauncherHelper::launch):
188 (WebKit::ProcessLauncherHelper::takePendingConnection):
189 (WebKit::ProcessLauncherHelper::ProcessLauncherHelper):
190 (WebKit::ProcessLauncherHelper::instance):
191 (WebKit::ProcessLauncherHelper::newConnection):
192 (WebKit::ProcessLauncher::launchProcess):
193 (WebKit::ProcessLauncher::terminateProcess):
194 (_qt_takePendingConnection):
196 2010-07-08 Antti Koivisto <koivisto@iki.fi>
198 Reviewed by Kenneth Rohde Christiansen.
200 [Qt] Initial WebKit2 implementation
201 https://bugs.webkit.org/show_bug.cgi?id=40233
205 * Shared/qt/WebEventFactoryQt.cpp:
206 * UIProcess/API/qt/ClientImpl.cpp:
207 * UIProcess/API/qt/qwkpage.cpp:
208 * UIProcess/API/qt/qwkpage.h:
209 * UIProcess/DrawingAreaProxy.h:
210 * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
211 * WebProcess/WebProcess.cpp:
213 2010-07-07 Zoltan Horvath <zoltan@webkit.org>
215 Reviewed by Kenneth Rohde Christiansen.
217 [Qt] Terminate QtWebProcess on exit
218 https://bugs.webkit.org/show_bug.cgi?id=41766
220 Call WKPageTerminate to terminate QtWebProcess on exit.
222 * UIProcess/API/qt/qwkpage.cpp:
225 2010-07-07 Steve Falkenburg <sfalken@apple.com>
227 Windows release build fix.
228 Don't generate public symbols since this is exceeding address space on our builders.
230 * win/WebKit2.vcproj:
232 2010-07-07 Sam Weinig <sam@webkit.org>
234 Reviewed by Anders Carlsson.
236 Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
237 Add basic piping for BackForwardControllerClient.
239 - Add very basic WebBackForwardControllerClient.
241 * WebKit2.xcodeproj/project.pbxproj:
242 * WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp: Added.
243 (WebKit::WebBackForwardControllerClient::backForwardControllerDestroyed):
244 (WebKit::WebBackForwardControllerClient::createBackForwardList):
245 * WebProcess/WebCoreSupport/WebBackForwardControllerClient.h: Added.
246 (WebKit::WebBackForwardControllerClient::WebBackForwardControllerClient):
247 * WebProcess/WebPage/WebPage.cpp:
248 (WebKit::WebPage::WebPage):
249 * win/WebKit2.vcproj:
251 2010-07-07 Antti Koivisto <koivisto@iki.fi>
253 Reviewed by Kenneth Rohde Christiansen.
255 [Qt] Initial WebKit2 implementation
256 https://bugs.webkit.org/show_bug.cgi?id=40233
258 Add Qt section to the prefix header.
262 2010-07-07 Antti Koivisto <koivisto@iki.fi>
266 Fix build, remove some left over debugging code.
268 * Platform/CoreIPC/qt/ConnectionQt.cpp:
269 (CoreIPC::Connection::readyReadHandler):
270 (CoreIPC::Connection::sendOutgoingMessage):
272 2010-07-07 Antti Koivisto <koivisto@iki.fi>
274 Reviewed by Kenneth Rohde Christiansen.
276 [Qt] Initial WebKit2 implementation
277 https://bugs.webkit.org/show_bug.cgi?id=40233
279 Implement WebPage for Qt.
281 * WebProcess/WebPage/qt/WebPageQt.cpp: Added.
282 (WebKit::WebPage::platformInitialize):
284 (WebKit::WebPage::interpretKeyEvent):
287 2010-07-06 Anders Carlsson <andersca@apple.com>
289 Fix Windows WebKit2 build.
291 * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
292 (WebKit::PluginInfoStore::mimeTypeFromExtension):
294 2010-07-06 Anders Carlsson <andersca@apple.com>
296 Reviewed by Sam Weinig.
298 Add PluginInfoStore::findPlugin
299 https://bugs.webkit.org/show_bug.cgi?id=41719
301 * UIProcess/Plugins/PluginInfoStore.cpp:
302 (WebKit::PluginInfoStore::getPlugins):
303 (WebKit::PluginInfoStore::findPluginForMIMEType):
304 (WebKit::PluginInfoStore::findPluginForExtension):
305 (WebKit::pathExtension):
306 (WebKit::PluginInfoStore::findPlugin):
307 * UIProcess/Plugins/PluginInfoStore.h:
308 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
309 (WebKit::PluginInfoStore::mimeTypeFromExtension):
311 2010-07-06 Sam Weinig <sam@webkit.org>
313 Reviewed by Anders Carlsson.
315 Add injected bundle API for exposing console messages.
317 - Split WKBundlePageClient into multiple clients matching WKPage.
318 (For now we only have a loader client and a UI client)
320 * WebKit2.xcodeproj/project.pbxproj:
321 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
322 (WKBundlePageSetLoaderClient):
323 (WKBundlePageSetUIClient):
324 * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
325 * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Removed.
326 * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Removed.
327 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp: Copied from WebProcess/InjectedBundle/InjectedBundlePageClient.cpp.
328 (WebKit::InjectedBundlePageLoaderClient::InjectedBundlePageLoaderClient):
329 (WebKit::InjectedBundlePageLoaderClient::initialize):
330 (WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
331 (WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
332 (WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
333 (WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
334 (WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
335 (WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
336 (WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
337 (WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
338 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h: Copied from WebProcess/InjectedBundle/InjectedBundlePageClient.h.
339 * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Added.
340 (WebKit::InjectedBundlePageUIClient::InjectedBundlePageUIClient):
341 (WebKit::InjectedBundlePageUIClient::initialize):
342 (WebKit::InjectedBundlePageUIClient::addMessageToConsole):
343 * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added.
344 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
345 (WebKit::WebChromeClient::addMessageToConsole):
346 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
347 (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
348 (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
349 (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
350 (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
351 (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
352 (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
353 (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
354 (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
355 * WebProcess/WebPage/WebPage.cpp:
356 (WebKit::WebPage::initializeInjectedBundleLoaderClient):
357 (WebKit::WebPage::initializeInjectedBundleUIClient):
358 * WebProcess/WebPage/WebPage.h:
359 (WebKit::WebPage::injectedBundleLoaderClient):
360 (WebKit::WebPage::injectedBundleUIClient):
362 * win/WebKit2.vcproj:
364 2010-07-06 Sam Weinig <sam@webkit.org>
366 Reviewed by Anders Carlsson.
368 Patch for https://bugs.webkit.org/show_bug.cgi?id=41707
369 Add ability to dump frame inner text for the test runner
371 * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
372 (WKBundleFrameCopyInnerText):
373 * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
374 * WebProcess/WebPage/WebFrame.cpp:
375 (WebKit::WebFrame::innerText):
376 * WebProcess/WebPage/WebFrame.h:
379 2010-07-06 Anders Carlsson <andersca@apple.com>
381 Reviewed by Sam Weinig.
383 Only export a single WebKitMain function for the Web Process to call
384 https://bugs.webkit.org/show_bug.cgi?id=41702
386 * Shared/CommandLine.h:
387 Add windows CommandLine::parse overload.
389 * Shared/win/CommandLineWin.cpp: Added.
390 (WebKit::CommandLine::parse):
391 Move parse overload from WebProcess/win/WebProcessMain.cpp.
393 * UIProcess/Launcher/win/ProcessLauncherWin.cpp:
394 (WebKit::ProcessLauncher::launchProcess):
395 Pass the right mode to.
397 * WebKit2.xcodeproj/project.pbxproj:
400 * WebProcess/Launching/mac/WebProcessMain.mm: Removed.
401 * WebProcess/Launching/win/WebProcessWinMain.cpp: Removed.
402 * WebProcess/WebKitMain.cpp: Added.
404 (enableTerminationOnHeapCorruption):
405 Add WebKitMain functions for Mac and Windows.
407 * WebProcess/WebProcessMain.h: Added.
408 * WebProcess/mac/WebProcessMainMac.mm: Added.
409 (WebKit::WebProcessMain):
410 Add Mac version of WebProcessMain.
412 * WebProcess/win/WebProcessMain.cpp: Removed.
413 * WebProcess/win/WebProcessMain.h: Removed.
414 * WebProcess/win/WebProcessMainWin.cpp: Added.
415 (WebKit::WebProcessMain):
416 Add Windows version of WebProcessMain.
418 * mac/MainMac.cpp: Added.
420 Add Mac WebProcess main function.
423 Remove functions that we don't need to export.
425 * win/MainWin.cpp: Added.
427 Add Windows WebProcess main function.
429 * win/WebKit2.vcproj:
430 * win/WebKit2WebProcess.vcproj:
433 2010-07-05 Luiz Agostini <luiz.agostini@openbossa.org>
435 Reviewed by Kenneth Rohde Christiansen.
437 [Qt] WebKit2 triple click
438 https://bugs.webkit.org/show_bug.cgi?id=41629
440 QtWebkit2 triple click implementation.
442 * UIProcess/API/qt/qwkpage.cpp:
443 (QWKPagePrivate::mousePressEvent):
444 (QWKPagePrivate::mouseDoubleClickEvent):
445 (QWKPage::timerEvent):
446 * UIProcess/API/qt/qwkpage.h:
447 * UIProcess/API/qt/qwkpage_p.h:
449 2010-07-05 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
451 Reviewed by Antti Koivisto.
453 [Qt] Initial WebKit2 implementation
454 https://bugs.webkit.org/show_bug.cgi?id=40233
458 * UIProcess/Plugins/qt/PluginInfoStoreQt.cpp: Copied from WebKit2/UIProcess/Plugins/win/PluginInfoStoreWin.cpp.
459 (WebKit::PluginInfoStore::pluginDirectories):
460 (WebKit::PluginInfoStore::pluginPathsInDirectory):
461 (WebKit::PluginInfoStore::getPluginInfo):
462 (WebKit::PluginInfoStore::shouldUsePlugin):
463 * WebProcess/InjectedBundle/InjectedBundle.h:
464 * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp: Added.
465 (WebKit::InjectedBundle::load):
467 2010-07-05 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
469 Reviewed by Antti Koivisto.
471 [Qt] Initial WebKit2 implementation
472 https://bugs.webkit.org/show_bug.cgi?id=40233
476 * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp: Added.
478 (WebKit::cancelledError):
479 (WebKit::blockedError):
480 (WebKit::cannotShowURLError):
481 (WebKit::interruptForPolicyChangeError):
482 (WebKit::cannotShowMIMETypeError):
483 (WebKit::fileDoesNotExistError):
485 2010-07-05 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
487 Reviewed by Antti Koivisto.
489 [Qt] Initial WebKit2 implementation
490 https://bugs.webkit.org/show_bug.cgi?id=40233
492 Add Qt C API integration.
494 * UIProcess/API/cpp/qt/WKStringQt.cpp: Added.
495 (WKStringCreateWithQString):
496 (WKStringCopyQString):
497 * UIProcess/API/cpp/qt/WKStringQt.h: Added.
498 * UIProcess/API/cpp/qt/WKURLQt.cpp: Added.
499 (WKURLCreateWithQUrl):
501 * UIProcess/API/cpp/qt/WKURLQt.h: Added.
503 2010-07-05 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
505 Reviewed by Antti Koivisto.
507 [Qt] Initial WebKit2 implementation
508 https://bugs.webkit.org/show_bug.cgi?id=40233
510 Add the Qt process launcher.
512 * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: Added.
513 (WebKit::ProcessLauncher::launchProcess):
514 (WebKit::ProcessLauncher::terminateProcess):
515 (WebKit::webThreadBody):
516 (WebKit::ProcessLauncher::createWebThread):
519 2010-07-05 Antti Koivisto <koivisto@iki.fi>
521 Reviewed by Kenneth Rohde Christiansen.
523 [Qt] Initial WebKit2 implementation
524 https://bugs.webkit.org/show_bug.cgi?id=40233
526 Implement ChunkedUpdateDrawingArea + Proxy for Qt. Not built yet.
528 * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
529 * UIProcess/qt: Added.
530 * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp: Added.
531 (WebKit::ChunkedUpdateDrawingAreaProxy::page):
532 (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
533 (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
534 (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
535 (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
536 * WebProcess/WebPage/qt: Added.
537 * WebProcess/WebPage/qt/ChunkedUpdateDrawingAreaQt.cpp: Added.
538 (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
540 2010-07-04 Anders Carlsson <andersca@apple.com>
542 Reviewed by Dan Bernstein.
544 Add simple command line parser and pass mode argument to the web process
545 https://bugs.webkit.org/show_bug.cgi?id=41586
547 * Shared/CommandLine.h:
548 (WebKit::CommandLine::operator[]):
549 Add CommandLine class.
551 * Shared/mac/CommandLineMac.cpp:
552 (WebKit::CommandLine::parse):
553 Implement Mac version of CommandLine::parse.
555 * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
556 (WebKit::ProcessLauncher::launchProcess):
557 Add "legacywebprocess" mode to the posix_spawn call.
559 * WebKit2.xcodeproj/project.pbxproj:
560 Add CommandLine to the xcode project.
562 * WebProcess/Launching/mac/WebProcessMain.mm:
565 Parse the command line and check the mode.
567 2010-07-04 Maciej Stachowiak <mjs@apple.com>
569 Reviewed by Mark Rowe.
571 WebProcess crashes in release for simple layout tests
572 https://bugs.webkit.org/show_bug.cgi?id=41575
574 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
575 (WKBundlePageCopyRenderTreeExternalRepresentation): ref external representation StringImpl*
576 before taking it out of its parent String, to avoid returning freed memory.
578 2010-07-03 Maciej Stachowiak <mjs@apple.com>
580 Rubber stamped by Anders Carlsson.
582 Add stdint.h include to fix WebKitTestRunner build.
584 * UIProcess/API/C/WKPage.h:
586 2010-07-02 Luiz Agostini <luiz.agostini@openbossa.org>
588 Reviewed by Kenneth Rohde Christiansen.
590 [Qt] Wrong method name in file Connection.h
591 https://bugs.webkit.org/show_bug.cgi?id=41536
593 Method openConnectionHandler was spelled as openConnection in class Connection.
595 * Platform/CoreIPC/Connection.h:
597 2010-07-02 Luiz Agostini <luiz.agostini@openbossa.org>
599 Reviewed by Sam Weinig.
601 Adding notification and touch events methods to WebChromeClient
602 https://bugs.webkit.org/show_bug.cgi?id=41527
604 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
605 (WebKit::WebChromeClient::notificationPresenter):
606 (WebKit::WebChromeClient::needTouchEvents):
607 * WebProcess/WebCoreSupport/WebChromeClient.h:
609 2010-07-02 Luiz Agostini <luiz.agostini@openbossa.org>
611 Reviewed by Sam Weinig.
613 Removing CoreFoundation.h include from WKFrame.h
614 https://bugs.webkit.org/show_bug.cgi?id=41528
616 * UIProcess/API/C/WKFrame.h:
618 2010-07-02 Sam Weinig <sam@webkit.org>
620 Reviewed by Oliver Hunt.
622 Patch for https://bugs.webkit.org/show_bug.cgi?id=41540
623 WebKit2: Add InjectedCode API to get a list of subframes
625 * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
626 (WKBundleFrameCopyChildFrames):
627 * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
628 * WebProcess/WebPage/WebFrame.cpp:
629 (WebKit::childFrameRef):
630 (WebKit::childFrameDeref):
631 (WebKit::WebFrame::childFrames):
632 * WebProcess/WebPage/WebFrame.h:
635 2010-07-02 Sam Weinig <sam@webkit.org>
637 Reviewed by Anders Carlsson.
639 Turn off the Objective-C garbage collection for the WebProcess.
641 * Configurations/WebProcess.xcconfig:
642 * WebProcess/Launching/mac/WebProcessMain.mm:
643 (main): Assert that GC is off.
645 2010-07-02 Sam Weinig <sam@webkit.org>
647 Reviewed by Anders Carlsson.
649 There is no longer a reason to check that the process is valid when posting
650 a message to the bundle, the process code will take care of that for us.
652 * UIProcess/WebContext.cpp:
653 (WebKit::WebContext::postMessageToInjectedBundle):
655 2010-07-02 Sam Weinig <sam@webkit.org>
657 Reviewed by Anders Carlsson.
659 Use send instead of connection()->send(), now that connections() are created
660 asynchronously it can be null at this point and the message needs to be queued.
662 * UIProcess/mac/WebProcessProxyMac.mm:
663 (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
665 2010-07-01 Steve Falkenburg <sfalken@apple.com>
667 Even more Windows build fixing.
668 Removed bogus post-build event commands.
669 Removed unnecessary link libraries.
671 * win/WebKit2.vcproj:
673 2010-07-01 Steve Falkenburg <sfalken@apple.com>
675 Fix Windows while not breaking Qt (didn't realize this was building for Qt).
677 * WebProcess/WebProcess.cpp:
679 2010-07-01 Steve Falkenburg <sfalken@apple.com>
683 * win/WebKit2Generated.make:
685 2010-07-01 Steve Falkenburg <sfalken@apple.com>
689 * WebProcess/WebProcess.cpp:
691 2010-07-01 Sam Weinig <sam@webkit.org>
693 Reviewed by Jon Honeycutt.
695 Make WebKit2 compile (though not work) on Leopard.
697 * Platform/WorkQueue.h:
698 * Platform/mac/WorkQueueMac.cpp:
699 (WorkQueue::EventSource::EventSource):
700 (WorkQueue::scheduleWork):
701 (WorkQueue::registerMachPortEventHandler):
702 (WorkQueue::unregisterMachPortEventHandler):
703 (WorkQueue::platformInitialize):
704 (WorkQueue::platformInvalidate):
705 * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
706 (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext):
707 * UIProcess/mac/WebProcessProxyMac.mm:
708 (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
709 * WebProcess/WebPage/LayerBackedDrawingArea.cpp:
710 (WebKit::LayerBackedDrawingArea::LayerBackedDrawingArea):
711 (WebKit::LayerBackedDrawingArea::setNeedsDisplay):
712 * WebProcess/WebPage/LayerBackedDrawingArea.h:
713 * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
714 (WebKit::LayerBackedDrawingArea::platformClear):
715 (WebKit::LayerBackedDrawingArea::attachCompositingContext):
717 2010-07-01 Sam Weinig <sam@webkit.org>
719 Reviewed by Anders Carlsson.
721 https://bugs.webkit.org/show_bug.cgi?id=41491
722 Add first stab at back/forward list API.
724 * UIProcess/API/C/WKAPICast.h:
725 * UIProcess/API/C/WKBackForwardList.cpp: Added.
726 * UIProcess/API/C/WKBackForwardList.h: Added.
727 * UIProcess/API/C/WKBackForwardListItem.cpp: Added.
728 * UIProcess/API/C/WKBackForwardListItem.h: Added.
729 * UIProcess/API/C/WKBase.h:
730 * UIProcess/API/C/WKPage.cpp:
731 * UIProcess/API/C/WKPage.h:
732 * UIProcess/API/C/WebKit2.h:
733 * UIProcess/WebBackForwardListItem.cpp: Added.
734 * UIProcess/WebBackForwardListItem.h: Added.
735 * UIProcess/WebBackForwardListProxy.cpp: Added.
736 * UIProcess/WebBackForwardListProxy.h: Added.
737 * UIProcess/WebPageProxy.cpp:
738 * UIProcess/WebPageProxy.h:
739 * WebKit2.xcodeproj/project.pbxproj:
740 * win/WebKit2.vcproj:
742 2010-07-01 Anders Carlsson <andersca@apple.com>
744 Reviewed by Sam Weinig.
746 Make process launching asynchronous
747 https://bugs.webkit.org/show_bug.cgi?id=41489
749 * Platform/CoreIPC/Connection.h:
750 Make OutgoingMessage public.
752 * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
753 (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
754 Don't wait for a paint reply when the process is starting up.
756 * UIProcess/Launcher/ProcessLauncher.cpp: Added.
757 Add new ProcessLauncher class.
759 (WebKit::processLauncherWorkQueue):
760 Returns the work queue where process launching will happen.
762 (WebKit::ProcessLauncher::ProcessLauncher):
763 Schedule launching the process.
765 (WebKit::ProcessLauncher::didFinishLaunchingProcess):
766 Call the client method.
768 (WebKit::ProcessLauncher::invalidate):
771 * UIProcess/Launcher/ProcessLauncher.h: Added.
772 * UIProcess/Launcher/WebProcessLauncher.h: Removed.
773 Rename WebProcessLauncher.h -> ProcessLauncher.h
775 * UIProcess/Launcher/mac/ProcessLauncherMac.mm: Added.
776 * UIProcess/Launcher/mac/WebProcessLauncher.mm: Removed.
777 Rename WebProcessLauncher.mm -> ProcessLauncherMac.mm, update for ProcessLauncher changes.
779 * UIProcess/Launcher/win/ProcessLauncherWin.cpp: Added.
780 * UIProcess/Launcher/win/WebProcessLauncher.cpp: Removed.
781 Rename WebProcessLauncher.cpp -> ProcessLauncherWin.cpp, update for ProcessLauncher changes.
783 * UIProcess/WebProcessProxy.cpp:
784 (WebKit::WebProcessProxy::~WebProcessProxy):
785 Delete any unsent messages.
787 (WebKit::WebProcessProxy::connect):
788 Use the new ProcessLauncher.
790 (WebKit::WebProcessProxy::sendMessage):
791 If we're waiting for the process to launch, the messages need to be enqueued.
793 (WebKit::WebProcessProxy::didFinishLaunching):
794 Send the outgoing messages.
796 * WebKit2.xcodeproj/project.pbxproj:
797 * win/WebKit2.vcproj:
800 2010-07-01 Simon Fraser <simon.fraser@apple.com>
802 Reviewed by Anders Carlsson.
804 Get accelerated compositing working with webkit2
805 https://bugs.webkit.org/show_bug.cgi?id=41084
807 Start up the CA render server in the UI process (currently, at launch time), and
808 pass the server port over to the web process for use by the layer-backed drawing area.
810 Fix some style issues pointed out by Dan Bernstein.
812 Implement the WebChromeClient methods that pass the attach/detach calls through
815 * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
816 * UIProcess/API/mac/WKView.mm:
817 (-[WKView _startAcceleratedCompositing:]):
818 * UIProcess/API/mac/WKViewInternal.h:
819 * UIProcess/WebProcessProxy.cpp:
820 (WebKit::WebProcessProxy::WebProcessProxy):
821 (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
822 * UIProcess/WebProcessProxy.h:
823 * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm:
824 * UIProcess/mac/WebProcessProxyMac.mm: Added.
825 (WebKit::WebProcessProxy::setUpAcceleratedCompositing):
826 * WebKit2.xcodeproj/project.pbxproj:
827 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
828 (WebKit::WebChromeClient::attachRootGraphicsLayer):
829 (WebKit::WebChromeClient::scheduleCompositingLayerSync):
830 * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm:
831 (WebKit::LayerBackedDrawingArea::attachCompositingContext):
832 * WebProcess/WebProcess.cpp:
833 (WebKit::WebProcess::WebProcess):
834 (WebKit::WebProcess::didReceiveMessage):
835 * WebProcess/WebProcess.h:
836 (WebKit::WebProcess::compositingRenderServerPort):
838 2010-07-01 Simon Fraser <simon.fraser@apple.com>
840 Reviewed by Anders Carlsson.
842 Get accelerated compositing working with webkit2
843 https://bugs.webkit.org/show_bug.cgi?id=41084
845 Add a new kind of DrawingArea, which is a LayerBackedDrawingArea, which will be used
846 when the page goes into accelerated compositing mode. It is not wired up yet.
848 * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h: New 'attach' and 'detach' messages
849 related to accelerated compositing.
851 * UIProcess/API/mac/WKView.mm:
852 (-[WKView _startAcceleratedCompositing:]):
853 (-[WKView _stopAcceleratedCompositing]):
854 * UIProcess/API/mac/WKViewInternal.h:
855 Add a subview of the WKView which has layer-backing enabled, and put the drawing area's
856 layer inside of that.
858 * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
859 (WebKit::ChunkedUpdateDrawingAreaProxy::attachCompositingContext):
860 (WebKit::ChunkedUpdateDrawingAreaProxy::detachCompositingContext): These methods will never be called
861 on the ChunkedUpdateDrawingArea. Stub them out.
863 * UIProcess/DrawingAreaProxy.h:
864 Add attachCompositingContext() and detachCompositingContext() methods, and a new drawing area
867 * UIProcess/LayerBackedDrawingAreaProxy.cpp: Added.
868 * UIProcess/LayerBackedDrawingAreaProxy.h: Added.
869 * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm: Added.
871 * WebKit2.xcodeproj/project.pbxproj: Add LayerBackedDrawingArea files.
873 * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Add virtual methods stubs.
875 * WebProcess/WebPage/DrawingArea.cpp:
876 (WebKit::DrawingArea::create): Create a LayerBackedDrawingArea if asked.
877 * WebProcess/WebPage/DrawingArea.h: New LayerBackedDrawingAreaType type, and new virtual
878 methods related to accelerated compositing.
880 * WebProcess/WebPage/LayerBackedDrawingArea.cpp: Added.
881 * WebProcess/WebPage/LayerBackedDrawingArea.h: Added.
882 * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm: Added.
884 2010-07-01 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
886 Rubberstamped by Sam Weinig.
888 Export symbols on Linux with GCC, like JSC does.
890 * UIProcess/API/C/WKBase.h:
891 * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
893 2010-07-01 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
895 Reviewed by Antti Koivisto.
897 [Qt] Initial WebKit2 implementation
898 https://bugs.webkit.org/show_bug.cgi?id=40233
900 Add implementation of the UI and loader client for Qt.
902 * UIProcess/API/qt/qwkpage.cpp:
903 * UIProcess/API/qt/ClientImpl.cpp: Added.
905 (qt_wk_didStartProvisionalLoadForFrame):
906 (qt_wk_didReceiveServerRedirectForProvisionalLoadForFrame):
907 (qt_wk_didFailProvisionalLoadWithErrorForFrame):
908 (qt_wk_didCommitLoadForFrame):
909 (qt_wk_didFinishLoadForFrame):
910 (qt_wk_didFailLoadWithErrorForFrame):
911 (qt_wk_didReceiveTitleForFrame):
912 (qt_wk_didFirstLayoutForFrame):
913 (qt_wk_didFirstVisuallyNonEmptyLayoutForFrame):
914 (qt_wk_didStartProgress):
915 (qt_wk_didChangeProgress):
916 (qt_wk_didFinishProgress):
917 (qt_wk_didBecomeUnresponsive):
918 (qt_wk_didBecomeResponsive):
919 (qt_wk_createNewPage):
922 (qt_wk_runJavaScriptAlert):
923 * UIProcess/API/qt/ClientImpl.h: Added.
925 2010-07-01 Anders Carlsson <andersca@apple.com>
927 Reviewed by Dan Bernstein.
929 Change the CoreIPC connection identifier to be a HANDLE on Windows
930 https://bugs.webkit.org/show_bug.cgi?id=41479
932 * Platform/CoreIPC/Connection.h:
933 * Platform/CoreIPC/win/ConnectionWin.cpp:
934 (CoreIPC::Connection::createServerAndClientIdentifiers):
935 New function that creates a server and client HANDLE.
937 (CoreIPC::Connection::platformInitialize):
938 Don't open the connections here.
940 (CoreIPC::Connection::readEventHandler):
941 (CoreIPC::Connection::open):
943 * UIProcess/Launcher/win/WebProcessLauncher.cpp:
944 (WebKit::webThreadBody):
945 Get the handle from the thread.
947 (WebKit::launchWebProcess):
948 Mark the client identifier as inheritable and pass it along to the web process.
950 * WebProcess/win/WebProcessMain.cpp:
951 (WebKit::CommandLine::CommandLine):
952 (WebKit::CommandLine::parse):
953 (WebKit::CommandLine::operator[]):
954 Add simple command line parser.
956 (WebKit::WebProcessMain):
957 Get the handle identifier from the command line.
959 * WebProcess/win/WebProcessMain.h:
961 2010-07-01 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
963 Reviewed by Antti Koivisto.
965 [Qt] Initial WebKit2 implementation
966 https://bugs.webkit.org/show_bug.cgi?id=40233
968 Add initial Qt API for WebKit2
970 * UIProcess/API/qt/WKView.h: Added.
971 * UIProcess/API/qt/qgraphicswkview.cpp: Added.
972 (QGraphicsWKViewPrivate::pageRef):
973 (QGraphicsWKView::QGraphicsWKView):
974 (QGraphicsWKView::~QGraphicsWKView):
975 (QGraphicsWKView::page):
976 (QGraphicsWKView::paint):
977 (QGraphicsWKView::setGeometry):
978 (QGraphicsWKView::load):
979 (QGraphicsWKView::setUrl):
980 (QGraphicsWKView::url):
981 (QGraphicsWKView::title):
982 (QGraphicsWKView::triggerPageAction):
983 (QGraphicsWKView::back):
984 (QGraphicsWKView::forward):
985 (QGraphicsWKView::reload):
986 (QGraphicsWKView::stop):
987 (QGraphicsWKView::itemChange):
988 (QGraphicsWKView::event):
989 (QGraphicsWKView::sizeHint):
990 (QGraphicsWKView::inputMethodQuery):
991 (QGraphicsWKView::keyPressEvent):
992 (QGraphicsWKView::keyReleaseEvent):
993 (QGraphicsWKView::hoverMoveEvent):
994 (QGraphicsWKView::mouseMoveEvent):
995 (QGraphicsWKView::mousePressEvent):
996 (QGraphicsWKView::mouseReleaseEvent):
997 (QGraphicsWKView::mouseDoubleClickEvent):
998 (QGraphicsWKView::wheelEvent):
999 (QGraphicsWKViewPrivate::QGraphicsWKViewPrivate):
1000 (QGraphicsWKView::visibleRect):
1001 * UIProcess/API/qt/qgraphicswkview.h: Added.
1002 * UIProcess/API/qt/qwkpage.cpp: Added.
1003 (QWKPagePrivate::QWKPagePrivate):
1004 (QWKPagePrivate::~QWKPagePrivate):
1005 (QWKPagePrivate::init):
1006 (QWKPagePrivate::toolTipChanged):
1007 (QWKPagePrivate::paint):
1008 (QWKPagePrivate::keyPressEvent):
1009 (QWKPagePrivate::keyReleaseEvent):
1010 (QWKPagePrivate::mouseMoveEvent):
1011 (QWKPagePrivate::mousePressEvent):
1012 (QWKPagePrivate::mouseReleaseEvent):
1013 (QWKPagePrivate::mouseDoubleClickEvent):
1014 (QWKPagePrivate::wheelEvent):
1015 (QWKPagePrivate::updateAction):
1016 (QWKPagePrivate::updateNavigationActions):
1017 (QWKPagePrivate::_q_webActionTriggered):
1019 (QWKPage::~QWKPage):
1021 (QWKPage::setCreateNewPageFunction):
1026 (QWKPage::setViewportSize):
1027 (QWKPage::requestZoomRect):
1028 (QWKPage::triggerAction):
1030 * UIProcess/API/qt/qwkpage.h: Added.
1031 * UIProcess/API/qt/qwkpage_p.h: Added.
1032 (QWKPagePrivate::get):
1033 (QWKPagePrivate::processDidExit):
1034 (QWKPagePrivate::processDidRevive):
1035 (QWKPagePrivate::takeFocus):
1037 2010-07-01 John Sullivan <sullivan@apple.com>
1039 Rubber-stamped by Anders Carlsson.
1042 Added _WKFramePolicyListenerDownload and _WKFramePolicyListenerIgnore.
1044 2010-07-01 Sheriff Bot <webkit.review.bot@gmail.com>
1046 Unreviewed, rolling out r62267.
1047 http://trac.webkit.org/changeset/62267
1048 https://bugs.webkit.org/show_bug.cgi?id=41468
1050 broke stuff (Requested by weinig on #webkit).
1052 * UIProcess/API/C/WKBase.h:
1053 * WebProcess/InjectedBundle/API/c/WKBundleBase.h:
1055 2010-07-01 John Sullivan <sullivan@apple.com>
1057 Rubber-stamped by Sam Weinig.
1060 Added _WKFramePolicyListenerRelease and _WKFramePolicyListenerRetain.
1062 2010-07-01 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
1064 Reviewed by Antti Koivisto.
1066 [Qt] Initial WebKit2 implementation
1067 https://bugs.webkit.org/show_bug.cgi?id=40233
1069 Add our event factory for converting Qt events to something WebKit2
1072 * Shared/qt/WebEventFactoryQt.cpp: Added.
1073 (WebKit::mouseButtonForEvent):
1074 (WebKit::webEventTypeForEvent):
1075 (WebKit::modifiersForEvent):
1076 (WebKit::WebEventFactory::createWebMouseEvent):
1077 (WebKit::WebEventFactory::createWebWheelEvent):
1078 (WebKit::WebEventFactory::createWebKeyboardEvent):
1079 * Shared/qt/WebEventFactoryQt.h: Added.
1081 2010-07-01 Antti Koivisto <koivisto@iki.fi>
1083 Reviewed by Kenneth Rohde Christiansen.
1085 [Qt] Initial WebKit2 implementation
1086 https://bugs.webkit.org/show_bug.cgi?id=40233
1088 Add UpdateChunk. This one is mmap based, using Qt abstractions.
1091 * Shared/qt/UpdateChunk.cpp: Added.
1092 (WebKit::MappedMemory::markUsed):
1093 (WebKit::MappedMemory::markFree):
1094 (WebKit::MappedMemory::isFree):
1095 (WebKit::mapMemory):
1097 (WebKit::UpdateChunk::UpdateChunk):
1098 (WebKit::UpdateChunk::~UpdateChunk):
1099 (WebKit::UpdateChunk::data):
1100 (WebKit::UpdateChunk::encode):
1101 (WebKit::UpdateChunk::decode):
1102 (WebKit::UpdateChunk::createImage):
1103 * Shared/qt/UpdateChunk.h: Added.
1104 (WebKit::UpdateChunk::rect):
1105 (WebKit::UpdateChunk::size):
1107 2010-07-01 Antti Koivisto <koivisto@iki.fi>
1109 Reviewed by Kenneth Rohde Christiansen.
1111 [Qt] Initial WebKit2 implementation
1112 https://bugs.webkit.org/show_bug.cgi?id=40233
1114 Include some stdlib headers to fix linux build.
1116 * Platform/CoreIPC/ArgumentDecoder.cpp:
1117 * Platform/CoreIPC/ArgumentEncoder.cpp:
1118 * UIProcess/WebLoaderClient.cpp:
1119 * UIProcess/WebPageProxy.cpp:
1120 * UIProcess/WebUIClient.cpp:
1122 2010-07-01 Antti Koivisto <koivisto@iki.fi>
1124 Reviewed by Kenneth Rohde Christiansen.
1126 [Qt] Initial WebKit2 implementation
1127 https://bugs.webkit.org/show_bug.cgi?id=40233
1129 Implement CoreIPC::Connection and PlatformProcessIdentifier for Qt. Not built yet.
1131 * Platform/CoreIPC/Connection.h:
1132 * Platform/CoreIPC/qt: Added.
1133 * Platform/CoreIPC/qt/ConnectionQt.cpp: Added.
1134 (CoreIPC::Connection::platformInitialize):
1135 (CoreIPC::Connection::platformInvalidate):
1136 (CoreIPC::Connection::newConnectionHandler):
1137 (CoreIPC::Connection::readyReadHandler):
1138 (CoreIPC::Connection::openConnection):
1139 (CoreIPC::Connection::open):
1140 (CoreIPC::Connection::sendOutgoingMessage):
1141 * Platform/PlatformProcessIdentifier.h:
1143 2010-07-01 Antti Koivisto <koivisto@iki.fi>
1145 Reviewed by Kenneth Rohde Christiansen.
1147 [Qt] Initial WebKit2 implementation
1148 https://bugs.webkit.org/show_bug.cgi?id=40233
1150 Implement WorkQueue for Qt. Not built yet.
1152 * Platform/WorkQueue.h:
1153 * Platform/qt/WorkQueueQt.cpp: Added.
1154 (WorkQueue::WorkItemQt::WorkItemQt):
1155 (WorkQueue::WorkItemQt::~WorkItemQt):
1156 (WorkQueue::WorkItemQt::execute):
1157 (WorkQueue::WorkItemQt::timerEvent):
1158 (WorkQueue::connectSignal):
1159 (WorkQueue::disconnectSignal):
1160 (WorkQueue::platformInitialize):
1161 (WorkQueue::platformInvalidate):
1162 (WorkQueue::scheduleWork):
1164 2010-07-01 Antti Koivisto <koivisto@iki.fi>
1166 Reviewed by Kenneth Rohde Christiansen.
1168 [Qt] Initial WebKit2 implementation
1169 https://bugs.webkit.org/show_bug.cgi?id=40233
1171 Implement RunLoop for Qt. Not built yet.
1173 * Platform/RunLoop.h:
1174 * Platform/qt: Added.
1175 * Platform/qt/RunLoopQt.cpp: Added.
1176 (RunLoop::TimerObject::TimerObject):
1177 (RunLoop::TimerObject::performWork):
1178 (RunLoop::TimerObject::wakeUp):
1179 (RunLoop::TimerObject::timerEvent):
1183 (RunLoop::~RunLoop):
1185 (RunLoop::TimerBase::timerFired):
1186 (RunLoop::TimerBase::TimerBase):
1187 (RunLoop::TimerBase::~TimerBase):
1188 (RunLoop::TimerBase::start):
1189 (RunLoop::TimerBase::stop):
1190 (RunLoop::TimerBase::isActive):
1192 2010-06-30 Sam Weinig <sam@webkit.org>
1194 Reviewed by Darin Adler.
1196 Patch for https://bugs.webkit.org/show_bug.cgi?id=41426
1197 Add ImmutableArray class and WKArrayRef API to go with it. This will be used
1198 in a few follow up patches.
1200 * Shared/ImmutableArray.cpp: Added.
1201 (WebKit::ImmutableArray::ImmutableArray):
1202 (WebKit::ImmutableArray::~ImmutableArray):
1203 * Shared/ImmutableArray.h: Added.
1204 * UIProcess/API/C/WKAPICast.h:
1205 * UIProcess/API/C/WKArray.cpp: Added.
1206 * UIProcess/API/C/WKArray.h: Added.
1207 * UIProcess/API/C/WKBase.h:
1208 * WebKit2.xcodeproj/project.pbxproj:
1210 * win/WebKit2.vcproj:
1212 2010-06-30 Anders Carlsson <andersca@apple.com>
1214 Reviewed by Adam Roben.
1216 Add WebProcessProxy::send
1217 https://bugs.webkit.org/show_bug.cgi?id=41416
1219 * Platform/CoreIPC/Connection.h:
1220 * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
1221 (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
1222 (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
1223 (WebKit::ChunkedUpdateDrawingAreaProxy::update):
1224 * UIProcess/WebContext.cpp:
1225 (WebKit::WebContext::postMessageToInjectedBundle):
1226 * UIProcess/WebPageProxy.cpp:
1227 (WebKit::WebPageProxy::initializeWebPage):
1228 (WebKit::WebPageProxy::reinitializeWebPage):
1229 (WebKit::WebPageProxy::close):
1230 (WebKit::WebPageProxy::tryClose):
1231 (WebKit::WebPageProxy::loadURL):
1232 (WebKit::WebPageProxy::stopLoading):
1233 (WebKit::WebPageProxy::reload):
1234 (WebKit::WebPageProxy::goForward):
1235 (WebKit::WebPageProxy::goBack):
1236 (WebKit::WebPageProxy::setFocused):
1237 (WebKit::WebPageProxy::setActive):
1238 (WebKit::WebPageProxy::mouseEvent):
1239 (WebKit::WebPageProxy::wheelEvent):
1240 (WebKit::WebPageProxy::keyEvent):
1241 (WebKit::WebPageProxy::receivedPolicyDecision):
1242 (WebKit::WebPageProxy::runJavaScriptInMainFrame):
1243 (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
1244 (WebKit::WebPageProxy::preferencesDidChange):
1245 * UIProcess/WebProcessProxy.cpp:
1246 (WebKit::WebProcessProxy::WebProcessProxy):
1247 (WebKit::WebProcessProxy::sendMessage):
1248 * UIProcess/WebProcessProxy.h:
1249 (WebKit::WebProcessProxy::connection):
1250 (WebKit::WebProcessProxy::send):
1252 2010-06-29 Anders Carlsson <andersca@apple.com>
1254 Reviewed by Sam Weinig.
1256 Add a private Message class template
1257 https://bugs.webkit.org/show_bug.cgi?id=41370
1259 * Platform/CoreIPC/Connection.h:
1260 (CoreIPC::Connection::Message::Message):
1261 (CoreIPC::Connection::Message::arguments):
1263 2010-06-28 John Gregg <johnnyg@google.com>
1265 Unreviewed, build fix (removing merge conflict from previous).
1267 * Configurations/FeatureDefines.xcconfig:
1269 2010-06-23 John Gregg <johnnyg@google.com>
1271 Reviewed by Kent Tamura.
1273 add ENABLE_DIRECTORY_UPLOAD build support
1274 https://bugs.webkit.org/show_bug.cgi?id=41100
1276 * Configurations/FeatureDefines.xcconfig:
1278 2010-06-28 Sam Weinig <sam@webkit.org>
1280 Rubber-stamped Geoffrey Garen.
1282 Add WKBundleFrameIsMainFrame to exports file.
1286 2010-06-28 Sam Weinig <sam@webkit.org>
1288 Reviewed by Anders Carlsson.
1290 Patch for https://bugs.webkit.org/show_bug.cgi?id=41288
1291 WebKit2: Add frame API for InjectedBundle code
1293 * WebKit2.xcodeproj/project.pbxproj:
1294 * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: Added.
1295 (WKBundleFrameIsMainFrame):
1296 (WKBundleFrameGetURL):
1297 * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: Added.
1298 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1299 (WKBundlePageGetMainFrame):
1300 * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1301 * WebProcess/WebPage/WebFrame.cpp:
1302 (WebKit::WebFrame::isMainFrame):
1303 (WebKit::WebFrame::url):
1304 * WebProcess/WebPage/WebFrame.h:
1305 * WebProcess/WebPage/WebPage.cpp:
1306 * WebProcess/WebPage/WebPage.h:
1307 (WebKit::WebPage::mainFrame):
1309 * win/WebKit2.vcproj:
1311 2010-06-27 Mark Rowe <mrowe@apple.com>
1313 Rubber-stamped by Maciej Stachowiak.
1315 Update guards related to blocks to check whether __BLOCKS__ is defined, rather than checking its value.
1316 This matches how similar checks are performed in system headers, and avoids a compile error when __BLOCKS__
1319 * UIProcess/API/C/WKPage.cpp:
1320 * UIProcess/API/C/WKPage.h:
1321 * UIProcess/API/C/WKPagePrivate.h:
1323 2010-06-26 Tony Gentilcore <tonyg@chromium.org>
1325 Reviewed by Dimitri Glazkov.
1327 Add an ENABLE_WEB_TIMING option for enabling Web Timing support.
1328 https://bugs.webkit.org/show_bug.cgi?id=38924
1330 * Configurations/FeatureDefines.xcconfig:
1332 2010-06-25 Steve Falkenburg <sfalken@apple.com>
1336 * win/WebKit2.vcproj:
1338 2010-06-25 Ada Chan <adachan@apple.com>
1340 Rubber-stamped by Mark Rowe.
1342 Add additional include search paths relative to $(WebKitLibrariesDir) to fix a build.
1344 * win/WebKit2.vcproj:
1346 2010-06-25 Sam Weinig <sam@webkit.org>
1348 Reviewed by Anders Carlsson.
1350 WKBundlePageRenderTreeExternalRepresentation really needs to be
1351 WKBundlePageCopyRenderTreeExternalRepresentation so we don't have dangling
1352 pointers and adhere to naming conventions.
1354 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1355 (WKBundlePageCopyRenderTreeExternalRepresentation):
1356 * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
1359 2010-06-24 Steve Falkenburg <sfalken@apple.com>
1363 * win/WebKit2.make: Added.
1364 * win/WebKit2.submit.sln: Added.
1366 2010-06-24 Steve Falkenburg <sfalken@apple.com>
1370 * win/WebKit2WebProcess.vcproj:
1372 2010-06-24 Sam Weinig <sam@webkit.org>
1374 Reviewed by Brady Eidson.
1376 Add WKBundlePageRenderTreeExternalRepresentation for WebKitTestRunner.
1378 * WebKit2.xcodeproj/project.pbxproj:
1379 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1380 (WKBundlePageRenderTreeExternalRepresentation):
1381 * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Added.
1382 * WebProcess/WebPage/WebPage.cpp:
1383 (WebKit::WebPage::renderTreeExternalRepresentation):
1384 (WebKit::WebPage::getRenderTreeExternalRepresentation):
1385 * WebProcess/WebPage/WebPage.h:
1387 * win/WebKit2.vcproj:
1389 2010-06-24 John Sullivan <sullivan@apple.com>
1391 Rubber-stamped by Ada Chan.
1394 Added _WKNavigationDataRelease and _WKNavigationDataRetain.
1396 2010-06-24 John Sullivan <sullivan@apple.com>
1398 Rubber-stamped by Anders Carlsson.
1401 Added _WKPageReloadFromOrigin.
1403 2010-06-24 Sam Weinig <sam@webkit.org>
1405 Reviewed by Anders Carlsson.
1407 Fix for https://bugs.webkit.org/show_bug.cgi?id=41168
1408 <rdar://problem/8124605>
1409 Webkit2: Add WKPageReloadFromOrigin() to match old-WebKit functionality
1411 * UIProcess/API/C/WKPage.cpp:
1413 (WKPageReloadFromOrigin):
1414 * UIProcess/API/C/WKPage.h:
1415 * UIProcess/WebPageProxy.cpp:
1416 (WebKit::WebPageProxy::reload):
1417 * UIProcess/WebPageProxy.h:
1418 * WebProcess/WebPage/WebPage.cpp:
1419 (WebKit::WebPage::reload):
1420 (WebKit::WebPage::didReceiveMessage):
1421 * WebProcess/WebPage/WebPage.h:
1423 2010-06-24 Adam Roben <aroben@apple.com>
1427 Fixes <http://webkit.org/b/41158>.
1429 Reviewed by Anders Carlsson.
1431 * Shared/win/UpdateChunk.cpp: Updated header name.
1433 * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: Added.
1434 (WebKit::PluginInfoStore::pluginDirectories):
1435 (WebKit::PluginInfoStore::pluginPathsInDirectory):
1436 (WebKit::PluginInfoStore::getPluginInfo):
1437 (WebKit::PluginInfoStore::shouldUsePlugin):
1440 * win/WebKit2.vcproj: Added UIProcess/Plugins to the include path for
1441 all configurations. Added UIProcess/Plugins files to the project.
1443 2010-06-23 Anders Carlsson <andersca@apple.com>
1445 Reviewed by Sam Weinig.
1447 Have the UI process compute the plug-in data
1448 https://bugs.webkit.org/show_bug.cgi?id=41118
1450 * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:
1451 (WebProcessProxyMessage::):
1452 Add GetPlugin message kind.
1454 * Shared/WebCoreArgumentCoders.h:
1455 Add argument coders for PluginInfo and MimeClassInfo.
1457 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
1458 (WebKit::safeCreateCFString):
1459 (WebKit::PluginInfoStore::pluginPathsInDirectory):
1460 (WebKit::PluginInfoStore::getPluginInfo):
1461 Use safeCreateCFString.
1463 * UIProcess/WebProcessProxy.cpp:
1464 (WebKit::WebProcessProxy::getPlugins):
1465 Ask the plug-in info store for the plug-in list.
1467 (WebKit::WebProcessProxy::didReceiveSyncMessage):
1470 * UIProcess/WebProcessProxy.h:
1471 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1472 (WebKit::WebFrameLoaderClient::objectContentType):
1475 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1476 (WebKit::WebPlatformStrategies::populatePluginCache):
1477 Send a sync GetPlugins message.
1479 2010-06-23 Anders Carlsson <andersca@apple.com>
1481 Reviewed by Dan Bernstein.
1483 Add ArgumentCoder for vectors.
1485 * Platform/CoreIPC/ArgumentCoders.h:
1488 2010-06-23 Anders Carlsson <andersca@apple.com>
1490 Reviewed by Dan Bernstein.
1492 Rename WebCoreTypeArgumentMarshalling.h to WebCoreArgumentCoders.h
1494 * Shared/WebCoreArgumentCoders.h: Copied from Shared/WebCoreTypeArgumentMarshalling.h.
1495 * Shared/WebCoreTypeArgumentMarshalling.h: Removed.
1496 * Shared/WebEvent.h:
1497 * Shared/WebNavigationDataStore.h:
1498 * Shared/WebPreferencesStore.h:
1499 * Shared/mac/UpdateChunk.cpp:
1500 * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
1501 * UIProcess/WebContext.cpp:
1502 * UIProcess/WebPageProxy.cpp:
1503 * WebKit2.xcodeproj/project.pbxproj:
1504 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1505 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1506 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1507 * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp:
1508 * WebProcess/WebPage/WebPage.cpp:
1509 * WebProcess/WebProcess.cpp:
1511 2010-06-23 Anders Carlsson <andersca@apple.com>
1513 Reviewed by Dan Bernstein.
1515 MessageIDs should always have the most significant bit zeroed out
1516 https://bugs.webkit.org/show_bug.cgi?id=41112
1518 The most significant bit is used by the Mac implementation of CoreIPC, and
1519 should always be zero in MessageID objects.
1521 * Platform/CoreIPC/Connection.cpp:
1522 (CoreIPC::Connection::waitForMessage):
1523 * Platform/CoreIPC/MessageID.h:
1524 (CoreIPC::MessageID::):
1525 (CoreIPC::MessageID::MessageID):
1526 (CoreIPC::MessageID::operator==):
1527 (CoreIPC::MessageID::fromInt):
1528 (CoreIPC::MessageID::isSync):
1529 (CoreIPC::MessageID::stripMostSignificantBit):
1530 * Platform/CoreIPC/mac/ConnectionMac.cpp:
1531 (CoreIPC::Connection::sendOutgoingMessage):
1532 (CoreIPC::createArgumentDecoder):
1534 2010-06-23 John Sullivan <sullivan@apple.com>
1536 Rubber-stamped by Anders Carlsson.
1539 Added yet another symbol needed by Mac clients.
1541 2010-06-23 John Sullivan <sullivan@apple.com>
1543 Rubber-stamped by Anders Carlsson.
1546 Added another symbol needed by Mac clients.
1548 2010-06-23 Anders Carlsson <andersca@apple.com>
1550 Reviewed by Sam Weinig.
1552 Rename SimpleArgumentCoder.h to ArgumentCoders.h
1554 * Platform/CoreIPC/ArgumentCoders.h: Copied from Platform/CoreIPC/SimpleArgumentCoder.h.
1555 * Platform/CoreIPC/SimpleArgumentCoder.h: Removed.
1556 * Shared/WebCoreTypeArgumentMarshalling.h:
1557 * WebKit2.xcodeproj/project.pbxproj:
1559 2010-06-23 Anders Carlsson <andersca@apple.com>
1561 Reviewed by Sam Weinig.
1563 Add a plug-in info cache to WebPlatformStrategies
1564 https://bugs.webkit.org/show_bug.cgi?id=41087
1566 This is in preparation for proxying the getPlugins call over to the UI process.
1568 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1569 (WebKit::WebPlatformStrategies::WebPlatformStrategies):
1570 (WebKit::WebPlatformStrategies::populatePluginCache):
1571 (WebKit::WebPlatformStrategies::refreshPlugins):
1572 (WebKit::WebPlatformStrategies::getPluginInfo):
1573 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1575 2010-06-23 Sam Weinig <sam@webkit.org>
1577 Reviewed by John Sullivan.
1579 Stop silently ignoring crashes.
1581 * WebProcess/Launching/mac/WebProcessMain.mm:
1583 2010-06-23 Sam Weinig <sam@webkit.org>
1585 Reviewed by Anders Carlsson.
1587 Add missing include to WKRetainPtr.
1589 * UIProcess/API/cpp/WKRetainPtr.h:
1591 2010-06-23 Sam Weinig <sam@webkit.org>
1593 Reviewed by Anders Carlsson.
1595 Fix for https://bugs.webkit.org/show_bug.cgi?id=41073
1596 WebKit2: Flesh out more of the InjectedBundle client API
1598 * WebProcess/InjectedBundle/API/c/WKBundle.h:
1599 * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1600 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1601 (WebKit::InjectedBundle::willDestroyPage):
1602 * WebProcess/InjectedBundle/InjectedBundle.h:
1603 * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp:
1604 (WebKit::InjectedBundlePageClient::didStartProvisionalLoadForFrame):
1605 (WebKit::InjectedBundlePageClient::didReceiveServerRedirectForProvisionalLoadForFrame):
1606 (WebKit::InjectedBundlePageClient::didFailProvisionalLoadWithErrorForFrame):
1607 (WebKit::InjectedBundlePageClient::didCommitLoadForFrame):
1608 (WebKit::InjectedBundlePageClient::didFinishLoadForFrame):
1609 (WebKit::InjectedBundlePageClient::didFailLoadWithErrorForFrame):
1610 (WebKit::InjectedBundlePageClient::didReceiveTitleForFrame):
1611 * WebProcess/InjectedBundle/InjectedBundlePageClient.h:
1612 * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
1613 (WebKit::InjectedBundle::load): Add some error logging on failure to load the bundle.
1614 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1615 (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1616 (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1617 (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
1618 (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
1619 (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
1620 (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
1621 (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
1622 * WebProcess/WebPage/WebPage.cpp:
1623 (WebKit::WebPage::close):
1626 2010-06-22 Anders Carlsson <andersca@apple.com>
1628 Reviewed by Sam Weinig.
1630 Add a SimpleArgumentCoder class template that works on POD types
1631 https://bugs.webkit.org/show_bug.cgi?id=41023
1633 * Platform/CoreIPC/SimpleArgumentCoder.h: Added.
1634 (CoreIPC::SimpleArgumentCoder::encode):
1635 (CoreIPC::SimpleArgumentCoder::decode):
1636 * Shared/WebCoreTypeArgumentMarshalling.h:
1638 * WebKit2.xcodeproj/project.pbxproj:
1640 2010-06-22 Anders Carlsson <andersca@apple.com>
1642 Reviewed by Sam Weinig.
1644 Use the ArgumentCoder class template for decoding
1645 https://bugs.webkit.org/show_bug.cgi?id=41021
1647 * Platform/CoreIPC/ArgumentCoder.h:
1648 (CoreIPC::ArgumentCoder::decode):
1649 * Platform/CoreIPC/ArgumentDecoder.h:
1650 (CoreIPC::ArgumentDecoder::decode):
1651 * Shared/WebCoreTypeArgumentMarshalling.h:
1654 2010-06-22 Anders Carlsson <andersca@apple.com>
1656 Reviewed by Dan Bernstein.
1658 Change the encode functions to be specializations of a class template
1659 https://bugs.webkit.org/show_bug.cgi?id=41015
1661 * Platform/CoreIPC/ArgumentCoder.h: Added.
1662 (CoreIPC::ArgumentCoder::encode):
1663 * Platform/CoreIPC/ArgumentEncoder.h:
1664 (CoreIPC::ArgumentEncoder::encode):
1665 * Shared/WebCoreTypeArgumentMarshalling.h:
1667 * WebKit2.xcodeproj/project.pbxproj:
1669 2010-06-22 Anders Carlsson <andersca@apple.com>
1671 Reviewed by Sam Weinig.
1673 Implement PluginInfoStore::shouldUsePlugin.
1675 * UIProcess/Plugins/PluginInfoStore.h:
1676 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
1677 (WebKit::PluginInfoStore::getPluginInfo):
1678 (WebKit::PluginInfoStore::shouldUsePlugin):
1679 * WebKit2.xcodeproj/project.pbxproj:
1681 2010-06-21 Anders Carlsson <andersca@apple.com>
1683 Reviewed by Sam Weinig.
1685 Support reading plug-in info from Carbon resources
1686 https://bugs.webkit.org/show_bug.cgi?id=40959
1688 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
1689 (WebKit::ResourceMap::ResourceMap):
1690 (WebKit::ResourceMap::~ResourceMap):
1691 (WebKit::ResourceMap::isValid):
1692 (WebKit::getStringListResource):
1693 (WebKit::getPluginInfoFromCarbonResources):
1694 (WebKit::PluginInfoStore::getPluginInfo):
1696 2010-06-21 Anders Carlsson <andersca@apple.com>
1700 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
1701 (WebKit::PluginInfoStore::getPluginInfo):
1703 2010-06-21 Anders Carlsson <andersca@apple.com>
1705 Reviewed by Sam Weinig.
1707 Have PluginInfoStoreMac actually get plug-in info and populate the plug-in list
1708 https://bugs.webkit.org/show_bug.cgi?id=40957
1710 * UIProcess/Plugins/PluginInfoStore.cpp:
1711 (WebKit::PluginInfoStore::loadPluginsIfNecessary):
1712 (WebKit::PluginInfoStore::loadPluginsInDirectory):
1713 (WebKit::PluginInfoStore::loadPlugin):
1714 (WebKit::PluginInfoStore::getPlugins):
1715 * UIProcess/Plugins/PluginInfoStore.h:
1716 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm: Added.
1717 (WebKit::PluginInfoStore::pluginDirectories):
1718 (WebKit::PluginInfoStore::pluginPathsInDirectory):
1719 (WebKit::getPluginArchitecture):
1720 (WebKit::getPluginInfoFromPropertyLists):
1721 (WebKit::PluginInfoStore::getPluginInfo):
1722 (WebKit::PluginInfoStore::shouldUsePlugin):
1723 * WebKit2.xcodeproj/project.pbxproj:
1725 2010-06-21 Anders Carlsson <andersca@apple.com>
1727 Reviewed by Sam Weinig.
1729 Add PluginInfoStore class
1730 https://bugs.webkit.org/show_bug.cgi?id=40949
1732 * Shared/WebPreferencesStore.cpp:
1733 (WebKit::WebPreferencesStore::WebPreferencesStore):
1734 * Shared/WebPreferencesStore.h:
1735 (WebKit::WebPreferencesStore::encode):
1736 (WebKit::WebPreferencesStore::decode):
1737 Add plugInsEnabled to the preferences store.
1739 * UIProcess/Plugins: Added.
1740 * UIProcess/Plugins/PluginInfoStore.cpp: Added.
1741 (WebKit::PluginInfoStore::shared):
1742 (WebKit::PluginInfoStore::PluginInfoStore):
1743 (WebKit::PluginInfoStore::refresh):
1744 (WebKit::PluginInfoStore::getPlugins):
1745 * UIProcess/Plugins/PluginInfoStore.h: Added.
1746 * UIProcess/Plugins/mac: Added.
1747 * WebKit2.xcodeproj/project.pbxproj:
1748 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1749 (WebKit::WebPlatformStrategies::refreshPlugins):
1750 (WebKit::WebPlatformStrategies::getPluginInfo):
1751 * WebProcess/WebPage/WebPage.cpp:
1752 (WebKit::WebPage::WebPage):
1754 2010-06-21 Simon Fraser <simon.fraser@apple.com>
1756 Reviewed by Anders Carlsson.
1758 Rename DrawingAreaProxyUpdateChunk to ChunkedUpdateDrawingArea
1759 https://bugs.webkit.org/show_bug.cgi?id=40948
1761 Rename UIProcess version of DrawingAreaUpdateChunk to ChunkedUpdateDrawingAreaProxy,
1762 and rename the Mac/Win versions of the various DrawingArea files too.
1764 Also rename the DrawingAreaUpdateChunkType enum to ChunkedUpdateDrawingAreaType.
1766 * UIProcess/API/mac/WKView.mm:
1767 (-[WKView initWithFrame:pageNamespaceRef:]):
1768 * UIProcess/ChunkedUpdateDrawingArea.cpp: Removed.
1769 * UIProcess/ChunkedUpdateDrawingArea.h: Removed.
1770 * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp: Added.
1771 (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy):
1772 (WebKit::ChunkedUpdateDrawingAreaProxy::~ChunkedUpdateDrawingAreaProxy):
1773 (WebKit::ChunkedUpdateDrawingAreaProxy::paint):
1774 (WebKit::ChunkedUpdateDrawingAreaProxy::setSize):
1775 (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible):
1776 (WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
1777 (WebKit::ChunkedUpdateDrawingAreaProxy::update):
1778 (WebKit::ChunkedUpdateDrawingAreaProxy::didReceiveMessage):
1779 * UIProcess/ChunkedUpdateDrawingAreaProxy.h: Added.
1780 (WebKit::ChunkedUpdateDrawingAreaProxy::encode):
1781 * UIProcess/DrawingAreaProxy.h:
1782 (WebKit::DrawingAreaProxy::):
1783 * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm: Added.
1784 (WebKit::ChunkedUpdateDrawingAreaProxy::page):
1785 (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
1786 (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
1787 (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
1788 (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
1789 * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm: Removed.
1790 * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp: Added.
1791 (WebKit::ChunkedUpdateDrawingAreaProxy::page):
1792 (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore):
1793 (WebKit::ChunkedUpdateDrawingAreaProxy::invalidateBackingStore):
1794 (WebKit::ChunkedUpdateDrawingAreaProxy::platformPaint):
1795 (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore):
1796 * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp: Removed.
1797 * UIProcess/win/WebView.cpp:
1798 (WebKit::WebView::WebView):
1799 * WebKit2.xcodeproj/project.pbxproj:
1800 * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp: Added.
1801 (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
1802 (WebKit::ChunkedUpdateDrawingArea::~ChunkedUpdateDrawingArea):
1803 (WebKit::ChunkedUpdateDrawingArea::invalidateWindow):
1804 (WebKit::ChunkedUpdateDrawingArea::invalidateContentsAndWindow):
1805 (WebKit::ChunkedUpdateDrawingArea::invalidateContentsForSlowScroll):
1806 (WebKit::ChunkedUpdateDrawingArea::scroll):
1807 (WebKit::ChunkedUpdateDrawingArea::setNeedsDisplay):
1808 (WebKit::ChunkedUpdateDrawingArea::display):
1809 (WebKit::ChunkedUpdateDrawingArea::scheduleDisplay):
1810 (WebKit::ChunkedUpdateDrawingArea::setSize):
1811 (WebKit::ChunkedUpdateDrawingArea::suspendPainting):
1812 (WebKit::ChunkedUpdateDrawingArea::resumePainting):
1813 (WebKit::ChunkedUpdateDrawingArea::didUpdate):
1814 (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
1815 * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Added.
1816 * WebProcess/WebPage/DrawingArea.cpp:
1817 (WebKit::DrawingArea::create):
1818 * WebProcess/WebPage/DrawingArea.h:
1819 (WebKit::DrawingArea::):
1820 * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp: Removed.
1821 * WebProcess/WebPage/DrawingAreaUpdateChunk.h: Removed.
1822 * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp: Added.
1823 (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
1824 * WebProcess/WebPage/mac/DrawingAreaUpdateChunkMac.cpp: Removed.
1825 * WebProcess/WebPage/win/ChunkedUpdateDrawingAreaWin.cpp: Added.
1826 (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
1827 * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp: Removed.
1828 * win/WebKit2.vcproj:
1830 2010-06-21 Simon Fraser <simon.fraser@apple.com>
1832 Reviewed by Anders Carlsson.
1834 Rename DrawingAreaProxyUpdateChunk to ChunkedUpdateDrawingArea
1835 https://bugs.webkit.org/show_bug.cgi?id=40948
1837 Rename DrawingAreaUpdateChunk to ChunkedUpdateDrawingArea.
1839 * UIProcess/API/mac/WKView.mm:
1840 (-[WKView initWithFrame:pageNamespaceRef:]):
1841 * UIProcess/ChunkedUpdateDrawingArea.cpp: Added.
1842 (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea):
1843 (WebKit::ChunkedUpdateDrawingArea::~ChunkedUpdateDrawingArea):
1844 (WebKit::ChunkedUpdateDrawingArea::paint):
1845 (WebKit::ChunkedUpdateDrawingArea::setSize):
1846 (WebKit::ChunkedUpdateDrawingArea::setPageIsVisible):
1847 (WebKit::ChunkedUpdateDrawingArea::didSetSize):
1848 (WebKit::ChunkedUpdateDrawingArea::update):
1849 (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage):
1850 * UIProcess/ChunkedUpdateDrawingArea.h: Added.
1851 (WebKit::ChunkedUpdateDrawingArea::encode):
1852 * UIProcess/DrawingAreaProxyUpdateChunk.cpp: Removed.
1853 * UIProcess/DrawingAreaProxyUpdateChunk.h: Removed.
1854 * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm:
1855 (WebKit::ChunkedUpdateDrawingArea::page):
1856 (WebKit::ChunkedUpdateDrawingArea::ensureBackingStore):
1857 (WebKit::ChunkedUpdateDrawingArea::invalidateBackingStore):
1858 (WebKit::ChunkedUpdateDrawingArea::platformPaint):
1859 (WebKit::ChunkedUpdateDrawingArea::drawUpdateChunkIntoBackingStore):
1860 * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp:
1861 (WebKit::ChunkedUpdateDrawingArea::page):
1862 (WebKit::ChunkedUpdateDrawingArea::ensureBackingStore):
1863 (WebKit::ChunkedUpdateDrawingArea::invalidateBackingStore):
1864 (WebKit::ChunkedUpdateDrawingArea::platformPaint):
1865 (WebKit::ChunkedUpdateDrawingArea::drawUpdateChunkIntoBackingStore):
1866 * UIProcess/win/WebView.cpp:
1867 (WebKit::WebView::WebView):
1868 * WebKit2.xcodeproj/project.pbxproj:
1869 * win/WebKit2.vcproj:
1871 2010-06-21 Sam Weinig <sam@webkit.org>
1873 Reviewed by Anders Carlsson.
1875 Patch for https://bugs.webkit.org/show_bug.cgi?id=40940
1876 Add message passing support to the WebKit2 API.
1878 Adds message passing for both InjectedBundle -> WebContext
1879 and WebContext -> InjectedBundle.
1881 * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
1882 (WebProcessMessage::):
1883 * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h: Added.
1884 (WebProcessProxyMessage::):
1886 * UIProcess/API/C/WKContext.cpp:
1887 (WKContextSetInjectedBundleClient):
1888 (WKContextPostMessageToInjectedBundle):
1889 * UIProcess/API/C/WKContext.h:
1890 * UIProcess/WebContext.cpp:
1891 (WebKit::WebContext::initializeInjectedBundleClient):
1892 (WebKit::WebContext::forwardMessageToWebContext):
1893 (WebKit::WebContext::postMessageToInjectedBundle):
1894 * UIProcess/WebContext.h:
1895 * UIProcess/WebContextInjectedBundleClient.cpp: Added.
1896 (WebKit::WebContextInjectedBundleClient::WebContextInjectedBundleClient):
1897 (WebKit::WebContextInjectedBundleClient::initialize):
1898 (WebKit::WebContextInjectedBundleClient::didRecieveMessageFromInjectedBundle):
1899 * UIProcess/WebContextInjectedBundleClient.h: Added.
1900 * UIProcess/WebProcessManager.cpp:
1901 (WebKit::WebProcessManager::processDidClose):
1902 * UIProcess/WebProcessProxy.cpp:
1903 (WebKit::WebProcessProxy::didReceiveInjectedBundleMessage):
1904 (WebKit::WebProcessProxy::didReceiveMessage):
1905 * UIProcess/WebProcessProxy.h:
1906 * WebKit2.xcodeproj/project.pbxproj:
1907 * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1908 (WKBundlePostMessage):
1909 * WebProcess/InjectedBundle/API/c/WKBundle.h:
1910 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1911 (WebKit::InjectedBundle::postMessage):
1912 (WebKit::InjectedBundle::didCreatePage):
1913 (WebKit::InjectedBundle::didRecieveMessage):
1914 * WebProcess/InjectedBundle/InjectedBundle.h:
1915 * WebProcess/WebProcess.cpp:
1916 (WebKit::WebProcess::loadInjectedBundle):
1917 (WebKit::WebProcess::forwardMessageToInjectedBundle):
1918 (WebKit::WebProcess::didReceiveMessage):
1919 * WebProcess/WebProcess.h:
1921 * win/WebKit2.vcproj:
1923 2010-06-21 Anders Carlsson <andersca@apple.com>
1925 Reviewed by Sam Weinig.
1927 Make WebKit2 build with clang++
1929 * Platform/CoreIPC/Connection.h:
1930 * UIProcess/API/mac/WKView.mm:
1932 (-[WKView keyDown:]):
1933 * UIProcess/WebHistoryClient.h:
1934 * UIProcess/WebPageProxy.h:
1935 * WebProcess/WebPage/WebPage.h:
1936 * WebProcess/WebProcess.h:
1938 2010-06-21 Satish Sampath <satish@chromium.org>
1940 Reviewed by Steve Block.
1942 Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
1944 Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
1945 https://bugs.webkit.org/show_bug.cgi?id=40878
1947 * Configurations/FeatureDefines.xcconfig:
1949 2010-06-20 Jessie Berlin <jberlin@apple.com>
1951 Reviewed by Dan Bernstein.
1953 Add #if USE(PLATFORM_STRATEGIES) where WebPlatformStrategies is being used.
1955 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1956 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1957 * WebProcess/WebProcess.cpp:
1958 (WebKit::WebProcess::WebProcess):
1959 Only initialize the web platform strategies if PLATFORM_STRATEGIES is being used.
1961 2010-06-19 Sam Weinig <sam@webkit.org>
1963 Reviewed by Anders Carlsson.
1965 Fix for https://bugs.webkit.org/show_bug.cgi?id=40882
1966 Add ability to have a WebProcess per WebContext.
1968 - Move to a one-to-one correspondence of WebContexts to WebProcessProxies.
1969 - Add explicit shared contexts for general use.
1970 - Only non-shared contexts can use injected bundles.
1972 * UIProcess/API/C/WKContext.cpp:
1974 (WKContextCreateWithInjectedBundlePath):
1975 (WKContextGetSharedProcessContext):
1976 (WKContextGetSharedThreadContext):
1977 * UIProcess/API/C/WKContext.h:
1978 * UIProcess/API/C/WKContextPrivate.h:
1979 Change API for WKContext to no longer take a WKProcessModel type and instead
1980 have explicit Create/Get functions for the different kind of contexts. Added
1981 two shared contexts, one threaded, one process, and made the threaded on private
1984 * UIProcess/API/mac/WKView.mm:
1985 (-[WKView initWithFrame:]):
1986 Make WKViews that don't have an explicit context use the shared process
1989 * UIProcess/Launcher/WebProcessLauncher.h:
1990 * UIProcess/Launcher/mac/WebProcessLauncher.mm:
1991 (WebKit::launchWebProcess):
1992 * UIProcess/Launcher/win/WebProcessLauncher.cpp:
1993 (WebKit::launchWebProcess):
1994 Use a boolean argument to note whether we are using a thread or a process
1995 instead of using the process model enum.
1997 * UIProcess/ProcessModel.h:
1999 Convert to using explicit Shared modifier for shared contexts.
2001 * UIProcess/WebContext.cpp:
2002 (WebKit::WebContext::sharedProcessContext):
2003 (WebKit::WebContext::sharedThreadContext):
2004 (WebKit::WebContext::ensureWebProcess):
2005 (WebKit::WebContext::createWebPage):
2006 (WebKit::WebContext::reviveIfNecessary):
2007 * UIProcess/WebContext.h:
2008 (WebKit::WebContext::create):
2009 (WebKit::WebContext::process):
2010 * UIProcess/WebPageNamespace.cpp:
2011 (WebKit::WebPageNamespace::createWebPage):
2012 (WebKit::WebPageNamespace::preferencesDidChange):
2013 (WebKit::WebPageNamespace::getStatistics):
2014 * UIProcess/WebPageNamespace.h:
2015 (WebKit::WebPageNamespace::process):
2016 (WebKit::WebPageNamespace::reviveIfNecessary):
2017 Move WebProcessProxy creation logic up into WebContext.
2019 * UIProcess/WebProcessManager.cpp:
2020 (WebKit::WebProcessManager::getWebProcess):
2021 (WebKit::WebProcessManager::processDidClose):
2022 * UIProcess/WebProcessManager.h:
2023 Keep a map of WebContexts to WebProcessProxies in addition to the two
2026 * UIProcess/WebProcessProxy.cpp:
2027 (WebKit::WebProcessProxy::create):
2028 (WebKit::WebProcessProxy::WebProcessProxy):
2029 (WebKit::WebProcessProxy::connect):
2030 (WebKit::WebProcessProxy::didClose):
2031 * UIProcess/WebProcessProxy.h:
2032 Store a WebContext instead of the process model.
2037 2010-06-18 Anders Carlsson <andersca@apple.com>
2039 Reviewed by Sam Weinig.
2041 Make WebCoreSystemInterface.h a C++ only header
2042 https://bugs.webkit.org/show_bug.cgi?id=40867
2044 * WebKit2.xcodeproj/project.pbxproj:
2045 * WebProcess/WebCoreSupport/mac/WebSystemInterface.h:
2046 * WebProcess/WebCoreSupport/mac/WebSystemInterface.m: Removed.
2047 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: Copied from WebKit2/WebProcess/WebCoreSupport/mac/WebSystemInterface.m.
2050 2010-06-18 Anders Carlsson <andersca@apple.com>
2052 Reviewed by Sam Weinig.
2054 Add platform strategies for WebKit2.
2055 https://bugs.webkit.org/show_bug.cgi?id=40863
2057 * WebKit2.xcodeproj/project.pbxproj:
2058 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Added.
2059 (WebKit::WebPlatformStrategies::initialize):
2060 (WebKit::WebPlatformStrategies::WebPlatformStrategies):
2061 (WebKit::WebPlatformStrategies::createPluginStrategy):
2062 (WebKit::WebPlatformStrategies::refreshPlugins):
2063 (WebKit::WebPlatformStrategies::getPluginInfo):
2064 * WebProcess/WebCoreSupport/WebPlatformStrategies.h: Added.
2065 * WebProcess/WebProcess.cpp:
2066 (WebKit::WebProcess::WebProcess):
2068 2010-06-18 Sam Weinig <weinig@apple.com>
2070 Rolling http://trac.webkit.org/changeset/61297 back in.
2072 * WebKit2.xcodeproj/project.pbxproj:
2073 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Added.
2074 (WKBundlePageSetClient):
2075 (WKBundlePageGetMainFrameURL):
2076 * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Added.
2077 * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Added.
2078 (WebKit::InjectedBundlePageClient::InjectedBundlePageClient):
2079 (WebKit::InjectedBundlePageClient::initialize):
2080 (WebKit::InjectedBundlePageClient::didClearWindowObjectForFrame):
2081 * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Added.
2082 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2083 (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2084 * WebProcess/WebPage/WebPage.cpp:
2085 (WebKit::WebPage::initializeInjectedBundleClient):
2086 (WebKit::WebPage::mainFrameURL):
2087 * WebProcess/WebPage/WebPage.h:
2088 (WebKit::WebPage::injectedBundleClient):
2090 * win/WebKit2.vcproj:
2092 2010-06-17 Anders Carlsson <andersca@apple.com>
2094 Reviewed by Sam Weinig.
2096 Fix a race condition during startup where we would never send the InitializeConnection message to the server.
2098 * Platform/CoreIPC/mac/ConnectionMac.cpp:
2099 (CoreIPC::Connection::open):
2101 2010-06-17 Ada Chan <adachan@apple.com>
2103 Rolling out http://trac.webkit.org/changeset/61297 due to build errors.
2105 * WebKit2.xcodeproj/project.pbxproj:
2106 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Removed.
2107 * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Removed.
2108 * WebProcess/InjectedBundle/InjectedBundlePageClient.cpp: Removed.
2109 * WebProcess/InjectedBundle/InjectedBundlePageClient.h: Removed.
2110 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2111 (WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2112 * WebProcess/WebPage/WebPage.cpp:
2113 * WebProcess/WebPage/WebPage.h:
2115 * win/WebKit2.vcproj:
2117 2010-06-15 Sam Weinig <sam@webkit.org>
2119 Reviewed by Anders Carlsson.
2121 Fix for <rdar://problem/8010805>
2122 Assertion failure ("mainThreadPthread") in isMainThread() mousing over cnn.com in Mini Browser
2124 Don't use WebCore::String::operator NSString*() from the UIProcess, since it uses
2125 StringImpl::createCFString() which expects to be called from WebCore's main thread.
2127 * UIProcess/API/mac/PageClientImpl.h:
2128 * UIProcess/API/mac/PageClientImpl.mm:
2129 (WebKit::nsStringFromWebCoreString):
2130 (WebKit::PageClientImpl::toolTipChanged):
2131 * UIProcess/API/mac/WKView.mm:
2132 (-[WKView view:stringForToolTip:point:userData:]):
2134 2010-06-15 Sam Weinig <sam@webkit.org>
2136 Reviewed by Anders Carlsson.
2138 Fix for https://bugs.webkit.org/show_bug.cgi?id=40630
2139 WebKit2: Add mechanism to inject code into the WebProcess on startup
2141 Add initial InjectedBundle support.
2143 * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
2144 (WebProcessMessage::):
2145 Add new LoadInjectedBundle message kind.
2147 * UIProcess/API/C/WKContext.cpp:
2150 (WKContextCreateWithInjectedBundlePath):
2151 * UIProcess/API/C/WKContext.h:
2152 Rename WKContextCreateWithProcessModel to WKContextCreate and add
2153 WKContextCreateWithInjectedBundlePath for creating a context with
2156 * UIProcess/WebContext.cpp:
2157 (WebKit::WebContext::WebContext):
2158 * UIProcess/WebContext.h:
2159 (WebKit::WebContext::create):
2160 (WebKit::WebContext::processModel):
2161 (WebKit::WebContext::bundlePath):
2162 * UIProcess/WebPageNamespace.cpp:
2163 (WebKit::WebPageNamespace::ensureWebProcess):
2164 (WebKit::WebPageNamespace::reviveIfNecessary):
2165 * UIProcess/WebProcessManager.cpp:
2166 (WebKit::WebProcessManager::getWebProcess):
2167 * UIProcess/WebProcessManager.h:
2168 * UIProcess/WebProcessProxy.cpp:
2169 (WebKit::WebProcessProxy::create):
2170 (WebKit::WebProcessProxy::WebProcessProxy):
2171 * UIProcess/WebProcessProxy.h:
2172 Thread the bundle path through process creation.
2174 * WebProcess/InjectedBundle: Added.
2175 * WebProcess/InjectedBundle/API: Added.
2176 * WebProcess/InjectedBundle/API/c: Added.
2177 * WebProcess/InjectedBundle/API/c/WKBundle.cpp: Added.
2178 (WKBundleSetClient):
2179 * WebProcess/InjectedBundle/API/c/WKBundle.h: Added.
2180 * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h: Added.
2184 * WebProcess/InjectedBundle/API/c/WKBundleBase.h: Added.
2185 * WebProcess/InjectedBundle/API/c/WKBundleInitialize.h: Added.
2186 * WebProcess/InjectedBundle/InjectedBundle.cpp: Added.
2187 (WebKit::InjectedBundle::InjectedBundle):
2188 (WebKit::InjectedBundle::~InjectedBundle):
2189 (WebKit::InjectedBundle::initializeClient):
2190 (WebKit::InjectedBundle::didCreatePage):
2191 * WebProcess/InjectedBundle/InjectedBundle.h: Added.
2192 (WebKit::InjectedBundle::create):
2193 Add bundle boilerplate.
2195 * WebProcess/InjectedBundle/mac: Added.
2196 * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: Added.
2197 (WebKit::InjectedBundle::load):
2198 Load the InjectedBundle using CFBundle.
2200 * WebProcess/InjectedBundle/win: Added.
2201 * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: Added.
2202 (WebKit::pathGetFileName):
2203 (WebKit::directoryName):
2204 (WebKit::InjectedBundle::load):
2205 Load the InjectedBundle using HMODULE.
2207 * WebProcess/WebPage/WebPage.cpp:
2208 (WebKit::WebPage::WebPage):
2209 Add initial bundle callback for page creation. More to come.
2211 * WebProcess/WebProcess.cpp:
2212 (WebKit::WebProcess::loadInjectedBundle):
2213 (WebKit::WebProcess::didReceiveMessage):
2214 * WebProcess/WebProcess.h:
2215 (WebKit::WebProcess::injectedBundle):
2216 Load the InjectedBundle on LoadInjectedBundle message.
2218 * WebKit2.xcodeproj/project.pbxproj:
2220 * win/WebKit2.vcproj:
2221 * win/WebKit2Generated.make:
2224 2010-06-15 Darin Adler <darin@apple.com>
2226 Reviewed by Adam Barth.
2228 Move functions out of Frame class that were marked "move to Chrome"
2229 https://bugs.webkit.org/show_bug.cgi?id=39636
2231 * WebProcess/WebPage/WebPage.cpp:
2232 (WebKit::WebPage::tryClose): Call shouldClose on FrameLoader instead of
2233 going through Frame.
2235 2010-06-14 Steve Falkenburg <sfalken@apple.com>
2238 Reorder build event to fix cygwin path issue.
2240 * win/WebKit2Generated.vcproj:
2242 2010-06-14 Steve Falkenburg <sfalken@apple.com>
2245 Add build failure stopping code.
2247 * win/WebKit2WebProcess.vcproj:
2249 2010-06-14 Steve Falkenburg <sfalken@apple.com>
2252 Add build failure stopping code.
2254 * win/WebKit2Generated.vcproj:
2256 2010-06-14 Ada Chan <adachan@apple.com>
2258 Rubber-stamped by Steve Falkenburg.
2260 - Fix the release configuration to use release.vsprops.
2261 - Add Debug_Internal and Debug_All configurations to the WebKit2WebProcess project.
2262 - Fix launchWebProcess() to get the right path to the WebKit2WebProcess executable.
2264 * UIProcess/Launcher/win/WebProcessLauncher.cpp:
2265 (WebKit::launchWebProcess):
2266 * win/WebKit2WebProcess.vcproj:
2268 2010-06-12 Ada Chan <adachan@apple.com>
2270 Unreviewed fix for a linking error with WebKit2LocalizableStringsBundle for Windows release build.
2272 * WebProcess/win/WebLocalizableStrings.cpp:
2275 2010-06-11 Sam Weinig <sam@webkit.org>
2277 Reviewed by Mark Rowe.
2279 Use -Os for optimized builds instead of -02. -02 wasn't giving the
2280 right trade off at this time.
2282 * Configurations/Base.xcconfig:
2284 2010-06-11 Sam Weinig <sam@webkit.org>
2286 Reviewed by Anders Carlsson.
2288 Move WKRetain and WKRelease overloaded functions out of WKRetainPtr
2289 and into the files of the type they overload (eg, WKRetain(WKFrameRef
2290 moves to WKFrame.h)).
2292 * UIProcess/API/C/WKBase.h:
2293 * UIProcess/API/C/WKContext.h:
2294 * UIProcess/API/C/WKFrame.h:
2295 * UIProcess/API/C/WKFramePolicyListener.h:
2296 * UIProcess/API/C/WKNavigationData.h:
2297 * UIProcess/API/C/WKPage.h:
2298 * UIProcess/API/C/WKPageNamespace.h:
2299 * UIProcess/API/C/WKPreferences.h:
2300 * UIProcess/API/C/WKString.h:
2301 * UIProcess/API/C/WKURL.h:
2302 * UIProcess/API/cpp/WKRetainPtr.h:
2303 * UIProcess/API/win/WKView.h:
2305 2010-06-10 John Sullivan <sullivan@apple.com>
2307 Reviewed by Dan Bernstein.
2310 Added another symbol needed by Mac clients.
2312 2010-06-09 Ilya Tikhonovsky <loislo@chromium.org>
2314 Unreviewed build fix.
2316 * WebProcess/WebCoreSupport/WebInspectorClient.h:
2318 2010-06-09 Ilya Tikhonovsky <loislo@chromium.org>
2320 Unreviewed build fix.
2322 WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
2323 data from inspected page to WebInspector as JSON string via http. The native
2324 serialization to JSON string is supported by InspectorValue's classes. This patch
2325 has the implementation of sendMessageToFrontend function. WebKit version of it still
2326 uses ScriptFunctionCall and will be switched to another transport a little bit later.
2327 https://bugs.webkit.org/show_bug.cgi?id=40134
2329 * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
2330 (WebKit::WebInspectorClient::sendMessageToFrontend):
2331 * WebProcess/WebCoreSupport/WebInspectorClient.h:
2333 2010-06-08 Anders Carlsson <andersca@apple.com>
2335 Reviewed by John Sullivan.
2337 <rdar://problem/8071268> WebKit2 URLs are displayed as 1-character strings in log statements
2339 Create a CFString from our WebCore string and then create the CFURL from the CFString.
2341 * UIProcess/API/C/cf/WKURLCF.cpp:
2344 2010-06-08 John Sullivan <sullivan@apple.com>
2346 Rubber-stamped by Anders Carlsson.
2349 Added _WKPageGetEstimatedProgress and _WKFrameGetPage
2351 2010-06-08 Anders Carlsson <andersca@apple.com>
2353 Reviewed by John Sullivan.
2355 Would like a way to query WKPageRef for the current progress value
2356 https://bugs.webkit.org/show_bug.cgi?id=40310
2357 <rdar://problem/8071299>
2359 Add WKPageGetEstimatedProgress. Remove the progress parameter from the didChangeProgress
2360 loader client callback function.
2362 * UIProcess/API/C/WKPage.cpp:
2363 (WKPageGetEstimatedProgress):
2364 * UIProcess/API/C/WKPage.h:
2365 * UIProcess/WebLoaderClient.cpp:
2366 (WebKit::WebLoaderClient::didChangeProgress):
2367 * UIProcess/WebLoaderClient.h:
2368 * UIProcess/WebPageProxy.cpp:
2369 (WebKit::WebPageProxy::WebPageProxy):
2370 (WebKit::WebPageProxy::close):
2371 (WebKit::WebPageProxy::didStartProgress):
2372 (WebKit::WebPageProxy::didChangeProgress):
2373 (WebKit::WebPageProxy::didFinishProgress):
2374 (WebKit::WebPageProxy::processDidExit):
2375 * UIProcess/WebPageProxy.h:
2376 (WebKit::WebPageProxy::estimatedProgress):
2378 2010-06-08 Anders Carlsson <andersca@apple.com>
2380 Reviewed by John Sullivan.
2382 Would like a way to tell which WKPageRef a WKFrameRef is part of
2383 https://bugs.webkit.org/show_bug.cgi?id=40308
2384 <rdar://problem/8071251>
2386 Add and implement WKFrameGetPage.
2388 * UIProcess/API/C/WKFrame.cpp:
2390 * UIProcess/API/C/WKFrame.h:
2391 * UIProcess/WebFrameProxy.h:
2392 (WebKit::WebFrameProxy::page):
2394 2010-06-08 John Sullivan <sullivan@apple.com>
2396 Rubber-stamped by Mark Rowe.
2399 Added a few more symbols needed by Mac clients.
2401 2010-06-08 MORITA Hajime <morrita@google.com>
2403 Unreviewed. An attempt to fix test break.
2405 * Configurations/FeatureDefines.xcconfig:
2407 2010-06-06 MORITA Hajime <morrita@google.com>
2409 Unreviewd, follow up to r60820
2411 https://bugs.webkit.org/show_bug.cgi?id=40219
2412 [Mac] ENABLE_METER_TAG should be enabled
2414 * Configurations/FeatureDefines.xcconfig:
2416 2010-06-05 Mark Rowe <mrowe@apple.com>
2418 Rubber-stamped by Dan Bernstein.
2420 <rdar://problem/8063622> Failure to launch WebProcess.app when framework is outside of the build directory
2422 * Configurations/WebProcess.xcconfig:
2424 2010-06-04 John Sullivan <sullivan@apple.com>
2426 Rubber-stamped by Ada Chan.
2428 Added a couple of symbols needed to start using WKFrameRefs in Mac clients.
2431 Added _WKFrameRelease and _WKFrameRetain.
2433 2010-06-04 Ada Chan <adachan@apple.com>
2435 Reviewed by Anders Carlsson.
2437 http://bugs.webkit.org/show_bug.cgi?id=40186
2439 Need to close WebPageProxy when the WebView is destroyed.
2440 Also, WebPageProxy shouldn't hold an OwnPtr to the PageClient, which is the WebView on Windows.
2442 * UIProcess/WebPageProxy.cpp:
2443 (WebKit::WebPageProxy::WebPageProxy):
2444 (WebKit::WebPageProxy::setPageClient):
2445 * UIProcess/WebPageProxy.h:
2446 * UIProcess/win/WebView.cpp:
2447 (WebKit::WebView::close):
2449 2010-06-03 Ada Chan <adachan@apple.com>
2451 Reviewed by Adam Roben.
2453 https://bugs.webkit.org/show_bug.cgi?id=40152
2455 Need to remove the WebView from WindowMessageBroadcaster's listeners list when the WebView is destroyed.
2457 * UIProcess/API/win/WKView.cpp:
2458 (WKViewSetHostWindow): Expose API to change the host window of a WKView.
2459 (WKViewWindowAncestryDidChange): Expose API to allow clients to notify WebKit when a WKView's window ancestry has changed.
2460 * UIProcess/API/win/WKView.h:
2461 * UIProcess/win/WebView.cpp:
2462 (WebKit::WebView::wndProc): Set the WebView's host window to 0 when it's destroyed. setHostWindow() will call
2463 windowAncestryDidChange(), which will remove this WebView from the WindowMessageBroadcaster's listeners list.
2464 (WebKit::WebView::WebView): Initialize m_isBeingDestroyed.
2465 (WebKit::WebView::setHostWindow): Update the window's parent window and call windowAncestryDidChange().
2466 (WebKit::WebView::close): Set the host window to 0.
2467 * UIProcess/win/WebView.h:
2469 2010-06-04 Tony Gentilcore <tonyg@chromium.org>
2471 Reviewed by Adam Barth.
2473 Utilize new takeFirst() method where appropriate.
2474 https://bugs.webkit.org/show_bug.cgi?id=40089
2476 * Platform/CoreIPC/ArgumentDecoder.cpp:
2477 (CoreIPC::ArgumentDecoder::removeAttachment):
2479 2010-06-03 Ada Chan <adachan@apple.com>
2481 Reviewed by Anders Carlsson.
2483 Add UIProcess\API\cpp to the list of additional include directories.
2484 Allow WKViewRef to work with WKRetainPtr on Windows.
2486 * UIProcess/API/cpp/WKRetainPtr.h:
2487 * win/WebKit2.vcproj:
2489 2010-06-01 Alice Liu <alice.liu@apple.com>
2491 Build fix. Not reviewed
2493 * win/WebKit2Generated.make: Added WKRetainPtr.h
2495 2010-06-01 John Sullivan <sullivan@apple.com>
2497 Rubber-stamped by Anders Carlsson.
2499 Added _WKRetainPtr to .exp file, and added .exp file to Xcode project.
2501 * WebKit2.xcodeproj/project.pbxproj:
2502 Added mac/WebKit2.exp.
2507 2010-06-01 John Sullivan <sullivan@apple.com>
2509 Rubber-stamped by Anders Carlsson.
2511 Fixed typo/wordo that prevented a certain flavor of constructor from compiling.
2513 * UIProcess/API/cpp/WKRetainPtr.h:
2514 (WebKit::WKRetainPtr::WKRetainPtr):
2515 Changed the mysterious "retainWKPtr" to "WKRetain".
2517 2010-05-28 John Sullivan <sullivan@apple.com>
2519 Rubber-stamped by Dan Bernstein.
2521 Add a using declaration for AdoptWK to match the one just added for WKRetainPtr.
2523 * UIProcess/API/cpp/WKRetainPtr.h:
2525 2010-05-28 Sam Weinig <sam@webkit.org>
2527 Reviewed by Anders Carlsson.
2529 Add a using declaration for WKRetainPtr matching what we do for our
2530 other smart pointers and fix the destructor.
2532 * UIProcess/API/cpp/WKRetainPtr.h:
2533 (WebKit::WKRetainPtr::~WKRetainPtr):
2535 2010-05-25 Ada Chan <adachan@apple.com>
2537 Reviewed by Darin Adler.
2539 https://bugs.webkit.org/show_bug.cgi?id=39686
2541 Fix the ProjectGUID of the WebKit2 project so it doesn't conflict with the one in WebKit.
2544 * win/WebKit2.vcproj:
2546 2010-05-24 Ada Chan <adachan@apple.com>
2548 Rubber-stamped by Mark Rowe.
2550 Build fix for 32bit systems.
2554 2010-05-21 Mark Rowe <mrowe@apple.com>
2556 Reviewed by Oliver Hunt.
2558 Teach WebKit2 to build in the Production configuration.
2560 * Configurations/Base.xcconfig: Restrict WebKit2 to Intel, and disable the order file.
2561 * Configurations/BaseTarget.xcconfig: Fix the path to the umbrella framework directory.
2562 This path is used to locate WebCore.framework, so it needs to be relative to WebKit.framework
2563 rather than WebKit2.framework.
2564 * Configurations/WebKit2.xcconfig: Update the install path. Add an exports file.
2565 * Configurations/WebProcess.xcconfig: Update the install path.
2566 * WebKit2.xcodeproj/project.pbxproj: Add a Production configuration.
2567 * mac/WebKit2.exp: Added.
2569 2010-05-21 Steve Block <steveblock@google.com>
2571 Unreviewed build fix for WebKit2
2573 Pass 0 to Page constructor for DeviceOrientationClient.
2574 See http://trac.webkit.org/changeset/59935
2576 * WebProcess/WebPage/WebPage.cpp:
2577 (WebKit::WebPage::WebPage):
2579 2010-05-11 Mark Rowe <mrowe@apple.com>
2583 In r59162 a change was made to WebCore's FeatureDefines.xcconfig that enabled FILE_READER and FILE_WRITER.
2584 The author and reviewer of that patch ignored the carefully-worded warning at the top of that file asking
2585 that changes to the file be kept in sync across JavaScriptCore, WebCore and WebKit, as well as being kept
2586 in sync with build-webkit. This led to WebCore and WebKit having different views of Document's vtable
2587 and results in crashes in Safari shortly after launch when virtual function calls resulted in the wrong
2588 function in WebCore being called.
2590 We fix this by bringing the FeatureDefines.xcconfig files in to sync. Based on the ChangeLog message and
2591 other changes in r59162 it appears that enabling FILE_WRITER was unintentional so that particular change
2594 * Configurations/FeatureDefines.xcconfig:
2596 2010-05-04 Anders Carlsson <andersca@apple.com>
2598 Reviewed by Dan Bernstein.
2600 [WebKit2] The web process doesn't need to paint when the web view is hidden.
2601 https://bugs.webkit.org/show_bug.cgi?id=38549
2603 * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
2604 (DrawingAreaMessage::):
2605 Add SuspendPainting/ResumePainting messages.
2607 * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
2608 (WebKit::DrawingAreaProxyUpdateChunk::setPageIsVisible):
2609 Suspend and resume painting accordingly.
2611 * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp:
2612 (WebKit::DrawingAreaUpdateChunk::DrawingAreaUpdateChunk):
2613 Initialize m_shouldPaint to true.
2615 (WebKit::DrawingAreaUpdateChunk::display):
2616 Return if m_shouldPaint is false.
2618 (WebKit::DrawingAreaUpdateChunk::scheduleDisplay):
2621 (WebKit::DrawingAreaUpdateChunk::setSize):
2622 Assert that we should paint here.
2624 (WebKit::DrawingAreaUpdateChunk::suspendPainting):
2625 Set m_shouldPaint to false and stop the timer.
2627 (WebKit::DrawingAreaUpdateChunk::resumePainting):
2628 Set m_shouldPaint to true and paint if needed.
2630 (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
2631 handle SuspendPainting/ResumePainting messages.
2633 * WebProcess/WebPage/DrawingAreaUpdateChunk.h:
2635 2010-05-03 Anders Carlsson <andersca@apple.com>
2637 Reviewed by Jon Honeycutt.
2639 [WebKit2] WKView should respond to WM_SHOWWINDOW messages
2640 https://bugs.webkit.org/show_bug.cgi?id=38496
2642 * UIProcess/win/WebView.cpp:
2643 (WebKit::WebView::wndProc):
2644 Add case for WM_SHOWWINDOW.
2646 (WebKit::WebView::onShowWindowEvent):
2647 Update the page visibility accordingly.
2649 * UIProcess/win/WebView.h:
2651 2010-05-03 Anders Carlsson <andersca@apple.com>
2653 Reviewed by Dan Bernstein.
2655 Get rid of PageClient::isPageVisible and pass visibility directly in setPageIsVisible
2656 https://bugs.webkit.org/show_bug.cgi?id=38493
2658 * UIProcess/API/mac/PageClientImpl.h:
2659 * UIProcess/API/mac/PageClientImpl.mm:
2660 Remove isPageVisible.
2662 * UIProcess/API/mac/WKView.mm:
2664 New function (moved here from PageClientImpl).
2666 (-[WKView _updateVisibility]):
2667 Call didChangeVisibility.
2669 (-[WKView viewDidMoveToWindow]):
2670 (-[WKView viewDidHide]):
2671 (-[WKView viewDidUnhide]):
2672 Call _updateVisibility.
2674 * UIProcess/DrawingAreaProxy.h:
2675 Rename didChangeVisibility to setPageIsVisible and add an isVisible parameter.
2677 * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
2678 (WebKit::DrawingAreaProxyUpdateChunk::setPageIsVisible):
2679 Don't call WebPageProxy::isVisible.
2681 * UIProcess/DrawingAreaProxyUpdateChunk.h:
2683 * UIProcess/PageClient.h:
2684 Remove isPageVisible.
2686 * UIProcess/WebPageProxy.cpp:
2687 * UIProcess/WebPageProxy.h:
2690 2010-05-03 Anders Carlsson <andersca@apple.com>
2692 Reviewed by Adam Roben.
2694 Implement PageClient::isPageVisible on Windows.
2695 https://bugs.webkit.org/show_bug.cgi?id=38483
2697 * UIProcess/PageClient.h:
2698 * UIProcess/win/WebView.cpp:
2699 (WebKit::WebView::isPageVisible):
2700 * UIProcess/win/WebView.h:
2702 2010-05-03 Anders Carlsson <andersca@apple.com>
2706 * Platform/CoreIPC/win/ConnectionWin.cpp:
2707 (CoreIPC::Connection::sendOutgoingMessage):
2708 * Shared/win/UpdateChunk.cpp:
2709 (WebKit::UpdateChunk::UpdateChunk):
2710 (WebKit::UpdateChunk::encode):
2711 (WebKit::UpdateChunk::decode):
2712 * Shared/win/UpdateChunk.h:
2713 (WebKit::UpdateChunk::rect):
2714 * UIProcess/DrawingAreaProxy.h:
2715 * UIProcess/DrawingAreaProxyUpdateChunk.h:
2716 * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp:
2717 (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
2718 * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp:
2719 (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
2720 * WebProcess/win/WebProcessMain.cpp:
2722 2010-04-30 Anders Carlsson <andersca@apple.com>
2724 Reviewed by Sam Weinig.
2726 https://bugs.webkit.org/show_bug.cgi?id=38415
2727 Have the WKView notify the DrawingAreaProxy when its visibility changes.
2729 * UIProcess/API/mac/PageClientImpl.h:
2730 * UIProcess/API/mac/PageClientImpl.mm:
2731 (WebKit::PageClientImpl::isPageVisible):
2732 * UIProcess/API/mac/WKView.mm:
2733 (-[WKView viewDidMoveToWindow]):
2734 (-[WKView viewDidHide]):
2735 (-[WKView viewDidUnhide]):
2736 * UIProcess/DrawingAreaProxy.h:
2737 * UIProcess/DrawingAreaProxyUpdateChunk.cpp:
2738 (WebKit::DrawingAreaProxyUpdateChunk::DrawingAreaProxyUpdateChunk):
2739 (WebKit::DrawingAreaProxyUpdateChunk::didChangeVisibility):
2740 * UIProcess/DrawingAreaProxyUpdateChunk.h:
2741 * UIProcess/PageClient.h:
2742 * UIProcess/WebPageProxy.cpp:
2743 (WebKit::WebPageProxy::isVisible):
2744 * UIProcess/WebPageProxy.h:
2746 2010-05-03 Jens Alfke <snej@chromium.org>
2748 Reviewed by Darin Fisher.
2750 [chromium] Add "willSendSubmitEvent" hook to WebFrameClient and FrameLoaderClient
2751 https://bugs.webkit.org/show_bug.cgi?id=38397
2753 No tests (functionality is exposed only through native WebKit API.)
2755 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2756 (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
2758 2010-05-01 Sam Weinig <sam@webkit.org>
2760 Reviewed by Anders Carlsson.
2762 Fix for https://bugs.webkit.org/show_bug.cgi?id=38471
2763 Add generic callback mechanism
2765 Added GenericCallback class replacing RenderTreeExternalRepresentationCallback
2766 and ScriptReturnValueCallback.
2769 - Standardize C API callbacks to take the context last.
2770 - Standardize C API callbacks to not have the _f suffix (now the block
2771 variants have a _b suffix).
2772 - Re-write toWK and toRef methods as a set of template functions using
2773 the generic API->implementation mapping information.
2775 * UIProcess/API/C/WKAPICast.h:
2776 * UIProcess/API/C/WKPage.cpp:
2777 (WKPageRunJavaScriptInMainFrame):
2778 (callRunJavaScriptBlockAndRelease):
2779 (disposeRunJavaScriptBlock):
2780 (WKPageRunJavaScriptInMainFrame_b):
2781 (WKPageRenderTreeExternalRepresentation):
2782 (WKPageRenderTreeExternalRepresentation_b):
2783 * UIProcess/API/C/WKPage.h:
2784 * UIProcess/API/C/WKPagePrivate.h:
2785 * UIProcess/GenericCallback.h: Added.
2786 (WebKit::GenericCallback::create):
2787 (WebKit::GenericCallback::~GenericCallback):
2788 (WebKit::GenericCallback::performCallbackWithReturnValue):
2789 (WebKit::GenericCallback::invalidate):
2790 (WebKit::GenericCallback::callbackID):
2791 (WebKit::GenericCallback::generateCallbackID):
2792 (WebKit::GenericCallback::GenericCallback):
2793 * UIProcess/RenderTreeExternalRepresentationCallback.cpp: Removed.
2794 * UIProcess/RenderTreeExternalRepresentationCallback.h: Removed.
2795 * UIProcess/ScriptReturnValueCallback.cpp: Removed.
2796 * UIProcess/ScriptReturnValueCallback.h: Removed.
2797 * UIProcess/WebPageProxy.cpp:
2798 (WebKit::WebPageProxy::didRunJavaScriptInMainFrame):
2799 (WebKit::WebPageProxy::didGetRenderTreeExternalRepresentation):
2800 * UIProcess/WebPageProxy.h:
2801 * WebKit2.xcodeproj/project.pbxproj:
2802 * win/WebKit2.vcproj:
2804 2010-04-30 Sam Weinig <sam@webkit.org>
2808 * Platform/CoreIPC/mac/ConnectionMac.cpp: Add missing #include.
2810 2010-04-30 Sam Weinig <sam@webkit.org>
2812 Reviewed by Anders Carlsson.
2814 https://bugs.webkit.org/show_bug.cgi?id=38413
2815 Add callback based API to get the textual representation of the RenderTree.
2817 - Also ensures that any pending callbacks are invalidated if the WebPage
2818 closes (expectedly or unexpectedly).
2819 - A follow up patch will unify the callback mechanism with a common base
2822 * Shared/CoreIPCSupport/WebPageMessageKinds.h:
2824 * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
2825 (WebPageProxyMessage::):
2826 * UIProcess/API/C/WKPage.cpp:
2827 (WKPageRunJavaScriptInMainFrame_f):
2828 (WKPageRenderTreeExternalRepresentation_f):
2829 (callRenderTreeExternalRepresentationBlockAndDispose):
2830 (disposeRenderTreeExternalRepresentationBlock):
2831 (WKPageRenderTreeExternalRepresentation):
2832 * UIProcess/API/C/WKPagePrivate.h: Added.
2833 * UIProcess/RenderTreeExternalRepresentationCallback.cpp: Added.
2834 (WebKit::generateCallbackID):
2835 (WebKit::RenderTreeExternalRepresentationCallback::RenderTreeExternalRepresentationCallback):
2836 (WebKit::RenderTreeExternalRepresentationCallback::~RenderTreeExternalRepresentationCallback):
2837 (WebKit::RenderTreeExternalRepresentationCallback::performCallbackWithReturnValue):
2838 (WebKit::RenderTreeExternalRepresentationCallback::invalidate):
2839 * UIProcess/RenderTreeExternalRepresentationCallback.h: Added.
2840 (WebKit::RenderTreeExternalRepresentationCallback::create):
2841 (WebKit::RenderTreeExternalRepresentationCallback::callbackID):
2842 * UIProcess/ScriptReturnValueCallback.cpp:
2843 (WebKit::ScriptReturnValueCallback::~ScriptReturnValueCallback):
2844 (WebKit::ScriptReturnValueCallback::performCallbackWithReturnValue):
2845 (WebKit::ScriptReturnValueCallback::invalidate):
2846 * UIProcess/ScriptReturnValueCallback.h:
2847 * UIProcess/WebPageProxy.cpp:
2848 (WebKit::WebPageProxy::close):
2849 (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
2850 (WebKit::WebPageProxy::didReceiveMessage):
2851 (WebKit::WebPageProxy::didRunJavaScriptInMainFrame):
2852 (WebKit::WebPageProxy::didGetRenderTreeExternalRepresentation):
2853 (WebKit::WebPageProxy::processDidExit):
2854 * UIProcess/WebPageProxy.h:
2855 * WebKit2.xcodeproj/project.pbxproj:
2856 * WebProcess/WebPage/WebPage.cpp:
2857 (WebKit::WebPage::getRenderTreeExternalRepresentation):
2858 (WebKit::WebPage::didReceiveMessage):
2859 * WebProcess/WebPage/WebPage.h:
2860 * win/WebKit2.vcproj:
2862 2010-04-30 Sam Weinig <sam@webkit.org>
2864 Reviewed by Anders Carlsson.
2866 Fix for https://bugs.webkit.org/show_bug.cgi?id=38406
2867 Add support for sending messages with a size greater than 4096 bytes
2869 Adds support by putting message bodies that are larger than 4096 bytes
2872 * Platform/CoreIPC/Connection.cpp:
2873 (CoreIPC::Connection::sendMessage):
2874 (CoreIPC::Connection::waitForMessage):
2875 (CoreIPC::Connection::sendSyncMessage):
2876 (CoreIPC::Connection::dispatchMessages):
2877 * Platform/CoreIPC/Connection.h:
2878 (CoreIPC::Connection::OutgoingMessage::OutgoingMessage):
2879 (CoreIPC::Connection::OutgoingMessage::messageID):
2880 (CoreIPC::Connection::send):
2881 (CoreIPC::Connection::sendSync):
2882 * Platform/CoreIPC/MessageID.h:
2883 (CoreIPC::MessageID::):
2884 (CoreIPC::MessageID::MessageID):
2885 (CoreIPC::MessageID::equalIgnoringFlags):
2886 (CoreIPC::MessageID::copyAddingFlags):
2887 (CoreIPC::MessageID::fromInt):
2888 (CoreIPC::MessageID::toInt):
2889 (CoreIPC::MessageID::isMessageBodyOOL):
2890 * Platform/CoreIPC/mac/ConnectionMac.cpp:
2891 (CoreIPC::Connection::sendOutgoingMessage):
2892 (CoreIPC::createArgumentDecoder):
2894 2010-04-28 Mike Thole <mthole@apple.com>
2896 Build fix, not reviewed.
2898 Fix WebKit2 build by stubbing out WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace().
2900 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2901 (WebKit::WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
2902 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2904 2010-04-28 Sam Weinig <sam@webkit.org>
2906 Reviewed by Mark Rowe.
2908 Only build on SnowLeopard and later when using the Makefile.
2912 2010-04-27 Sam Weinig <sam@webkit.org>
2914 Reviewed by Maciej Stachowiak.
2916 Fix for https://bugs.webkit.org/show_bug.cgi?id=38238
2917 Allow both WebKit and WebKit2 to link to the same WebCore.framework
2919 * Configurations/WebKit2.xcconfig: Remove the OTHER_LDFLAGS. We don't
2920 need to set WebCore as a sub_umbrella of WebKit2, since we are not
2921 reexporting any of its symbols.
2923 2010-04-27 Sam Weinig <sam@webkit.org>
2925 Reviewed by Geoffrey Garen.
2927 Add comment about not using StringImpl::createCFString in WKStringCopyCFString.
2929 * UIProcess/API/C/cf/WKStringCF.cpp:
2930 (WKStringCopyCFString):
2932 2010-04-27 Sam Weinig <sam@webkit.org>
2934 Reviewed by Geoffrey Garen.
2936 Remove call to StringImpl::createCFString and instead use CFStringCreateWithCharacters
2937 directly. StringImpl::createCFString only an optimization when called
2938 from the thread that WebCore is running on, which is never the case for
2939 WKStringCopyCFString. We should revisit this later, perhaps adding a
2940 threadspecific allocator. We also now honor the passed in allocator.
2942 * UIProcess/API/C/cf/WKStringCF.cpp:
2943 (WKStringCopyCFString):
2945 2010-04-25 Sam Weinig <sam@webkit.org>
2947 Reviewed by Maciej Stachowiak.
2949 Fix for https://bugs.webkit.org/show_bug.cgi?id=38097
2950 Disentangle initializing the main thread from initializing threading
2952 * UIProcess/Launcher/mac/WebProcessLauncher.mm:
2953 (WebKit::webThreadBody): Add call to initializeMainThread.
2954 * UIProcess/Launcher/win/WebProcessLauncher.cpp:
2955 (WebKit::webThreadBody): Ditto.
2956 * WebProcess/Launching/mac/WebProcessMain.mm:
2958 * WebProcess/win/WebProcessMain.cpp:
2959 (WebKit::WebProcessMain): Ditto.
2961 2010-04-23 Sam Weinig <sam@webkit.org>
2963 Reviewed by Anders Carlsson.
2965 https://bugs.webkit.org/show_bug.cgi?id=38065
2966 Merge mac and win DrawingAreaProxyUpdateChunk implementations.
2968 * UIProcess/API/mac/WKView.mm:
2969 (-[WKView drawRect:]):
2970 * UIProcess/DrawingAreaProxy.cpp: Copied from UIProcess/mac/DrawingAreaProxy.mm.
2971 * UIProcess/DrawingAreaProxy.h: Copied from UIProcess/mac/DrawingAreaProxy.h.
2972 * UIProcess/DrawingAreaProxyUpdateChunk.cpp: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.mm.
2973 (WebKit::DrawingAreaProxyUpdateChunk::DrawingAreaProxyUpdateChunk):
2974 (WebKit::DrawingAreaProxyUpdateChunk::paint):
2975 (WebKit::DrawingAreaProxyUpdateChunk::setSize):
2976 (WebKit::DrawingAreaProxyUpdateChunk::didSetSize):
2977 (WebKit::DrawingAreaProxyUpdateChunk::update):
2978 (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
2979 * UIProcess/DrawingAreaProxyUpdateChunk.h: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.h.
2980 * UIProcess/mac/DrawingAreaProxy.h: Removed.
2981 * UIProcess/mac/DrawingAreaProxy.mm: Removed.
2982 * UIProcess/mac/DrawingAreaProxyUpdateChunk.h: Removed.
2983 * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm: Removed.
2984 * UIProcess/mac/DrawingAreaProxyUpdateChunkMac.mm: Copied from UIProcess/mac/DrawingAreaProxyUpdateChunk.mm.
2985 (WebKit::DrawingAreaProxyUpdateChunk::page):
2986 (WebKit::DrawingAreaProxyUpdateChunk::invalidateBackingStore):
2987 (WebKit::DrawingAreaProxyUpdateChunk::platformPaint):
2988 (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
2989 * UIProcess/win/DrawingAreaProxy.cpp: Removed.
2990 * UIProcess/win/DrawingAreaProxy.h: Removed.
2991 * UIProcess/win/DrawingAreaProxyUpdateChunkWin.cpp: Copied from UIProcess/win/DrawingAreaProxy.cpp.
2992 (WebKit::DrawingAreaProxyUpdateChunk::page):
2993 (WebKit::DrawingAreaProxyUpdateChunk::ensureBackingStore):
2994 (WebKit::DrawingAreaProxyUpdateChunk::invalidateBackingStore):
2995 (WebKit::DrawingAreaProxyUpdateChunk::platformPaint):
2996 (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
2997 * UIProcess/win/WebView.cpp:
2998 (WebKit::WebView::WebView):
2999 (WebKit::WebView::onPaintEvent):
3000 * WebKit2.xcodeproj/project.pbxproj:
3001 * win/WebKit2.vcproj:
3003 2010-04-23 Sam Weinig <sam@webkit.org>
3005 Reviewed by Anders Carlsson.
3007 Fix for https://bugs.webkit.org/show_bug.cgi?id=38059
3008 Merge mac and win DrawingAreaUpdateChunk implementations.
3010 * UIProcess/win/DrawingAreaProxy.cpp:
3011 (WebKit::DrawingAreaProxy::didSetSize):
3012 (WebKit::DrawingAreaProxy::didReceiveMessage):
3013 * UIProcess/win/DrawingAreaProxy.h:
3014 * WebKit2.xcodeproj/project.pbxproj:
3015 * WebProcess/WebPage/DrawingAreaUpdateChunk.cpp: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp.
3016 (WebKit::DrawingAreaUpdateChunk::setSize):
3017 * WebProcess/WebPage/DrawingAreaUpdateChunk.h: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h.
3018 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp: Removed.
3019 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h: Removed.
3020 * WebProcess/WebPage/mac/DrawingAreaUpdateChunkMac.cpp: Copied from WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp.
3021 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp: Removed.
3022 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h: Removed.
3023 * WebProcess/WebPage/win/DrawingAreaUpdateChunkWin.cpp: Copied from WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp.
3024 (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
3025 * win/WebKit2.vcproj:
3027 2010-04-23 Anders Carlsson <andersca@apple.com>
3029 Reviewed by Sam Weinig.
3031 Remove an assert. (It's not valid when resizing).
3033 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
3034 (WebKit::DrawingAreaUpdateChunk::didUpdate):
3036 2010-04-23 Anders Carlsson <andersca@apple.com>
3040 * UIProcess/win/DrawingAreaProxy.cpp:
3041 (WebKit::DrawingAreaProxy::paint):
3042 (WebKit::DrawingAreaProxy::setSize):
3043 (WebKit::DrawingAreaProxy::didReceiveMessage):
3044 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
3045 (WebKit::DrawingAreaUpdateChunk::setSize):
3046 (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
3048 2010-04-22 Anders Carlsson <andersca@apple.com>
3050 Reviewed by Sam Weinig.
3052 Remove an assert. (It's not valid when resizing).
3054 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3055 (WebKit::DrawingAreaUpdateChunk::didUpdate):
3057 2010-04-22 Sam Weinig <sam@webkit.org>
3059 Reviewed by Anders Carlsson.
3061 Merge the prefix headers.
3063 * Configurations/BaseTarget.xcconfig:
3064 * WebKit2.xcodeproj/project.pbxproj:
3066 * WebKit2_Prefix.pch: Removed.
3068 2010-04-22 Anders Carlsson <andersca@apple.com>
3070 Reviewed by Sam Weinig.
3072 Don't pass the new size when calling didSetSize, it's possible to get
3073 the size from the update chunk.
3075 * UIProcess/mac/DrawingAreaProxyUpdateChunk.h:
3076 * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
3077 (WebKit::DrawingAreaProxyUpdateChunk::didSetSize):
3078 (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
3079 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3080 (WebKit::DrawingAreaUpdateChunk::setSize):
3082 2010-04-22 Anders Carlsson <andersca@apple.com>
3084 Reviewed by Sam Weinig.
3086 Rename SetFrame and DidSetFrame to SetSize and DidSetSize.
3088 * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
3089 (DrawingAreaMessage::):
3090 * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h:
3091 (DrawingAreaProxyMessage::):
3092 * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
3093 (WebKit::DrawingAreaProxyUpdateChunk::drawRectIntoContext):
3094 (WebKit::DrawingAreaProxyUpdateChunk::setSize):
3095 (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
3096 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3097 (WebKit::DrawingAreaUpdateChunk::setSize):
3098 (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
3100 2010-04-22 Sam Weinig <sam@webkit.org>
3102 Reviewed by Anders Carlsson.
3104 Fix for https://bugs.webkit.org/show_bug.cgi?id=38002
3105 Add rudimentary statistics gathering for WebKit2
3107 * UIProcess/API/C/WKContext.cpp:
3108 (WKContextGetStatistics):
3109 * UIProcess/API/C/WKContextPrivate.h: Copied from WebKit2/UIProcess/API/C/WKContext.h.
3110 * UIProcess/API/C/WKPageNamespace.cpp:
3111 (WKPageNamespaceGetContext):
3112 * UIProcess/API/C/WKPageNamespace.h:
3113 * UIProcess/WebContext.cpp:
3114 (WebKit::WebContext::getStatistics):
3115 * UIProcess/WebContext.h:
3116 * UIProcess/WebPageNamespace.cpp:
3117 (WebKit::WebPageNamespace::getStatistics):
3118 * UIProcess/WebPageNamespace.h:
3119 * UIProcess/WebPageProxy.cpp:
3120 (WebKit::WebPageProxy::getStatistics):
3121 * UIProcess/WebPageProxy.h:
3122 * UIProcess/WebProcessProxy.cpp:
3123 (WebKit::WebProcessProxy::numberOfPages):
3124 * UIProcess/WebProcessProxy.h:
3125 * WebKit2.xcodeproj/project.pbxproj:
3126 * win/WebKit2.vcproj:
3128 2010-04-20 Anders Carlsson <andersca@apple.com>
3130 Reviewed by Sam Weinig.
3132 Don't paint the web page before we've blit the last update chunk to the backing store.
3134 * UIProcess/win/DrawingAreaProxy.cpp:
3135 (WebKit::DrawingAreaProxy::update):
3136 (WebKit::DrawingAreaProxy::didReceiveMessage):
3137 * UIProcess/win/DrawingAreaProxy.h:
3138 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
3139 (WebKit::DrawingAreaUpdateChunk::DrawingAreaUpdateChunk):
3140 (WebKit::DrawingAreaUpdateChunk::display):
3141 (WebKit::DrawingAreaUpdateChunk::scheduleDisplay):
3142 (WebKit::DrawingAreaUpdateChunk::setSize):
3143 (WebKit::DrawingAreaUpdateChunk::didUpdate):
3144 (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
3145 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h:
3147 2010-04-20 Anders Carlsson <andersca@apple.com>
3151 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3152 (WebKit::WebFrameLoaderClient::receivedData):
3154 2010-04-20 Anders Carlsson <andersca@apple.com>
3156 Reviewed by Sam Weinig.
3158 Don't paint the web page before we've blit the last update chunk to the backing store
3159 https://bugs.webkit.org/show_bug.cgi?id=37896
3161 * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h:
3162 (DrawingAreaMessage::):
3163 * UIProcess/mac/DrawingAreaProxyUpdateChunk.h:
3164 * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
3165 (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
3166 (WebKit::DrawingAreaProxyUpdateChunk::update):
3167 (WebKit::DrawingAreaProxyUpdateChunk::didReceiveMessage):
3168 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3169 (WebKit::DrawingAreaUpdateChunk::DrawingAreaUpdateChunk):
3170 (WebKit::DrawingAreaUpdateChunk::display):
3171 (WebKit::DrawingAreaUpdateChunk::scheduleDisplay):
3172 (WebKit::DrawingAreaUpdateChunk::setSize):
3173 (WebKit::DrawingAreaUpdateChunk::didUpdate):
3174 (WebKit::DrawingAreaUpdateChunk::didReceiveMessage):
3175 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h:
3177 2010-04-20 Anders Carlsson <andersca@apple.com>
3181 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3182 (WebKit::WebChromeClient::chooseIconForFiles):
3183 * WebProcess/WebCoreSupport/WebChromeClient.h:
3185 2010-04-19 Anders Carlsson <andersca@apple.com>
3189 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3190 (WebKit::WebFrameLoaderClient::dispatchDidChangeIcons):
3191 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3193 2010-04-17 Sam Weinig <weinig@apple.com>
3195 Reviewed by Jon "The Belly" Honeycutt.
3197 Remove the need for a .defs file! Define WK_EXPORT.
3199 * UIProcess/API/C/WKBase.h:
3200 * WebProcess/win/WebProcessMain.h:
3201 * win/WebKit2.def: Removed.
3202 * win/WebKit2.vcproj:
3204 2010-04-17 Sam Weinig <weinig@apple.com>
3206 Reviewed by Adam Roben.
3208 Teach windows MiniBrowser how to work with window.open()
3211 Export WKPageSetPageUIClient.
3215 2010-04-16 Sam Weinig <sam@webkit.org>
3217 Reviewed by Anders Carlsson.
3219 Fix window.open() and targeted links.
3221 * UIProcess/WebPageProxy.cpp:
3222 (WebKit::WebPageProxy::didReceiveSyncMessage): Pass in the new pageID
3225 * WebProcess/WebProcess.cpp:
3226 (WebKit::WebProcess::createWebPage): Allow for the page to have already
3227 been created, as is the case with programmatic window opening from within
3228 WebCore (e.g. window.open() or <a target="_blank">).
3230 2010-04-16 Sam Weinig <sam@webkit.org>
3232 Reviewed by Mark Rowe.
3234 Don't optimize debug builds.
3236 * WebKit2.xcodeproj/project.pbxproj: Define GCC_OPTIMIZATION_LEVEL correctly.
3238 2010-04-16 Anders Carlsson <andersca@apple.com>
3242 * WebProcess/WebPage/WebPage.cpp:
3243 (WebKit::WebPage::runJavaScriptInMainFrame):
3245 2010-04-16 Anders Carlsson <andersca@apple.com>
3247 Reviewed by Sam Weinig.
3251 * Platform/win/RunLoopWin.cpp:
3253 * UIProcess/Launcher/win/WebProcessLauncher.cpp:
3254 (WebKit::webThreadBody):
3255 (WebKit::launchWebProcess):
3256 * WebProcess/win/WebProcessMain.cpp:
3257 (WebKit::WebProcessMain):
3259 2010-04-16 Sam Weinig <weinig@apple.com>
3261 Reviewed by Anders Carlsson.
3263 Make resizing responsive on Windows.
3265 - Use the same waitFor logic as do for the Mac resizing
3266 DrawingAreaUpdateChunk code.
3268 * Shared/win/UpdateChunk.cpp:
3269 (WebKit::UpdateChunk::UpdateChunk):
3270 * Shared/win/UpdateChunk.h:
3271 Add a constructor that only takes an IntRect and allocates
3272 the shared memory mapping for you.
3273 * UIProcess/win/DrawingAreaProxy.cpp:
3274 (WebKit::DrawingAreaProxy::DrawingAreaProxy):
3275 (WebKit::DrawingAreaProxy::ensureBackingStore):
3276 (WebKit::DrawingAreaProxy::paint):
3277 (WebKit::DrawingAreaProxy::drawUpdateChunkIntoBackingStore):
3278 (WebKit::DrawingAreaProxy::setSize):
3279 (WebKit::DrawingAreaProxy::didSetSize):
3280 (WebKit::DrawingAreaProxy::didReceiveMessage):
3281 * UIProcess/win/DrawingAreaProxy.h:
3282 Perform wait in paint as we do on the mac.
3284 * UIProcess/win/WebView.cpp:
3285 (WebKit::WebView::onSizeEvent):
3286 Change to use an IntSize.
3288 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
3289 (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
3290 (WebKit::DrawingAreaUpdateChunk::display):
3291 (WebKit::DrawingAreaUpdateChunk::setSize):
3292 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.h:
3293 Specialize setSize() drawing and factor out painting
3294 into a helper function.
3296 2010-04-16 Anders Carlsson <andersca@apple.com>
3298 Reviewed by David Hyatt.
3300 Make run loops be allocated as thread specific data.
3301 https://bugs.webkit.org/show_bug.cgi?id=37723
3303 * Platform/RunLoop.cpp:
3304 (RunLoop::initializeMainRunLoop):
3307 * Platform/RunLoop.h:
3308 * Platform/mac/RunLoopMac.mm:
3311 * UIProcess/Launcher/mac/WebProcessLauncher.mm:
3312 (WebKit::webThreadBody):
3313 (WebKit::launchWebProcess):
3314 * UIProcess/ResponsivenessTimer.cpp:
3315 (WebKit::ResponsivenessTimer::ResponsivenessTimer):
3316 * WebProcess/Launching/mac/WebProcessMain.mm:
3318 * WebProcess/WebProcess.cpp:
3319 (WebKit::WebProcess::isSeparateProcess):
3321 2010-04-16 Sam Weinig <weinig@apple.com>
3323 Reviewed by Adam Roben.
3325 Use GDI text rendering on Windows by default.
3327 * WebProcess/WebPage/win/WebPageWin.cpp:
3328 (WebKit::WebPage::platformInitialize): Use the AlternateRenderingMode
3331 2010-04-16 Sam Weinig <weinig@apple.com>
3333 Reviewed by Adam Roben.
3335 Fix crash when trying to load an invalid URL.
3337 * WebProcess/WebPage/WebPage.cpp:
3338 (WebKit::WebPage::loadURL): Use constructor for ResourceRequest
3339 that takes a KURL instead of the one that takes a String. The one
3340 that takes a string expects a valid URL.
3342 2010-04-16 Sam Weinig <weinig@apple.com>
3344 Reviewed by Adam Roben.
3346 Make tooltips work. Thanks Adam!
3348 * UIProcess/win/WebView.cpp:
3349 (WebKit::WebView::toolTipChanged): Pass the WebView's HWND, not the tooltip's.
3351 2010-04-15 Anders Carlsson <andersca@apple.com>
3353 Reviewed by Adam Roben.
3355 Fix build dependencies.
3359 2010-04-15 Adam Roben <aroben@apple.com>
3361 Fix Windows WebKit2 build.
3363 * UIProcess/WebPageProxy.cpp:
3364 (WebKit::WebPageProxy::processDidExit):
3365 * win/WebKit2Generated.make:
3367 2010-04-15 Sam Weinig <sam@webkit.org>
3369 Reviewed by Anders Carlsson.
3371 Add WebHistoryClient support.
3372 https://bugs.webkit.org/show_bug.cgi?id=37671
3374 Adds the following callbacks:
3375 didNavigateWithNavigationData
3376 didPerformClientRedirect
3377 didPerformServerRedirect
3378 didUpdateHistoryTitle
3380 * Shared/CoreIPCSupport/WebPageProxyMessageKinds.h:
3381 (WebPageProxyMessage::):
3382 * Shared/WebNavigationDataStore.h: Added.
3383 * UIProcess/API/C/WKAPICast.h:
3384 * UIProcess/API/C/WKBase.h:
3385 * UIProcess/API/C/WKNavigationData.cpp: Added.
3386 * UIProcess/API/C/WKNavigationData.h: Added.
3387 * UIProcess/API/C/WKPage.cpp:
3388 * UIProcess/API/C/WKPage.h:
3389 * UIProcess/API/C/WebKit2.h:
3390 * UIProcess/WebHistoryClient.cpp: Copied from UIProcess/WebUIClient.cpp.
3391 * UIProcess/WebHistoryClient.h: Copied from UIProcess/WebUIClient.h.
3392 * UIProcess/WebNavigationData.cpp: Added.
3393 * UIProcess/WebNavigationData.h: Added.
3394 * UIProcess/WebPageProxy.cpp:
3395 * UIProcess/WebPageProxy.h:
3396 * WebKit2.xcodeproj/project.pbxproj:
3397 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3398 * win/WebKit2.vcproj:
3400 2010-04-15 Sam Weinig <sam@webkit.org>
3402 Reviewed by Adam Roben.
3404 Remove empty file configurations.
3406 * win/WebKit2.vcproj:
3408 2010-04-15 Sam Weinig <sam@webkit.org>
3410 Reviewed by Anders Carlsson.
3412 Fix WebKit2s build. Don't return temporaries.
3414 * UIProcess/API/C/cf/WKStringCF.cpp:
3415 (WKStringCreateWithCFString):
3416 * UIProcess/API/C/cf/WKURLCF.cpp:
3417 (WKURLCreateWithCFURL):
3420 2010-04-12 Geoffrey Garen <ggaren@apple.com>
3422 Reviewed by Anders Carlsson.
3424 Fixed complexity and performance FIXME created by using KURL in the UI
3425 process -- it turned out that everywhere we were using KURL, we could
3426 have just used String instead. (That's how Windows WebKit works, too.)
3428 I kept WKURLRef and WKStringRef distinct opaque types in the API for now,
3429 though, since there may be profit in changing their backing stores in the
3430 future, and it's nice for the API to encode a difference between generic
3431 strings and strings that are valid, canonical URLs.
3433 * Shared/KURLWrapper.h: Removed. Yay!
3435 * Shared/WebCoreTypeArgumentMarshalling.h: Nixed KURL marshalling functions.
3436 Old callers marshal Strings now, instead. (This is what KURL was doing
3437 under the covers, anyway.)
3439 * UIProcess/API/C/WKAPICast.h:
3440 (toWK): Backed by StringImpl* now.
3441 (toURLRef): Added a disambiguating function for specifying that you want
3442 a WKURLRef, since StringImpl* converts to WKStringRef by default.
3444 * UIProcess/API/C/WKFrame.cpp:
3445 (WKFrameGetProvisionalURL):
3447 * UIProcess/API/C/WKPage.cpp:
3449 * UIProcess/API/C/WKURL.cpp:
3450 * UIProcess/API/C/cf/WKURLCF.cpp:
3451 (WKURLCreateWithCFURL):
3453 * UIProcess/WebFrameProxy.cpp:
3454 (WebKit::WebFrameProxy::didStartProvisionalLoad):
3455 (WebKit::WebFrameProxy::didCommitLoad):
3456 * UIProcess/WebFrameProxy.h:
3457 (WebKit::WebFrameProxy::url):
3458 (WebKit::WebFrameProxy::provisionalURL):
3459 * UIProcess/WebPageProxy.cpp:
3460 (WebKit::WebPageProxy::loadURL):
3461 (WebKit::WebPageProxy::didReceiveMessage):
3462 (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
3463 (WebKit::WebPageProxy::decidePolicyForNavigationAction):
3464 (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
3465 (WebKit::WebPageProxy::decidePolicyForMIMEType):
3466 (WebKit::WebPageProxy::processDidExit):
3467 * UIProcess/WebPageProxy.h:
3468 (WebKit::WebPageProxy::urlAtProcessExit):
3469 * UIProcess/WebPolicyClient.cpp:
3470 (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
3471 (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
3472 (WebKit::WebPolicyClient::decidePolicyForMIMEType):
3473 * UIProcess/WebPolicyClient.h:
3474 * WebKit2.xcodeproj/project.pbxproj:
3475 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3476 (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
3477 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
3478 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
3479 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
3480 * WebProcess/WebPage/WebPage.cpp:
3481 (WebKit::WebPage::loadURL):
3482 (WebKit::WebPage::didReceiveMessage):
3483 * WebProcess/WebPage/WebPage.h: Replaced KURL / KURLWrapper with String.
3485 2010-04-14 Anders Carlsson <andersca@apple.com>
3487 Reviewed by Sam Weinig.
3489 Fix horizontal scrollbar repainting
3490 https://bugs.webkit.org/show_bug.cgi?id=37626
3492 Make sure that the update chunk is flipped because that's what WebCore expects.
3494 * Shared/mac/UpdateChunk.cpp:
3495 (WebKit::UpdateChunk::createImage):
3496 * Shared/mac/UpdateChunk.h:
3497 Add new createImage member function that creates a CGImageRef from the update chunk.
3499 * UIProcess/mac/DrawingAreaProxyUpdateChunk.mm:
3500 (WebKit::DrawingAreaProxyUpdateChunk::drawUpdateChunkIntoBackingStore):
3501 Pass the right rectangle here; CoreGraphics wants it in non-flipped coordinates.
3503 (WebKit::DrawingAreaProxyUpdateChunk::ensureBackingStore):
3504 Create a flipped backing store.
3506 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3507 (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
3508 Flip the update chunk.
3510 2010-04-14 Sam Weinig <sam@webkit.org>
3512 Reviewed by Anders Carlsson.
3514 Add WKRetainPtr helper class as private header
3515 https://bugs.webkit.org/show_bug.cgi?id=37603
3517 WKRetainPtr is just like RetainPtr, but works for WK types instead of
3520 * UIProcess/API/cpp: Added.
3521 * UIProcess/API/cpp/WKRetainPtr.h: Added.
3522 * WebKit2.xcodeproj/project.pbxproj: Add new file.
3523 * win/WebKit2.vcproj: Ditto.
3525 2010-04-14 Sam Weinig <sam@webkit.org>
3527 Reviewed by Anders Carlsson.
3529 Make the WebProcess a LSUIElement to suppress its icon from the Dock.
3531 * WebKit2.xcodeproj/project.pbxproj:
3532 * WebProcess/Info.plist:
3534 2010-04-14 Anders Carlsson <andersca@apple.com>
3536 Reviewed by Sam Weinig.
3538 Factor code to paint into an update chunk out into a separate function.
3539 https://bugs.webkit.org/show_bug.cgi?id=37594
3541 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.cpp:
3542 (WebKit::DrawingAreaUpdateChunk::paintIntoUpdateChunk):
3543 (WebKit::DrawingAreaUpdateChunk::display):
3544 (WebKit::DrawingAreaUpdateChunk::setSize):
3545 * WebProcess/WebPage/mac/DrawingAreaUpdateChunk.h:
3547 2010-04-13 Sam Weinig <sam@webkit.org>
3549 Reviewed by Anders Carlsson.
3551 Fix reported leaks when quitting MiniBrowser with open pages.
3553 * WebProcess/WebPage/WebPage.h: Make close() public.
3554 * WebProcess/WebProcess.cpp:
3555 (WebKit::WebProcess::WebProcess):
3556 (WebKit::WebProcess::removeWebPage):
3557 (WebKit::WebProcess::didClose): If the UIProcess disappears, close
3558 the live pages in an effort to not leak.
3559 * WebProcess/WebProcess.h:
3561 2010-04-13 Sam Weinig <sam@webkit.org>
3563 Reviewed by Anders Carlsson.
3565 Do a JS collection and clear the memory cache to improve leaks output
3566 when exiting. Only do this in debug builds as it is slow.
3568 * UIProcess/API/mac/WKView.h:
3569 * UIProcess/WebProcessProxy.cpp:
3570 * WebProcess/WebPage/WebPage.cpp:
3571 * WebProcess/WebProcess.cpp:
3572 (WebKit::WebProcess::shutdown):
3573 (WebKit::WebProcess::didClose):
3575 2010-04-13 Sam Weinig <sam@webkit.org>
3577 Reviewed by Adele Peterson.
3579 Post a null event after calling [NSApp stop] to flush the run loop
3580 and finish teardown.
3582 * Platform/mac/RunLoopMac.mm:
3585 2010-04-12 Sam Weinig <sam@webkit.org>
3587 Reviewed by Anders Carlsson.
3589 Add #ifdef so that WKView is not included on the mac if not
3590 compiling objective-c.
3592 * UIProcess/API/C/WebKit2.h:
3594 2010-04-12 Anders Carlsson <andersca@apple.com>
3596 Reviewed by Adam Roben.
3598 Add WebKit2 solution file.
3600 * WebKit2.sln: Added.
3602 2010-04-11 Sam Weinig <sam@webkit.org>
3604 Reviewed by Darin Adler.
3606 Fix for https://bugs.webkit.org/show_bug.cgi?id=37417
3607 Move duplicated internal CoreIPC message kinds to a
3610 * Platform/CoreIPC/Connection.cpp:
3611 (CoreIPC::Connection::processIncomingMessage):
3612 * Platform/CoreIPC/CoreIPCMessageKinds.h: Added.
3613 (CoreIPC::CoreIPCMessage::):
3615 * Platform/CoreIPC/mac/ConnectionMac.cpp:
3616 * WebKit2.xcodeproj/project.pbxproj:
3617 * win/WebKit2.vcproj:
3619 2010-04-11 Sam Weinig <sam@webkit.org>
3621 Rubber-stamped by Anders Carlsson.
3623 Disable not-implemented warnings by default for now.
3625 * Shared/NotImplemented.h:
3627 2010-04-10 Sam Weinig <sam@webkit.org>
3629 Reviewed by Anders Carlsson.
3631 Fix for https://bugs.webkit.org/show_bug.cgi?id=37399
3632 Remove use of STL data structures from CoreIPC code
3634 * Platform/CoreIPC/ArgumentDecoder.cpp:
3635 (CoreIPC::ArgumentDecoder::ArgumentDecoder):
3636 (CoreIPC::ArgumentDecoder::decodeBytes):
3637 (CoreIPC::ArgumentDecoder::removeAttachment):
3638 * Platform/CoreIPC/ArgumentDecoder.h:
3639 Use WTF::Deque instead of std::queue and WTF::Vector
3640 instead of std::vector. Replace use of malloc/free with
3641 fastMalloc/fastFree.
3643 * Platform/CoreIPC/ArgumentEncoder.cpp:
3644 (CoreIPC::ArgumentEncoder::addAttachment):
3645 (CoreIPC::ArgumentEncoder::releaseAttachments):
3646 * Platform/CoreIPC/ArgumentEncoder.h:
3647 Use WTF::Vector instead of std::list. Replace use of malloc/free
3648 with fastMalloc/fastFree.
3650 * Platform/CoreIPC/Connection.cpp:
3651 (CoreIPC::Connection::sendMessage):
3652 (CoreIPC::Connection::waitForMessage):
3653 (CoreIPC::Connection::processIncomingMessage):
3654 (CoreIPC::Connection::sendOutgoingMessages):
3655 (CoreIPC::Connection::dispatchMessages):
3656 * Platform/CoreIPC/Connection.h:
3657 * Platform/CoreIPC/mac/ConnectionMac.cpp:
3658 (CoreIPC::Connection::sendOutgoingMessage):
3659 (CoreIPC::createArgumentDecoder):
3660 Use WTF::Vector instead of std::queue.
3662 * Platform/RunLoop.cpp:
3663 (RunLoop::performWork):
3664 (RunLoop::scheduleWork):
3665 * Platform/RunLoop.h:
3668 * Platform/WorkQueue.h:
3669 * Platform/win/WorkQueueWin.cpp:
3670 (WorkQueue::scheduleWork):
3671 (WorkQueue::performWork):
3674 2010-04-10 Mark Rowe <mrowe@apple.com>
3676 Fix an obviously incorrect part of the Xcode configuration cleanup that resulted in debug builds
3677 asserting shortly after launch.
3679 * WebKit2.xcodeproj/project.pbxproj: Fix the setting of DEBUG_DEFINES for the Debug configuration.
3681 2010-04-09 Mark Rowe <mrowe@apple.com>
3683 Reviewed by Sam Weinig.
3685 Bring the WebKit2 Xcode configuration in to sync with recent changes to the WebKit Xcode configuration files.
3687 In particular, this updates the FEATURE_DEFINES to match those used in the other projects, and brings in
3688 the changes to support building WebKit for older Mac OS X versions from the current Mac OS X version.
3690 * Configurations/Base.xcconfig:
3691 * Configurations/DebugRelease.xcconfig:
3692 * Configurations/FeatureDefines.xcconfig:
3693 * Configurations/Version.xcconfig:
3695 2010-04-09 Mark Rowe <mrowe@apple.com>
3697 Reviewed by Sam Weinig.
3699 Clean up the Xcode project configuration.
3701 Common target settings are pulled out in to BaseTarget.xcconfig. The majority of setting overrides are
3702 removed from the Xcode project itself. Info.plist files are updated to match those used in other frameworks.
3704 * Configurations/BaseTarget.xcconfig: Copied from WebKit2/Configurations/WebKit2.xcconfig.
3705 * Configurations/WebKit2.xcconfig:
3706 * Configurations/WebProcess.xcconfig: Copied from WebKit2/Configurations/WebKit2.xcconfig.
3708 * WebKit2.xcodeproj/project.pbxproj:
3709 * WebProcess-Info.plist: Removed.
3710 * WebProcess/Info.plist: Moved from WebProcess-Info.plist.
3712 2010-04-09 Mark Rowe <mrowe@apple.com>
3716 * WebProcess/WebCoreSupport/mac/WebSystemInterface.m:
3717 (InitWebCoreSystemInterface): Update for recent WKSI changes.
3719 2010-04-09 Sam Weinig <sam@webkit.org>
3721 Reviewed by Darin Adler.
3723 Fix for https://bugs.webkit.org/show_bug.cgi?id=37351
3724 Cannot build with build-webkit --webkit2
3726 Add some headers that it seems others are not getting
3729 * Platform/mac/WorkQueueMac.cpp: #inlude <mach/mach_port.h>
3730 * Shared/mac/UpdateChunk.cpp: #inlude <mach/vm_map.h>
3732 2010-04-09 Anders Carlsson <andersca@apple.com>
3736 * WebProcess/win/WebProcessMain.h:
3737 Include windows.h here.
3742 * win/WebKit2.vcproj:
3745 2010-04-09 Sam Weinig <sam@webkit.org>
3747 Reviewed by Anders Carlsson.
3749 Add new WKString.h and WKURL.h headers to top
3752 * UIProcess/API/C/WebKit2.h:
3754 2010-04-09 Anders Carlsson <andersca@apple.com>
3756 More Windows build fixes.
3758 * Shared/NotImplemented.h:
3759 * UIProcess/API/C/cf/WKURLCF.cpp:
3762 (WKURLCreateWithCFURL):
3763 * UIProcess/API/C/cf/WKURLCF.h:
3766 * win/WebKit2Generated.make:
3767 Copy the new CF headers.
3769 2010-04-09 Sam Weinig <sam@webkit.org>
3771 Reviewed by Anders Carlsson.
3773 Two more #include sorting issues.
3775 * Shared/NotImplemented.h:
3776 * WebProcess/WebPage/win/DrawingAreaUpdateChunk.cpp:
3778 2010-04-09 Sam Weinig <sam@webkit.org>