4260caad165e50eb3be21ca65aa2c42d927cee33
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2011-06-14  Anders Carlsson  <andersca@apple.com>
2
3         Reviewed by Darin Adler.
4
5         Add functions for encoding/decoding data with a known size and alignment
6         https://bugs.webkit.org/show_bug.cgi?id=62663
7
8         * Platform/CoreIPC/ArgumentDecoder.cpp:
9         (CoreIPC::ArgumentDecoder::decodeFixedLengthData):
10         * Platform/CoreIPC/ArgumentDecoder.h:
11         * Platform/CoreIPC/ArgumentEncoder.cpp:
12         (CoreIPC::ArgumentEncoder::encodeFixedLengthData):
13         (CoreIPC::ArgumentEncoder::encodeVariableLengthData):
14         * Platform/CoreIPC/ArgumentEncoder.h:
15
16 2011-06-14  Anders Carlsson  <andersca@apple.com>
17
18         Reviewed by Sam Weinig.
19
20         Move string ArgumentCoder template specializations out into a .cpp file
21         https://bugs.webkit.org/show_bug.cgi?id=62660
22
23         * GNUmakefile.am:
24         * Platform/CoreIPC/ArgumentCoders.cpp: Added.
25         (CoreIPC::::encode):
26         (CoreIPC::::decode):
27         * Platform/CoreIPC/ArgumentCoders.h:
28         * WebKit2.pro:
29         * WebKit2.xcodeproj/project.pbxproj:
30         * win/WebKit2.vcproj:
31
32 2011-06-14  Anders Carlsson  <andersca@apple.com>
33
34         Reviewed by Sam Weinig.
35
36         Remove PluginInfoStore::Plugin typedef
37         https://bugs.webkit.org/show_bug.cgi?id=62657
38
39         * UIProcess/Plugins/PluginInfoStore.h:
40         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
41         (WebKit::PluginInfoStore::getPluginInfo):
42         (WebKit::PluginInfoStore::shouldUsePlugin):
43
44 2011-06-14  Anders Carlsson  <andersca@apple.com>
45
46         Reviewed by Sam Weinig.
47
48         Create the PluginModuleInfo class and reverse the typedef so that PluginInfoStore::Plugin is now a typedef
49         https://bugs.webkit.org/show_bug.cgi?id=62654
50
51         * UIProcess/Plugins/PluginInfoStore.cpp:
52         (WebKit::PluginInfoStore::loadPluginsIfNecessary):
53         (WebKit::PluginInfoStore::loadPlugin):
54         (WebKit::PluginInfoStore::findPluginForMIMEType):
55         (WebKit::PluginInfoStore::findPluginForExtension):
56         (WebKit::PluginInfoStore::findPlugin):
57         (WebKit::PluginInfoStore::infoForPluginWithPath):
58         * UIProcess/Plugins/PluginInfoStore.h:
59         * UIProcess/Plugins/PluginProcessManager.cpp:
60         (WebKit::PluginProcessManager::getPluginProcessConnection):
61         * UIProcess/Plugins/PluginProcessProxy.cpp:
62         (WebKit::PluginProcessProxy::PluginProcessProxy):
63         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
64         (WebKit::WebPluginSiteDataManager::getSitesWithData):
65         (WebKit::WebPluginSiteDataManager::clearSiteData):
66         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
67         (WebKit::PluginInfoStore::getPluginInfo):
68         (WebKit::PluginInfoStore::shouldUsePlugin):
69         * UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp:
70         (WebKit::PluginInfoStore::getPluginInfo):
71         (WebKit::PluginInfoStore::shouldUsePlugin):
72         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
73         (WebKit::isOldWindowsMediaPlayerPlugin):
74         (WebKit::isNewWindowsMediaPlayerPlugin):
75         (WebKit::PluginInfoStore::shouldUsePlugin):
76
77 2011-06-14  Stephanie Lewis  <slewis@apple.com>
78
79         Rubber stamped by Oliver Hunt.
80
81         <rdar://problem/9511169>
82         Update order files.
83
84         * mac/WebKit2.order:
85
86 2011-06-14  Anders Carlsson  <andersca@apple.com>
87
88         Reviewed by Dan Bernstein.
89
90         Start replacing PluginInfoStore::Plugin with PluginModuleInfo
91         https://bugs.webkit.org/show_bug.cgi?id=62651
92
93         * UIProcess/Plugins/PluginInfoStore.cpp:
94         (WebKit::PluginInfoStore::plugins):
95         (WebKit::PluginInfoStore::findPluginForMIMEType):
96         (WebKit::PluginInfoStore::findPluginForExtension):
97         (WebKit::PluginInfoStore::infoForPluginWithPath):
98         * UIProcess/Plugins/PluginInfoStore.h:
99         * UIProcess/Plugins/PluginProcessManager.cpp:
100         (WebKit::PluginProcessManager::getPluginProcessConnection):
101         (WebKit::PluginProcessManager::getSitesWithData):
102         (WebKit::PluginProcessManager::clearSiteData):
103         (WebKit::PluginProcessManager::getOrCreatePluginProcess):
104         * UIProcess/Plugins/PluginProcessManager.h:
105         * UIProcess/Plugins/PluginProcessProxy.cpp:
106         (WebKit::PluginProcessProxy::create):
107         * UIProcess/Plugins/PluginProcessProxy.h:
108         (WebKit::PluginProcessProxy::pluginInfo):
109         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
110         (WebKit::PluginProcessProxy::pluginNeedsExecutableHeap):
111         (WebKit::PluginProcessProxy::createPropertyListFile):
112
113 2011-06-14  Anders Carlsson  <andersca@apple.com>
114
115         Reviewed by Darin Adler.
116
117         Add PluginModuleInfo header and prepare for renaming of PluginInfoStore::Plugin to PluginModuleInfo
118         https://bugs.webkit.org/show_bug.cgi?id=62647
119
120         Make PluginModuleInfo a typedef of PluginInfoStore::Plugin for now; eventually it should be its own class,
121         and PluginInfoStore::Plugin should go away.
122
123         * GNUmakefile.am:
124         * Shared/Plugins/Netscape/NetscapePluginModule.h:
125         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
126         (WebKit::getPluginArchitecture):
127         (WebKit::getMIMETypesFromPluginBundle):
128         (WebKit::getPluginInfoFromPropertyLists):
129         (WebKit::getPluginInfoFromCarbonResources):
130         (WebKit::NetscapePluginModule::getPluginInfo):
131         (WebKit::NetscapePluginModule::determineQuirks):
132         * Shared/Plugins/PluginModuleInfo.cpp: Added.
133         * Shared/Plugins/PluginModuleInfo.h: Added.
134         * WebKit2.pro:
135         * WebKit2.xcodeproj/project.pbxproj:
136         * win/WebKit2.vcproj:
137
138 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
139
140         Reviewed by Martin Robinson.
141
142         [GTK] Move the code to show the context menu from WebKitWebViewBase to WebContextMenuProxyGtk
143         https://bugs.webkit.org/show_bug.cgi?id=62627
144
145         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
146         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
147         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
148         (WebKit::WebContextMenuProxyGtk::showContextMenu):
149         (WebKit::WebContextMenuProxyGtk::hideContextMenu):
150         (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk):
151         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
152         (WebKit::WebContextMenuProxyGtk::menuPositionFunction):
153         * UIProcess/gtk/WebContextMenuProxyGtk.h:
154
155 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
156
157         Reviewed by Martin Robinson.
158
159         [GTK] Rename convertWidgetRectToScreenRect() to convertWidgetPointToScreenPoint()
160         https://bugs.webkit.org/show_bug.cgi?id=62626
161
162         * UIProcess/API/gtk/PageClientImpl.cpp:
163         (WebKit::PageClientImpl::screenToWindow): Implement this method
164         using convertWidgetPointToScreenPoint().
165         (WebKit::PageClientImpl::windowToScreen): Update to use
166         convertWidgetPointToScreenPoint().
167         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
168         (WebKit::WebPopupMenuProxyGtk::showPopupMenu): Use
169         convertWidgetPointToScreenPoint().
170
171 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
172
173         Reviewed by Martin Robinson.
174
175         [GTK] Support authentication dialogs in WebKit2
176         https://bugs.webkit.org/show_bug.cgi?id=62366
177
178         Add a new soup feature to show an authentication dialog when it
179         gets a 401 HTTP response.
180
181         * GNUmakefile.am: Add new files to compilation.
182         * WebProcess/gtk/WebAuthDialog.cpp: Added.
183         (web_auth_dialog_class_init):
184         (web_auth_dialog_init):
185         (sessionAuthenticate):
186         (attach):
187         (detach):
188         (webAuthDialogSessionFeatureInit):
189         * WebProcess/gtk/WebAuthDialog.h: Added.
190         * WebProcess/gtk/WebProcessMainGtk.cpp:
191         (WebKit::WebProcessMainGtk):
192
193 2011-06-14  No'am Rosenthal  <noam.rosenthal@nokia.com> and Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
194
195         Reviewed by Kenneth Rohde Christiansen.
196
197         [Qt] Implement accelerated compositing on WK2 Qt port
198         https://bugs.webkit.org/show_bug.cgi?id=56935
199
200         Implementing LayerTreeHost and LayerTreeContext and LayerTreeHost for Qt.
201         Add the necessary plumbing to make the LayerTreeHost work with Qt, based on the original Mac
202         implementation (the code is nearly identical). This includes creating the right layers for the
203         overlay and for the non-composited content, and passing the root layer to the UI process.
204
205         Also, since LayerTreeHostQt is compiled, we have to add some of the rest of the existing patches,
206         namely the new messages: syncCompositingLayers and updateCompositingLayerContent, and create a
207         stub implementation for them in DrawingAreaProxy.
208
209         Note that this is not activated yet, until we enable accelerated compositing in the settings and
210         create the right GraphicsLayer.
211
212         * Scripts/webkit2/messages.py:
213         * Shared/LayerTreeContext.h:
214         * Shared/qt/LayerTreeContextQt.cpp:
215         (WebKit::LayerTreeContext::LayerTreeContext):
216         (WebKit::LayerTreeContext::~LayerTreeContext):
217         (WebKit::LayerTreeContext::encode):
218         (WebKit::LayerTreeContext::decode):
219         (WebKit::LayerTreeContext::isEmpty):
220         (WebKit::operator==):
221         * UIProcess/DrawingAreaProxy.h:
222         (WebKit::DrawingAreaProxy::syncCompositingLayers):
223         (WebKit::DrawingAreaProxy::updateCompositingLayerContent):
224         * UIProcess/DrawingAreaProxy.messages.in:
225         * WebKit2.pro:
226         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
227         (WebCore::collectCompositingInfoForThisLayer):
228         * WebProcess/WebPage/LayerTreeHost.cpp:
229         (WebKit::LayerTreeHost::create):
230         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
231         (WebKit::LayerTreeHostQt::create):
232         (WebKit::LayerTreeHostQt::~LayerTreeHostQt):
233         (WebKit::LayerTreeHostQt::LayerTreeHostQt):
234         (WebKit::LayerTreeHostQt::setLayerFlushSchedulingEnabled):
235         (WebKit::LayerTreeHostQt::scheduleLayerFlush):
236         (WebKit::LayerTreeHostQt::cancelPendingLayerFlush):
237         (WebKit::LayerTreeHostQt::setShouldNotifyAfterNextScheduledLayerFlush):
238         (WebKit::LayerTreeHostQt::setRootCompositingLayer):
239         (WebKit::LayerTreeHostQt::invalidate):
240         (WebKit::LayerTreeHostQt::setNonCompositedContentsNeedDisplay):
241         (WebKit::LayerTreeHostQt::scrollNonCompositedContents):
242         (WebKit::LayerTreeHostQt::forceRepaint):
243         (WebKit::LayerTreeHostQt::sizeDidChange):
244         (WebKit::LayerTreeHostQt::didInstallPageOverlay):
245         (WebKit::LayerTreeHostQt::didUninstallPageOverlay):
246         (WebKit::LayerTreeHostQt::setPageOverlayNeedsDisplay):
247         (WebKit::LayerTreeHostQt::flushPendingLayerChanges):
248         (WebKit::LayerTreeHostQt::performScheduledLayerFlush):
249         (WebKit::LayerTreeHostQt::layerFlushTimerFired):
250         (WebKit::LayerTreeHostQt::createPageOverlayLayer):
251         (WebKit::LayerTreeHostQt::destroyPageOverlayLayer):
252         (WebKit::LayerTreeHostQt::notifyAnimationStarted):
253         (WebKit::LayerTreeHostQt::notifySyncRequired):
254         (WebKit::LayerTreeHostQt::paintContents):
255         (WebKit::LayerTreeHostQt::showDebugBorders):
256         (WebKit::LayerTreeHostQt::showRepaintCounter):
257         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
258         * WebProcess/WebPage/qt/LayerTreeHostQt.h: Added.
259         (WebKit::LayerTreeHostQt::layerTreeContext):
260         (WebKit::LayerTreeHostQt::pauseRendering):
261         (WebKit::LayerTreeHostQt::resumeRendering):
262
263 2011-06-14  Noam Rosenthal  <noam.rosenthal@nokia.com>
264
265         Reviewed by Kenneth Rohde Christiansen.
266
267         [Qt] Implement accelerated compositing on WK2 Qt port
268         https://bugs.webkit.org/show_bug.cgi?id=56935
269
270         Add a createImage() function to ShareableBitmap, for now ifdef'ed to Qt only.
271         This allows us to support directly composited images across the WebKit2 processes.
272
273         Together with Viatcheslav Ostapenko.
274
275         * Shared/ShareableBitmap.h:
276         * Shared/qt/ShareableBitmapQt.cpp:
277         (WebKit::ShareableBitmap::createQImage):
278         (WebKit::ShareableBitmap::createImage):
279
280 2011-06-13  Anders Carlsson  <andersca@apple.com>
281
282         Reviewed by Sam Weinig.
283
284         Crash when trying to use Netflix Watch Instantly with Silverlight 3
285         https://bugs.webkit.org/show_bug.cgi?id=62611
286         <rdar://problem/9058370>
287
288         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
289         (WebKit::NetscapePluginModule::getPluginInfo):
290         Get the plug-in version string instead of the version number.
291
292         (WebKit::PluginVersion::isValid):
293         (WebKit::PluginVersion::PluginVersion):
294         (WebKit::PluginVersion::parse):
295         (WebKit::PluginVersion::isLessThan):
296         Add a new PluginVersion class that represents a plug-in version. The idea is
297         that this class be made cross platform.
298
299         (WebKit::NetscapePluginModule::determineQuirks):
300         Add the ReturnsNonRetainedScriptableNPObject quirk for versions of Silverlight less than 4.
301
302         * Shared/Plugins/PluginQuirks.h:
303         Add the ReturnsNonRetainedScriptableNPObject quirk.
304
305         * UIProcess/Plugins/PluginInfoStore.h:
306         Use a version string. Eventually this should hold the PluginVersion class we added.
307
308         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
309         (WebKit::NetscapePlugin::pluginScriptableNPObject):
310         If the plug-in has the ReturnsNonRetainedScriptableNPObject quirk, do an extra retain.
311
312 2011-06-13  Ryuan Choi  <ryuan.choi@samsung.com>
313
314         Reviewed by Kenneth Rohde Christiansen.
315
316         [EFL][WK2] Add dummy files at below of WebProcess.
317         https://bugs.webkit.org/show_bug.cgi?id=62445
318
319         Add Efl related directory and files in WebKit2/WebProcess/.
320
321         * WebProcess/Cookies/efl/WebCookieManagerEfl.cpp: Added.
322         (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
323         (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
324         * WebProcess/InjectedBundle/efl/InjectedBundleEfl.cpp: Added.
325         (WebKit::InjectedBundle::load):
326         (WebKit::InjectedBundle::activateMacFontAscentHack):
327         * WebProcess/WebPage/efl/WebInspectorEfl.cpp: Added.
328         (WebKit::WebInspector::localizedStringsURL):
329         * WebProcess/WebPage/efl/WebPageEfl.cpp: Added.
330         (WebKit::WebPage::platformInitialize):
331         (WebKit::WebPage::platformPreferencesDidChange):
332         (WebKit::scroll):
333         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
334         (WebKit::WebPage::platformHasLocalDataForURL):
335         (WebKit::WebPage::cachedResponseMIMETypeForURL):
336         (WebKit::WebPage::platformCanHandleRequest):
337         (WebKit::WebPage::cachedSuggestedFilenameForURL):
338         (WebKit::WebPage::cachedResponseDataForURL):
339         * WebProcess/efl/WebProcessEfl.cpp: Added.
340         (WebKit::WebProcess::platformSetCacheModel):
341         (WebKit::WebProcess::platformClearResourceCaches):
342         (WebKit::WebProcess::platformInitializeWebProcess):
343         (WebKit::WebProcess::platformTerminate):
344         * WebProcess/efl/WebProcessMainEfl.cpp: Added.
345         (WebKit::WebProcessMainEfl):
346         * WebProcess/efl/WebProcessMainEfl.h: Added.
347         * efl/MainEfl.cpp: Added.
348         (main):
349
350 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
351
352         Reviewed by Eric Seidel.
353
354         [EFL][WK2] Add initial WebInspectorEfl.cpp for webkit2 efl port
355         https://bugs.webkit.org/show_bug.cgi?id=62524
356
357         * UIProcess/efl/WebInspectorEfl.cpp: Added.
358         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
359         (WebKit::WebInspectorProxy::platformOpen):
360         (WebKit::WebInspectorProxy::platformDidClose):
361         (WebKit::WebInspectorProxy::platformBringToFront):
362         (WebKit::WebInspectorProxy::platformInspectedURLChanged):
363         (WebKit::WebInspectorProxy::inspectorPageURL):
364         (WebKit::WebInspectorProxy::platformAttach):
365         (WebKit::WebInspectorProxy::platformDetach):
366         (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight):
367
368 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
369
370         Reviewed by Eric Seidel.
371
372         [EFL][WK2] Add initial TextCheckerEfl.cpp for webkit2 efl port
373         https://bugs.webkit.org/show_bug.cgi?id=62438
374
375         * UIProcess/efl/TextCheckerEfl.cpp: Added.
376         (WebKit::TextChecker::state):
377         (WebKit::TextChecker::isContinuousSpellCheckingAllowed):
378         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
379         (WebKit::TextChecker::setGrammarCheckingEnabled):
380         (WebKit::TextChecker::uniqueSpellDocumentTag):
381         (WebKit::TextChecker::closeSpellDocumentWithTag):
382         (WebKit::TextChecker::checkSpellingOfString):
383         (WebKit::TextChecker::checkGrammarOfString):
384         (WebKit::TextChecker::spellingUIIsShowing):
385         (WebKit::TextChecker::toggleSpellingUIIsShowing):
386         (WebKit::TextChecker::updateSpellingUIWithMisspelledWord):
387         (WebKit::TextChecker::updateSpellingUIWithGrammarString):
388         (WebKit::TextChecker::getGuessesForWord):
389         (WebKit::TextChecker::learnWord):
390         (WebKit::TextChecker::ignoreWord):
391
392 2011-06-13  Sangyong Park  <sy302.park@gmail.com>
393
394         Reviewed by Eric Seidel.
395
396         implement to handle wheel event of plugin on x11
397         https://bugs.webkit.org/show_bug.cgi?id=62522
398
399         Implement platformHandleWheelEvent() in NetscapePluginX11.cpp
400         for to handle wheel event on plugins
401
402         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
403         (WebKit::setCommonMouseEventFields): add template argument to support WebWheelEvent
404         (WebKit::setXButtonEventFieldsByWebWheelEvent): initialize XButtonEvent by WebWheelEvent
405         (WebKit::NetscapePlugin::platformHandleWheelEvent): handle wheel event on plugin
406
407 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
408
409         Reviewed by Eric Seidel.
410
411         [EFL][WK2] Add initial WebContextEfl.cpp for webkit2 efl port
412         https://bugs.webkit.org/show_bug.cgi?id=62523
413
414         * UIProcess/efl/WebContextEfl.cpp: Added.
415         (WebKit::WebContext::applicationCacheDirectory):
416         (WebKit::WebContext::platformInitializeWebProcess):
417         (WebKit::WebContext::platformInvalidateContext):
418         (WebKit::WebContext::platformDefaultDatabaseDirectory):
419         (WebKit::WebContext::platformDefaultIconDatabasePath):
420         (WebKit::WebContext::platformDefaultLocalStorageDirectory):
421
422 2011-06-13  Noam Rosenthal  <noam.rosenthal@nokia.com>
423
424         Unreviewed fix - removed parts of r88659 that were committed by mistake.
425
426         The patch accidentally included parts that weren't supposed to be there, namely the whole
427         code was duplicated. This patch rectifies that and brings it to the original reviewed code.
428
429         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
430         * WebProcess/WebCoreSupport/WebGraphicsLayer.h:
431
432 2011-06-13  Anders Carlsson  <andersca@apple.com>
433
434         Reviewed by Dan Bernstein.
435
436         BankID plug-in isn't instantiated correctly
437         https://bugs.webkit.org/show_bug.cgi?id=62588
438         <rdar://problem/9586600>
439
440         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
441         (WebKit::NetscapePluginModule::determineQuirks):
442         The BankID plug-in uses the QuickDraw drawing model but doesn't draw anything so we can
443         use the half-baked QuickDraw support.
444
445         * WebProcess/Plugins/PluginProcessConnection.cpp:
446         (WebKit::defaultSyncMessageTimeout):
447         Don't use a sync message timeout for the BankID plug-in since it sends synchronous Apple Events
448         and we don't want the plug-in to die while it's waiting for a reply.
449
450 2011-06-13  Chris Fleizach  <cfleizach@apple.com>
451
452         Reviewed by Darin Adler.
453
454         kAXTextMarkerForPositionParametrizedAttribute does not work correctly in WK2
455         https://bugs.webkit.org/show_bug.cgi?id=62547
456
457         Implement the missing screenToWindow method for WK2.
458
459         * UIProcess/API/gtk/PageClientImpl.cpp:
460         (WebKit::PageClientImpl::screenToWindow):
461         * UIProcess/API/gtk/PageClientImpl.h:
462         * UIProcess/API/mac/PageClientImpl.h:
463         * UIProcess/API/mac/PageClientImpl.mm:
464         (WebKit::PageClientImpl::screenToWindow):
465         * UIProcess/API/qt/qwkpage.cpp:
466         (QWKPagePrivate::screenToWindow):
467         * UIProcess/API/qt/qwkpage_p.h:
468         * UIProcess/PageClient.h:
469         * UIProcess/WebPageProxy.cpp:
470         (WebKit::WebPageProxy::screenToWindow):
471         * UIProcess/WebPageProxy.h:
472         * UIProcess/WebPageProxy.messages.in:
473         * UIProcess/win/WebView.cpp:
474         (WebKit::WebView::screenToWindow):
475         * UIProcess/win/WebView.h:
476         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
477         (WebKit::WebChromeClient::screenToWindow):
478         * WebProcess/WebPage/WebPage.cpp:
479         (WebKit::WebPage::screenToWindow):
480         * WebProcess/WebPage/WebPage.h:
481
482 2011-06-13  Sam Weinig  <sam@webkit.org>
483
484         Reviewed by Darin Adler.
485
486         REGRESSION (81679-81939): In Safari, Dictionary look up (tap or Ctrl-Cmd-D) doesn't work if you have clicked on a word and not moved the mouse
487         <rdar://problem/9580237> 
488
489         * WebProcess/WebPage/mac/WebPageMac.mm:
490         (WebKit::shouldUseSelection):
491         Return early if the selection we are using is not a range.
492
493 2011-06-13  Tony Chang  <tony@chromium.org>
494
495         Reviewed by Dimitri Glazkov.
496
497         rename ENABLE_NEW_FLEXBOX to ENABLE_CSS3_FLEXBOX
498         https://bugs.webkit.org/show_bug.cgi?id=62578
499
500         * Configurations/FeatureDefines.xcconfig:
501
502 2011-06-13  No'am Rosenthal  <noam.rosenthal@nokia.com>
503
504         Reviewed by Kenneth Rohde Christiansen.
505
506         [Qt] Implement accelerated compositing on WK2 Qt port
507         https://bugs.webkit.org/show_bug.cgi?id=56935
508
509         Added WebGraphicsLayer, a subclass of WebCore::GraphicsLayer that serializes the state of the layer
510         tree to the UI process WebLayerTreeInfo.
511         For now this patch doesn't serialize the animation information, a feature that will be upstreamed later on.
512
513         Together with Viatcheslav Ostapenko.
514
515         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp: Added.
516         * WebProcess/WebCoreSupport/WebGraphicsLayer.h: Added.
517
518 2011-06-13  No'am Rosenthal  <noam.rosenthal@nokia.com>
519
520         Reviewed by Kenneth Rohde Christiansen.
521
522         [Qt] Implement accelerated compositing on WK2 Qt port
523         https://bugs.webkit.org/show_bug.cgi?id=56935
524
525         Added WebLayerTreeInfo: a set of structures that can serialize a tree of GraphicsLayers
526         across to the UI process.
527
528         Together with Viatcheslav Ostapenko.
529
530         * Scripts/webkit2/messages.py:
531         * Shared/WebLayerTreeInfo.cpp: Added.
532         * Shared/WebLayerTreeInfo.h: Added.
533
534 2011-06-11  Jer Noble  <jer.noble@apple.com>
535
536         Reviewed by Anders Carlsson.
537
538         Avoid flashing when exiting full-screen mode.
539         https://bugs.webkit.org/show_bug.cgi?id=62338
540
541         Instead of making a round-trip between processes by calling forceRepaint
542         and waiting for a callback, instead make a WebProcess-side call to
543         forceRepaintWithoutCallback before sending the ExitAcceleratedCompositingMode
544         message to the WebFullScreenControllerProxy. This also means we can get rid of
545         the dragImage creation and display.
546
547         Because this redraw will happen during the current run-loop instead of a future
548         one, make sure the background color has been set before the redraw in 
549         didEnterFullScreen().
550
551         Wait to hide the full-screen window until after we have received the 
552         ExitAcceleratedCompositingMode message.  By this time, repaint will have already
553         completed.
554
555         * UIProcess/mac/WKFullScreenWindowController.h:
556         * UIProcess/mac/WKFullScreenWindowController.mm:
557         (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Disable
558             screen updates, to be re-enabled during exitAcceleratedCompositingMode.
559         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Don't hide
560             the full-screen window here; wait for exitAcceleratedCompositing instead.
561         (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): Collapse 
562             the redrawCompleted method into this one.
563         (-[WKFullScreenWindowController close]): Remove the reference to 
564             exitCompositedModeRepaintCompleted.
565         * WebProcess/FullScreen/WebFullScreenManager.cpp:
566         (WebKit::WebFullScreenManager::didEnterFullScreen): Set the full screen
567             background color first.
568         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:
569         (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): Repaint before
570             sending the ExitAcceleratedCompositingMode message. 
571
572 2011-06-13  Tony Chang  <tony@chromium.org>
573
574         Reviewed by Adam Barth.
575
576         rename ENABLE_FLEXBOX to ENABLE_NEW_FLEXBOX
577         https://bugs.webkit.org/show_bug.cgi?id=62545
578
579         * Configurations/FeatureDefines.xcconfig:
580
581 2011-06-13  Anders Carlsson  <andersca@apple.com>
582
583         Reviewed by Dan Bernstein.
584
585         Don't access freed memory in the UI process when a plug-in process crashes
586         https://bugs.webkit.org/show_bug.cgi?id=62548
587         <rdar://problem/9599243>
588
589         Call pluginProcessCrashedOrFailedToLaunch after sending messages to all processes about the plug-in crash,
590         otherwise we'll try to dereference m_pluginInfo.path after the PluginProcessProxy object has been deleted.
591
592         * UIProcess/Plugins/PluginProcessProxy.cpp:
593         (WebKit::PluginProcessProxy::didClose):
594
595 2011-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
596
597         Reviewed by Martin Robinson.
598
599         [GTK] Fix a crash when drawing area has been deleted
600         https://bugs.webkit.org/show_bug.cgi?id=62541
601
602         Check whether WebPageProxy::drawingArea() returns a valid pointer
603         before using it, it might be null, for example, when the web
604         process crashes.
605
606         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
607         (callDrawingAreaPaintMethod):
608         (webkitWebViewBaseSizeAllocate):
609
610 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
611
612         Reviewed by Kenneth Rohde Christiansen.
613
614         [EFL][WK2] Minor fix: fix coding style and remove unnecessary codes for WebKit2 efl port's PageClientImpl
615         https://bugs.webkit.org/show_bug.cgi?id=62429
616
617         * UIProcess/API/efl/PageClientImpl.cpp:
618         (WebKit::PageClientImpl::scrollView):
619         (WebKit::PageClientImpl::setCursor):
620         (WebKit::PageClientImpl::windowToScreen):
621         (WebKit::PageClientImpl::doneWithKeyEvent):
622         (WebKit::PageClientImpl::setFindIndicator):
623         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
624         (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
625         (WebKit::PageClientImpl::findStringInCustomRepresentation):
626         (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation):
627         * UIProcess/API/efl/PageClientImpl.h:
628
629 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
630
631         Reviewed by Kenneth Rohde Christiansen.
632
633         [EFL][WK2] Add initial WebPreferencesEfl.cpp for webkit2 efl port
634         https://bugs.webkit.org/show_bug.cgi?id=62525
635
636         * UIProcess/efl/WebPreferencesEfl.cpp: Added.
637         (WebKit::WebPreferences::platformInitializeStore):
638         (WebKit::WebPreferences::platformUpdateStringValueForKey):
639         (WebKit::WebPreferences::platformUpdateBoolValueForKey):
640         (WebKit::WebPreferences::platformUpdateUInt32ValueForKey):
641         (WebKit::WebPreferences::platformUpdateDoubleValueForKey):
642
643 2011-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
644
645         Reviewed by Martin Robinson.
646
647         [GTK] Add context menu support for Webkit2
648         https://bugs.webkit.org/show_bug.cgi?id=54827
649
650         * GNUmakefile.am: Add new files to compilation.
651         * UIProcess/API/gtk/PageClientImpl.cpp:
652         (WebKit::PageClientImpl::createContextMenuProxy): Create a context
653         menu proxy.
654         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
655         (globalPointForClientPoint): Function copied from webkit1 to
656         convert a point in widget coordinates to global coordinates.
657         (popupMenuPositionFunction):
658         (webkitWebViewBaseShowContextMenu): Show the given context menu at
659         the given position.
660         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
661         * UIProcess/gtk/WebContextMenuProxyGtk.cpp: Added.
662         (WebKit::contextMenuItemActivatedCallback):
663         (WebKit::WebContextMenuProxyGtk::createGtkMenu):
664         (WebKit::WebContextMenuProxyGtk::showContextMenu):
665         (WebKit::WebContextMenuProxyGtk::hideContextMenu):
666         (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk):
667         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
668         * UIProcess/gtk/WebContextMenuProxyGtk.h: Copied from Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h.
669         (WebKit::WebContextMenuProxyGtk::create):
670
671 2011-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
672
673         Reviewed by Martin Robinson.
674
675         [GTK] Export an API similar to WebKit1
676         https://bugs.webkit.org/show_bug.cgi?id=57820
677
678         Add first implementation of WebKitWebView, a class with the same
679         API than webkit1, that wraps the C API to provide a high level
680         WebKit2 API for GTK port.
681
682         * GNUmakefile.am: Add new files to compilation.
683         * UIProcess/API/gtk/WebKitWebView.cpp: Added.
684         (webkit_web_view_init):
685         (webkit_web_view_class_init):
686         (webkit_web_view_new):
687         (webkit_web_view_load_uri):
688         (webkit_web_view_go_back):
689         (webkit_web_view_go_forward):
690         * UIProcess/API/gtk/WebKitWebView.h: Added.
691         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
692         (webkitWebViewBaseCreate):
693         (webkitWebViewBaseCreateWebPage):
694         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
695         * UIProcess/API/gtk/webkit/webkit.h: Added.
696
697 2011-06-12  Adam Barth  <abarth@webkit.org>
698
699         Reviewed by Alexey Proskuryakov.
700
701         Rename FrameLoaderClient::interruptForPolicyChangeError to use the past tense
702         https://bugs.webkit.org/show_bug.cgi?id=62516
703
704         * WebProcess/WebCoreSupport/WebErrors.h:
705         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
706         (WebKit::WebFrameLoaderClient::interruptedForPolicyChangeError):
707         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
708         * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
709         (WebKit::interruptedForPolicyChangeError):
710         * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
711         (WebKit::interruptedForPolicyChangeError):
712         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
713         (WebKit::interruptedForPolicyChangeError):
714         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
715         (WebKit::interruptedForPolicyChangeError):
716         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
717         (WebKit::interruptedForPolicyChangeError):
718
719 2011-06-12  Adam Barth  <abarth@webkit.org>
720
721         Reviewed by Eric Seidel.
722
723         Remove FrameLoader::isProcessingUserGesture
724         https://bugs.webkit.org/show_bug.cgi?id=62519
725
726         Instead of asking the gesture indicator directly, ask the
727         ScriptController, like everyone else.  The gesture indicator is just
728         one of the piece of information we use to determine whether we're
729         processing a user gesture.
730
731         * WebProcess/InjectedBundle/InjectedBundle.cpp:
732         (WebKit::InjectedBundle::isProcessingUserGesture):
733
734 2011-06-12  Adam Barth  <abarth@webkit.org>
735
736         Reviewed by Alexey Proskuryakov.
737
738         Remove trival "forward-to-client" member functions from FrameLoader
739         https://bugs.webkit.org/show_bug.cgi?id=62510
740
741         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
742         (WebKit::WebFrameNetworkingContext::blockedError):
743
744 2011-06-11  Stephanie Lewis  <slewis@apple.com>
745
746         Reviewed by Sam Weinig.
747
748         https://bugs.webkit.org/show_bug.cgi?id=62480
749         part of <rdar://problem/8675177>
750         Add API to launch the WebProcess.  Launching it earlier can save time 
751         when loading the first page.
752
753         * UIProcess/API/C/WKContext.cpp:
754         (WKContextWarmInitialProcess):
755         * UIProcess/API/C/WKContextPrivate.h:
756         * UIProcess/WebContext.cpp:
757         (WebKit::WebContext::warmInitialProcess):
758         * UIProcess/WebContext.h:
759
760 2011-06-09  Jer Noble  <jer.noble@apple.com>
761
762         Reviewed by Darin Adler.
763
764         AVPlayerLayer is adding a "fade" animation during Safari full-screen
765         https://bugs.webkit.org/show_bug.cgi?id=62433
766
767         CoreAnimation will add default animations when certain properties are changed, unless
768         those changes are wrapped in a CATransaction which has had its disableActions property set
769         to true.  Wrap each of these three property changes in a CATransaction and disable its actions,
770         so that the default "fade" animation is not created in response.
771
772         * UIProcess/mac/WKFullScreenWindowController.mm:
773         (-[WKFullScreenWindowController enterFullScreen:]): Wrap with CATransaction.
774         (-[WKFullScreenWindowController _swapView:with:]): Ditto:
775         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:
776         (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): Ditto.
777
778 2011-06-10  Anders Carlsson  <andersca@apple.com>
779
780         Reviewed by Sam Weinig.
781
782         REGRESSION (WebKit2): window.showModalDialog() broken
783         https://bugs.webkit.org/show_bug.cgi?id=62496
784         <rdar://problem/9581492>
785
786         If dispatching a message ends up creating a nested run loop, some incoming messages can end up not being
787         delivered until we exit from the run loop.
788
789         Fix this by using a Deque instead of a Vector for incoming messages, and get one message at a time and then
790         dispatch it. That prevents us from having any lingering messages lying around in stack allocated space.
791
792         * Platform/CoreIPC/Connection.cpp:
793         (CoreIPC::Connection::waitForMessage):
794         (CoreIPC::Connection::dispatchMessages):
795         * Platform/CoreIPC/Connection.h:
796
797 2011-06-10  Sam Weinig  <sam@webkit.org>
798
799         Reviewed by Anders Carlsson.
800
801         Unresponsive cursor is shown when displaying a modal dialog
802         Part of <rdar://problem/9581492>
803         https://bugs.webkit.org/show_bug.cgi?id=62494
804
805         * UIProcess/WebPageProxy.cpp:
806         (WebKit::WebPageProxy::runModal):
807         * UIProcess/WebPageProxy.h:
808         Stop the responsiveness timer when calling out to show a modal dialog.
809
810 2011-06-10  Tony Chang  <tony@chromium.org>
811
812         Reviewed by Ojan Vafai.
813
814         add a compile guard ENABLE(FLEXBOX)
815         https://bugs.webkit.org/show_bug.cgi?id=62049
816
817         * Configurations/FeatureDefines.xcconfig:
818
819 2011-06-10  Ryuan Choi  <ryuan.choi@samsung.com>
820
821         Reviewed by Kenneth Rohde Christiansen.
822
823         [EFL][WK2] Add dummy files in WebProcess/WebCoreSupport/efl
824         https://bugs.webkit.org/show_bug.cgi?id=62346
825
826         Add WebProcess/WebCoreSupport/efl directory and files.
827
828         * WebProcess/WebCoreSupport/efl/WebContextMenuClientEfl.cpp: Added.
829         (WebKit::WebContextMenuClient::lookUpInDictionary):
830         (WebKit::WebContextMenuClient::isSpeaking):
831         (WebKit::WebContextMenuClient::speak):
832         (WebKit::WebContextMenuClient::stopSpeaking):
833         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp: Added.
834         (WebKit::WebEditorClient::handleKeyboardEvent):
835         (WebKit::WebEditorClient::handleInputMethodKeydown):
836         * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp: Added.
837         (WebKit::cancelledError):
838         (WebKit::blockedError):
839         (WebKit::cannotShowURLError):
840         (WebKit::interruptForPolicyChangeError):
841         (WebKit::cannotShowMIMETypeError):
842         (WebKit::fileDoesNotExistError):
843         (WebKit::pluginWillHandleLoadError):
844         * WebProcess/WebCoreSupport/efl/WebFrameNetworkingContext.h: Added.
845         (WebFrameNetworkingContext::create):
846         (WebFrameNetworkingContext::WebFrameNetworkingContext):
847         * WebProcess/WebCoreSupport/efl/WebPopupMenuEfl.cpp: Added.
848         (WebKit::WebPopupMenu::setUpPlatformData):
849
850 2011-06-09  Andreas Kling  <kling@webkit.org>
851
852         Reviewed by Darin Adler.
853
854         WebKit2: Remove unused function CoreIPC::Connection::deprecatedWaitFor().
855         https://bugs.webkit.org/show_bug.cgi?id=62386
856
857         * Platform/CoreIPC/Connection.h:
858
859 2011-06-09  Andreas Kling  <kling@webkit.org>
860
861         Reviewed by Anders Carlsson.
862
863         [Qt][WK2] Remove usage of deprecated CoreIPC functions.
864         https://bugs.webkit.org/show_bug.cgi?id=62290
865
866         Use the new DrawingArea{,Proxy}.messages.in approach to CoreIPC in TiledDrawingArea.
867         The TiledDrawingArea{,Proxy}-specific messages were moved up into DrawingArea{,Proxy}
868         and guarded by ENABLE(TILED_BACKING_STORE).
869
870         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h: Removed.
871         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h: Removed.
872
873         * GNUmakefile.am:
874         * WebKit2.pro:
875         * WebKit2.xcodeproj/project.pbxproj:
876         * win/WebKit2.vcproj: Prune deleted files from build system.
877
878         * Platform/CoreIPC/MessageID.h: Remove legacy DrawingArea message ID's.
879
880         * UIProcess/API/qt/qgraphicswkview.cpp:
881         (QGraphicsWKViewPrivate::commitScale): No longer waits for all tile updates to complete,
882         this will be addressed by the soon-to-be-upstreamed TileSet mechanism.
883
884         * UIProcess/DrawingAreaProxy.messages.in:
885         * UIProcess/DrawingAreaProxy.h:
886         (WebKit::DrawingAreaProxy::didSetSize):
887         (WebKit::DrawingAreaProxy::invalidate):
888         (WebKit::DrawingAreaProxy::snapshotTaken):
889         (WebKit::DrawingAreaProxy::tileUpdated):
890         (WebKit::DrawingAreaProxy::allTileUpdatesProcessed): Added IPC calls used by
891         TiledDrawingAreaProxy to DrawingAreaProxy.
892
893         * WebProcess/WebPage/DrawingArea.messages.in:
894         * WebProcess/WebPage/DrawingArea.h:
895         (WebKit::DrawingArea::setSize):
896         (WebKit::DrawingArea::cancelTileUpdate):
897         (WebKit::DrawingArea::requestTileUpdate):
898         (WebKit::DrawingArea::takeSnapshot): Added IPC calls used by TiledDrawingArea
899         to DrawingArea.
900
901         * UIProcess/DrawingAreaProxyImpl.h:
902         * UIProcess/DrawingAreaProxyImpl.cpp: Remove the now-unneeded didReceiveMessage()
903         and didReceiveSyncMessage().
904
905         * WebProcess/WebPage/DrawingAreaImpl.cpp:
906         * WebProcess/WebPage/DrawingAreaImpl.h: Remove the now-unneeded didReceiveMessage().
907
908         * UIProcess/TiledDrawingAreaProxy.h:
909         * UIProcess/TiledDrawingAreaProxy.cpp:
910         (WebKit::TiledDrawingAreaProxy::sizeDidChange):
911         (WebKit::TiledDrawingAreaProxy::tileUpdated):
912         (WebKit::TiledDrawingAreaProxy::allTileUpdatesProcessed): Split didReceiveMessage()
913         into functions.
914
915         (WebKit::TiledDrawingAreaProxy::removeTile):
916         (WebKit::TiledDrawingAreaProxy::requestTileUpdate):
917         (WebKit::TiledDrawingAreaProxy::setPageIsVisible):
918         (WebKit::TiledDrawingAreaProxy::takeSnapshot): Use new-style IPC.
919
920         * WebProcess/WebPage/TiledDrawingArea.cpp:
921         (WebKit::TiledDrawingArea::setSize):
922         (WebKit::TiledDrawingArea::cancelTileUpdate):
923         (WebKit::TiledDrawingArea::requestTileUpdate):
924         (WebKit::TiledDrawingArea::takeSnapshot): Split didReceiveMessage() into functions.
925
926         (WebKit::TiledDrawingArea::display):
927         (WebKit::TiledDrawingArea::updateTile):
928         (WebKit::TiledDrawingArea::tileUpdateTimerFired): Use new-style IPC.
929
930         * UIProcess/WebPageProxy.cpp:
931         (WebKit::WebPageProxy::didReceiveMessage): Remove handling of
932         CoreIPC::MessageClassDrawingAreaProxyLegacy.
933
934         * WebProcess/WebPage/WebPage.cpp:
935         (WebKit::WebPage::didReceiveMessage): Remove handling of
936         CoreIPC::MessageClassDrawingAreaLegacy.
937
938         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp: Remove unneeded includes.
939
940         * WebProcess/WebPage/TiledDrawingArea.h: Remove didReceiveMessage() and make
941         CoreIPC message handlers explicitly virtual.
942
943 2011-06-09  Andreas Kling  <kling@webkit.org>
944
945         Reviewed by Anders Carlsson.
946
947         WebKit2: Generate correct header conditionals in message receivers.
948         https://bugs.webkit.org/show_bug.cgi?id=62379
949
950         Given a *.messages.in file like this:
951
952         Foo(AwesomeObject o)
953         #if ENABLE(ESOTERIC_FEATURE)
954         Bar(AwesomeObject o)
955         #endif
956
957         messages.py would include AwesomeObject.h only #if ENABLE(ESOTERIC_FEATURE).
958         This breaks the build on platforms without that defined.
959
960         Furthermore, if two messages guarded by different conditionals both pull in the same
961         header, only the last conditional will be applied, for example:
962
963         #if ENABLE(ESOTERIC_FEATURE)
964         Foo(AwesomeObject o)
965         #endif
966         #if ENABLE(MYSTERIOUS_FEATURE)
967         Bar(AwesomeObject o)
968         #endif
969
970         Would include AwesomeObject.h #if ENABLE(MYSTERIOUS_FEATURE) when it really should
971         check #if ENABLE(ESOTERIC_FEATURE) || ENABLE(MYSTERIOUS_FEATURE).
972
973         Change the generator to consider all conditionals for a given header file.
974         Also consider conditionals for reply parameters.
975
976         * Scripts/webkit2/messages.py:
977         * Scripts/webkit2/messages_unittest.py:
978
979 2011-06-09  Eunmi Lee  <eunmi15.lee@samsung.com>
980
981         Reviewed by Kenneth Rohde Christiansen.
982
983         [EFL][WK2] Add PageClientImpl and WebPageProxyEfl for efl port
984         https://bugs.webkit.org/show_bug.cgi?id=62363
985
986         * UIProcess/API/efl/PageClientImpl.cpp: Added.
987         (WebKit::PageClientImpl::PageClientImpl):
988         (WebKit::PageClientImpl::~PageClientImpl):
989         (WebKit::PageClientImpl::createDrawingAreaProxy):
990         (WebKit::PageClientImpl::setViewNeedsDisplay):
991         (WebKit::PageClientImpl::displayView):
992         (WebKit::PageClientImpl::scrollView):
993         (WebKit::PageClientImpl::viewSize):
994         (WebKit::PageClientImpl::isViewWindowActive):
995         (WebKit::PageClientImpl::isViewFocused):
996         (WebKit::PageClientImpl::isViewVisible):
997         (WebKit::PageClientImpl::isViewInWindow):
998         (WebKit::PageClientImpl::processDidCrash):
999         (WebKit::PageClientImpl::didRelaunchProcess):
1000         (WebKit::PageClientImpl::pageClosed):
1001         (WebKit::PageClientImpl::toolTipChanged):
1002         (WebKit::PageClientImpl::setCursor):
1003         (WebKit::PageClientImpl::setViewportArguments):
1004         (WebKit::PageClientImpl::registerEditCommand):
1005         (WebKit::PageClientImpl::clearAllEditCommands):
1006         (WebKit::PageClientImpl::canUndoRedo):
1007         (WebKit::PageClientImpl::executeUndoRedo):
1008         (WebKit::PageClientImpl::convertToDeviceSpace):
1009         (WebKit::PageClientImpl::convertToUserSpace):
1010         (WebKit::PageClientImpl::windowToScreen):
1011         (WebKit::PageClientImpl::doneWithKeyEvent):
1012         (WebKit::PageClientImpl::createPopupMenuProxy):
1013         (WebKit::PageClientImpl::createContextMenuProxy):
1014         (WebKit::PageClientImpl::setFindIndicator):
1015         (WebKit::PageClientImpl::didChangeScrollbarsForMainFrame):
1016         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
1017         (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
1018         (WebKit::PageClientImpl::customRepresentationZoomFactor):
1019         (WebKit::PageClientImpl::setCustomRepresentationZoomFactor):
1020         (WebKit::PageClientImpl::flashBackingStoreUpdates):
1021         (WebKit::PageClientImpl::findStringInCustomRepresentation):
1022         (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation):
1023         (WebKit::PageClientImpl::userSpaceScaleFactor):
1024         * UIProcess/API/efl/PageClientImpl.h: Added.
1025         (WebKit::PageClientImpl::create):
1026         (WebKit::PageClientImpl::viewObject):
1027         (WebKit::PageClientImpl::page):
1028         * UIProcess/WebPageProxy.h:
1029         * UIProcess/efl/WebPageProxyEfl.cpp: Added.
1030         (WebKit::WebPageProxy::viewObject):
1031         (WebKit::WebPageProxy::standardUserAgent):
1032         (WebKit::WebPageProxy::getEditorCommandsForKeyEvent):
1033         (WebKit::WebPageProxy::saveRecentSearches):
1034         (WebKit::WebPageProxy::loadRecentSearches):
1035
1036 2011-06-08  John Sullivan  <sullivan@apple.com>
1037
1038         Reviewed by Darin Adler.
1039
1040         <https://bugs.webkit.org/show_bug.cgi?id=62332>
1041         <rdar://problem/9355199>
1042         [WKView _setDragImage:at:linkDrag:] can crash if WKView is dealloc'ed during drag
1043
1044         * UIProcess/API/mac/WKView.mm:
1045         (-[WKView _resendKeyDownEvent:]):
1046         Renamed self-protecting RetainPtr from "protect" to "protector" so it's a noun.
1047         (-[WKView _setDragImage:at:linkDrag:]):
1048         Added a self-protecting RetainPtr.
1049
1050 2011-06-08  No'am Rosenthal  <noam.rosenthal@nokia.com>
1051
1052         Reviewed by Kenneth Rohde Christiansen.
1053
1054         WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1055         https://bugs.webkit.org/show_bug.cgi?id=61694
1056
1057         Add an ArgumentCoder for FloatPoint3D.
1058
1059         Together with Viatcheslav Ostapenko.
1060
1061         * Scripts/webkit2/messages.py:
1062         * Shared/WebCoreArgumentCoders.h:
1063
1064 2011-06-08  No'am Rosenthal  <noam.rosenthal@nokia.com>
1065
1066          Reviewed by Kenneth Rohde Christiansen.
1067
1068          WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1069          https://bugs.webkit.org/show_bug.cgi?id=61694
1070
1071          Add ArgumentCoders for TransformOperation, including all the subclasses,
1072          and TransformOperations.
1073
1074          * Scripts/webkit2/messages.py:
1075          * Shared/WebCoreArgumentCoders.h:
1076
1077 2011-06-08  Yael Aharon  <yael.aharon@nokia.com>
1078
1079         Reviewed by Andreas Kling.
1080
1081         [Qt] Build fix for building QtWebKit inside of Qt.
1082         https://bugs.webkit.org/show_bug.cgi?id=62280
1083
1084         Remove CONFIG=staticlib, because it causes the configure script to add -lwebkit2
1085         into QtWebKit.prl.
1086
1087         * WebKit2.pri:
1088
1089 2011-06-07  Tim Horton  <timothy_horton@apple.com>
1090
1091         Reviewed by Alexey Proskuryakov.
1092
1093         Use correct CFURLStorageSessionRef definition on Snow Leopard
1094         https://bugs.webkit.org/show_bug.cgi?id=62223
1095
1096         * PluginProcess/mac/PluginProcessShim.mm:
1097
1098 2011-06-07  John Sullivan  <sullivan@apple.com>
1099
1100         Reviewed by Darin Adler.
1101
1102         <https://bugs.webkit.org/show_bug.cgi?id=62248>
1103         <rdar://problem/9568516>
1104         WKResponderChainSink mechanism isn't robust against some types of responder chain manipulation
1105
1106         * UIProcess/API/mac/WKView.mm:
1107         (-[WKResponderChainSink detach]):
1108         This method formerly blindly assumed that since -initWithResponderChain: put self at the
1109         end of the responder chain, after _lastResponderInChain, then self is still at the end
1110         of the responder chain and still immediately after _lastResponderInChain. Made this function
1111         robust against some kinds of responder chain manipulations, though it can't be robust against
1112         some other kinds (e.g., manipulations that removed self from this chain and put it into some
1113         other chain).
1114
1115 2011-06-07  Sam Weinig  <sam@webkit.org>
1116
1117         Reviewed by Anders Carlsson.
1118
1119         Remove repeated IPC traffic from SetRenderTreeSize message
1120         https://bugs.webkit.org/show_bug.cgi?id=62244
1121
1122         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1123         Add didLayoutForFrame callback.
1124
1125         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1126         (WKBundlePageGetRenderTreeSize):
1127         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
1128         Add render tree size getter in WebProcess.
1129
1130         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1131         (WebKit::InjectedBundlePageLoaderClient::didLayoutForFrame):
1132         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1133         Added.
1134
1135         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1136         * WebProcess/WebCoreSupport/WebChromeClient.h:
1137         Removed setRenderTreeSize.
1138
1139         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1140         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
1141         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1142         Call the new didLayoutForFrame client function.
1143
1144         * WebProcess/WebPage/WebPage.cpp:
1145         (WebKit::WebPage::renderTreeSize):
1146         * WebProcess/WebPage/WebPage.h:
1147         Add iterative implementation to compute the total size of the render tree
1148         for a page.
1149
1150 2011-06-07  Zalan Bujtas  <zbujtas@gmail.com>
1151
1152         Reviewed by Andreas Kling.
1153
1154         TiledDrawingArea: Delay serving tile requests when the drawing area is suspended.
1155
1156         Do not paint tiles when painting is disabled (suspended) on the web process side.
1157         Buffer up the tile requests and paint them, when the drawing area gets resumed.
1158         On the UI process side, do not block on tile updates, when the tiled area is
1159         not visible (painting is disabled on the web process side).
1160
1161         * UIProcess/TiledDrawingAreaProxy.cpp:
1162         (WebKit::TiledDrawingAreaProxy::waitUntilUpdatesComplete):
1163         * WebProcess/WebPage/TiledDrawingArea.cpp:
1164         (WebKit::TiledDrawingArea::suspendPainting):
1165         (WebKit::TiledDrawingArea::resumePainting):
1166         (WebKit::TiledDrawingArea::scheduleTileUpdate):
1167         (WebKit::TiledDrawingArea::tileUpdateTimerFired):
1168         (WebKit::TiledDrawingArea::didReceiveMessage):
1169         * WebProcess/WebPage/TiledDrawingArea.h:
1170
1171 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1172
1173         Unreviewed, rolling out r88259 and r88263.
1174         http://trac.webkit.org/changeset/88259
1175         http://trac.webkit.org/changeset/88263
1176         https://bugs.webkit.org/show_bug.cgi?id=62228
1177
1178         broke builds (Requested by rniwa on #webkit).
1179
1180         * PluginProcess/mac/PluginProcessShim.mm:
1181
1182 2011-06-07  Tim Horton  <timothy_horton@apple.com>
1183
1184         Reviewed by Alexey Proskuryakov.
1185
1186         Use correct CFURLStorageSessionRef definition on Snow Leopard
1187         https://bugs.webkit.org/show_bug.cgi?id=62223
1188
1189         * PluginProcess/mac/PluginProcessShim.mm:
1190
1191 2011-06-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1192
1193         Reviewed by Martin Robinson.
1194
1195         [GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView
1196         https://bugs.webkit.org/show_bug.cgi?id=62200
1197
1198         In WebKit2 PluginPackage is used by the UI process to load plugins
1199         in order to get information about them, but it doesn't use any GTK
1200         symbol. So the UI process should be able to load plugins even when
1201         building with GTK3, but we should not allow the plugin view to use
1202         the plugin if it mixes GTK2 and GTK3 symbols.
1203
1204         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
1205         (WebKit::moduleMixesGtkSymbols):
1206         (WebKit::NetscapePlugin::platformPostInitialize): Check whether
1207         the module is mixing GTK+ 2 and GTK+ 3 symbols.
1208
1209 2011-06-06  Sheriff Bot  <webkit.review.bot@gmail.com>
1210
1211         Unreviewed, rolling out r88222.
1212         http://trac.webkit.org/changeset/88222
1213         https://bugs.webkit.org/show_bug.cgi?id=62192
1214
1215         Broke compile on Mac (Requested by abarth on #webkit).
1216
1217         * Scripts/webkit2/messages.py:
1218         * Shared/WebCoreArgumentCoders.h:
1219
1220 2011-06-06  Noam Rosenthal  <noam.rosenthal@nokia.com>
1221
1222         Reviewed by Kenneth Rohde Christiansen.
1223
1224         WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1225         https://bugs.webkit.org/show_bug.cgi?id=61694
1226
1227         Add ArgumentCoders for TransformOperation, including all the subclasses,
1228         and TransformOperations.
1229
1230         * Scripts/webkit2/messages.py:
1231         * Shared/WebCoreArgumentCoders.h:
1232
1233 2011-06-06  John Sullivan  <sullivan@apple.com>
1234
1235         Reviewed by Dan Bernstein.
1236
1237         <https://bugs.webkit.org/show_bug.cgi?id=62165>
1238         <rdar://problem/9555835>
1239         WebKit2 find-on-page callback doesn’t handle kWKMoreThanMaximumMatchCount on PDF pages
1240
1241         * UIProcess/API/mac/PDFViewController.mm:
1242         (WebKit::PDFViewController::findString):
1243         Return kWKMoreThanMaximumMatchCount when appropriate, a la FindController::countStringMatches().
1244         Also, skip counting all the matches if maxMatchCount is 0, to avoid (perhaps slowly) computing a
1245         number that would be ignored.
1246
1247 2011-06-06  Carlos Garcia Campos  <cgarcia@igalia.com>
1248
1249         Reviewed by Anders Carlsson.
1250
1251         Do not use NPRuntimeObjectMap in NetscapePlugin::setException when plug-in is running out of process
1252         https://bugs.webkit.org/show_bug.cgi?id=62124
1253
1254         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1255         (WebKit::NetscapePlugin::setException):
1256
1257 2011-06-06  Dominic Cooney  <dominicc@chromium.org>
1258
1259         Unreviewed WinCairo build fix after r88159.
1260
1261         * win/WebKit2CFLite.def: Export symbols for WebCoreTestSupport.
1262
1263 2011-06-04  Dominic Cooney  <dominicc@chromium.org>
1264
1265         Reviewed by Dimitri Glazkov.
1266
1267         Re-export JSC and WebCore symbols required by WebCoreTestSupport.
1268         https://bugs.webkit.org/show_bug.cgi?id=61076
1269
1270         * win/WebKit2.def:
1271
1272 2011-06-06  Alexandru Chiculita  <achicu@adobe.com>
1273
1274         Reviewed by Kent Tamura.
1275
1276         Add ENABLE_CSS_EXCLUSIONS support for build-webkit script
1277         https://bugs.webkit.org/show_bug.cgi?id=61628
1278
1279         * Configurations/FeatureDefines.xcconfig:
1280
1281 2011-06-06  Mihnea Ovidenie  <mihnea@adobe.com>
1282
1283         Reviewed by Kent Tamura.
1284
1285         Add ENABLE(CSS_REGIONS) guard for CSS Regions support
1286         https://bugs.webkit.org/show_bug.cgi?id=61631
1287
1288         * Configurations/FeatureDefines.xcconfig:
1289
1290 2011-06-06  Carlos Garcia Campos  <cgarcia@igalia.com>
1291
1292         Reviewed by Anders Carlsson.
1293
1294         [UNIX] SOCK_DGRAM sockets are not notified when the other end closes the connection
1295         https://bugs.webkit.org/show_bug.cgi?id=61538
1296
1297         Use SOCK_STREAM instead of SOCK_DGRAM sockets. Rework the message
1298         receiver code to support stream sockets, since it requires to
1299         handle message boundaries. The same code works for DGRAM sockets,
1300         so this change shouldn't break other ports using DGRAM.
1301
1302         * Platform/CoreIPC/Connection.h:
1303         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
1304         (CoreIPC::Connection::platformInitialize):
1305         (CoreIPC::Connection::processMessage): Process messages from data
1306         already received.
1307         (CoreIPC::readBytesFromSocket): Read from socket using recvmsg().
1308         (CoreIPC::Connection::readyReadHandler):
1309         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
1310         (WebKit::ProcessLauncher::launchProcess): Use SOCK_DGRAM in
1311         socketpair().
1312
1313 == Rolled over to ChangeLog-2011-06-04 ==