2011-06-15 Ryuan Choi <ryuan.choi@samsung.com>
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2011-06-15  Ryuan Choi  <ryuan.choi@samsung.com>
2
3         Rubber stamped by Eric Seidel.
4
5         [CMAKE][WK2] Add an option to build webkit2.
6         https://bugs.webkit.org/show_bug.cgi?id=62260
7
8         Add script to build WebKit2 using CMake.
9
10         * CMakeLists.txt: Added.
11
12 2011-06-15  John Sullivan  <sullivan@apple.com>
13
14         Reviewed by Sam Weinig.
15
16         WKSecurityOriginGetProtocol and WKSecurityOriginGetHost are named wrong because they return copied strings
17         <https://bugs.webkit.org/show_bug.cgi?id=62763>
18         <rdar://problem/9618071>
19
20         * Shared/API/c/WKSecurityOrigin.cpp:
21         (WKSecurityOriginCopyProtocol):
22         Renamed to use "Copy" instead of "Get" because it returns a copy.
23         (WKSecurityOriginCopyHost):
24         Ditto.
25
26         * Shared/API/c/WKSecurityOrigin.h:
27         Updated declarations.
28
29 2011-06-14  Jon Honeycutt  <jhoneycutt@apple.com>
30
31         REGRESSION(78201): Windowless Flash plug-ins are transparent on some sites
32         https://bugs.webkit.org/show_bug.cgi?id=62690
33         <rdar://problem/9512026>
34
35         Reviewed by Ada Chan.
36
37         The bug arises when mixing CoreGraphics and GDI. When we create a Windows
38         bitmap for a windowless plug-in to draw into, we first fill it with "clear",
39         or all 0s. If the plug-in uses GDI to draw, the GDI calls will ignore the
40         alpha channel, and if we then use CG to blend this bitmap onto the
41         GraphicsContext for the rest of the page, CG will treat the 0-filled
42         alpha channel as being transparent.
43
44         To fix this, on Windows, use a GDI-backed GraphicsContext to paint the
45         page in the WebProcess, and use GDI to blit from the UpdateInfo to the
46         backing store in the UI process.
47
48         * Platform/SharedMemory.h:
49         (WebKit::SharedMemory::handle):
50         Return the handle for the memory.
51
52         * Shared/ShareableBitmap.h:
53         Declared windowsContext() to return a HDC with the bitmap selected into it.
54         Added members to store the HDC and the HBITMAP.
55
56         * Shared/win/ShareableBitmapWin.cpp: Added.
57         (WebKit::ShareableBitmap::windowsContext):
58         Get the screen DC, and create a compatible DC from it. Create a DIB
59         section backed by the shared memory, select it into the context, and
60         return it.
61
62         * UIProcess/win/BackingStoreWin.cpp:
63         (WebKit::BackingStore::incorporateUpdate):
64         Use GDI to blit from the update info's bitmap into the backing store bitmap.
65
66         * WebProcess/WebPage/DrawingAreaImpl.cpp:
67         (WebKit::DrawingAreaImpl::createGraphicsContext):
68         Return a GraphicsContext from the ShareableBitmap.
69         (WebKit::DrawingAreaImpl::display):
70         Call createGraphicsContext(), and pass the ShareableBitmap.
71
72         * WebProcess/WebPage/DrawingAreaImpl.h:
73         Declare createGraphicsContext(), which on Windows will create a GDI-backed
74         GraphicsContext.
75
76         * WebProcess/WebPage/win/DrawingAreaImplWin.cpp: Added.
77         (WebKit::DrawingAreaImpl::createGraphicsContext):
78         Get a Windows context for the bitmap, and create and return a new
79         GraphicsContext using the DC.
80
81         * win/WebKit2.vcproj:
82         Added new files.
83
84 2011-06-15  Anders Carlsson  <andersca@apple.com>
85
86         Reviewed by Sam Weinig.
87
88         Move more argument coders to WebCoreArgumentCoders.cpp
89         https://bugs.webkit.org/show_bug.cgi?id=62755
90
91         * Shared/WebCoreArgumentCoders.cpp:
92         (CoreIPC::::decode):
93         (CoreIPC::::encode):
94         (CoreIPC::encodeImage):
95         (CoreIPC::decodeImage):
96         * Shared/WebCoreArgumentCoders.h:
97
98 2011-06-15  Anders Carlsson  <andersca@apple.com>
99
100         Reviewed by Darin Adler.
101
102         Add ShareableBitmap::createImage and get rid of WebCoreArgumentCodersCG.cpp
103         https://bugs.webkit.org/show_bug.cgi?id=62742
104
105         * Shared/ShareableBitmap.h:
106         Move createImage out of the #if PLATFORM(QT) section.
107
108         * Shared/WebCoreArgumentCoders.cpp:
109         (CoreIPC::decodeImage):
110         Call ShareableBitmap::createImage.
111
112         * Shared/WebCoreArgumentCoders.h:
113         remove createImage function declaration.
114
115         * Shared/cairo/ShareableBitmapCairo.cpp:
116         (WebKit::ShareableBitmap::createImage):
117         Add implementation.
118
119         * Shared/cg/ShareableBitmapCG.cpp:
120         (WebKit::ShareableBitmap::createGraphicsContext):
121         (WebKit::ShareableBitmap::createImage):
122         Move createImage implementation from WebCoreArgumentCodersCG.cpp here.
123
124         * WebKit2.xcodeproj/project.pbxproj:
125         * win/WebKit2.vcproj:
126         Update projects.
127
128 2011-06-15  Anders Carlsson  <andersca@apple.com>
129
130         Reviewed by Alexey Proskuryakov.
131
132         Move some argument coders to WebCoreArgumentCoders.cpp
133         https://bugs.webkit.org/show_bug.cgi?id=62739
134
135         * GNUmakefile.am:
136         * Shared/WebCoreArgumentCoders.cpp:
137         (CoreIPC::::encode):
138         (CoreIPC::::decode):
139         * Shared/WebCoreArgumentCoders.h:
140         * WebKit2.pro:
141
142 2011-06-15  Anders Carlsson  <andersca@apple.com>
143
144         Reviewed by Sam Weinig.
145
146         Fix possible null dereference in webSecKeychainItemCreateFromContentOnMainThread
147         https://bugs.webkit.org/show_bug.cgi?id=62736
148         <rdar://problem/9601595>
149
150         * WebProcess/mac/KeychainItemShimMethods.mm:
151         (WebKit::webSecKeychainItemCreateFromContentOnMainThread):
152         SecKeychainItemCreateFromContent can potentially return a null keychain item, so add a null check before trying to retain it.
153
154 2011-06-15  Anders Carlsson  <andersca@apple.com>
155
156         Reviewed by Dan Bernstein.
157
158         Ignore responsiveness timer callbacks on closed pages
159         https://bugs.webkit.org/show_bug.cgi?id=62735
160         <rdar://problem/9511295>
161
162         * UIProcess/WebPageProxy.cpp:
163         (WebKit::WebPageProxy::close):
164         Use nullptr instead of clear.
165
166         (WebKit::WebPageProxy::processDidBecomeUnresponsive):
167         Return early if the page isn't valid.
168
169         (WebKit::WebPageProxy::processDidBecomeResponsive):
170         Ditto.
171
172         (WebKit::WebPageProxy::updateBackingStoreDiscardableState):
173         Assert that the page is valid.
174
175 2011-06-15  Sheriff Bot  <webkit.review.bot@gmail.com>
176
177         Unreviewed, rolling out r88907.
178         http://trac.webkit.org/changeset/88907
179         https://bugs.webkit.org/show_bug.cgi?id=62732
180
181         See comment #15 by Nikolas Zimmermann on bug 62527 regarding
182         the deprecation of makeString() (Requested by acidx on
183         #webkit).
184
185         * UIProcess/efl/WebPageProxyEfl.cpp:
186         (WebKit::WebPageProxy::standardUserAgent):
187
188 2011-06-15  Csaba Osztrogonác  <ossy@webkit.org>
189
190         [Qt][WK2] Unreviewed rolling out r88799, because it made web process crash.
191
192         * Scripts/webkit2/messages.py:
193         * Shared/LayerTreeContext.h:
194         * Shared/qt/LayerTreeContextQt.cpp:
195         (WebKit::LayerTreeContext::LayerTreeContext):
196         (WebKit::LayerTreeContext::~LayerTreeContext):
197         (WebKit::LayerTreeContext::encode):
198         (WebKit::LayerTreeContext::decode):
199         (WebKit::LayerTreeContext::isEmpty):
200         (WebKit::operator==):
201         * UIProcess/DrawingAreaProxy.h:
202         * UIProcess/DrawingAreaProxy.messages.in:
203         * WebKit2.pro:
204         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
205         (WebCore::collectCompositingInfoForThisLayer):
206         * WebProcess/WebPage/LayerTreeHost.cpp:
207         (WebKit::LayerTreeHost::create):
208         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
209         * WebProcess/WebPage/qt/LayerTreeHostQt.h: Removed.
210
211 2011-06-14  Eunmi Lee  <eunmi15.lee@samsung.com>
212
213         Reviewed by Sam Weinig.
214
215         [EFL][WK2] Change string operation to makeString()
216         https://bugs.webkit.org/show_bug.cgi?id=62527
217
218         Use makeString() because it is better than creating individual strings and concatenating them.
219
220         * UIProcess/efl/WebPageProxyEfl.cpp:
221         (WebKit::WebPageProxy::standardUserAgent):
222
223 2011-06-14  Sam Weinig  <sam@webkit.org>
224
225         Reviewed by Simon Fraser.
226
227         Follow up for Callers should be robust against WebImage::create() returning an image with a null snapshot
228         https://bugs.webkit.org/show_bug.cgi?id=62666
229
230         * Shared/API/c/cg/WKImageCG.cpp:
231         (WKImageCreateCGImage):
232         (WKImageCreateFromCGImage):
233         Don't null check the arguments (as per our API design) or the direct result of WebImage::create.
234
235         * Shared/UserMessageCoders.h:
236         (WebKit::UserMessageEncoder::baseEncode):
237         Remove redundant check and make not being able to create a handle the same
238         as not being backed by shareable memory.
239
240 2011-06-14  John Sullivan  <sullivan@apple.com>
241
242         Reviewed by Ada Chan.
243
244         <https://bugs.webkit.org/show_bug.cgi?id=62693>
245         <rdar://problem/9601436>
246         windowsKeyCodeForKeyEvent should be robust against NSFlagsChanged events
247
248         * Shared/mac/WebEventFactory.mm:
249         (WebKit::windowsKeyCodeForKeyEvent):
250         Explicitly check for NSFlagsChanged before calling -charactersIgnoringModifiers, since
251         charactersIgnoringModifiers throws an exception for NSFlagsChanged events.
252
253 2011-06-14  Anders Carlsson  <andersca@apple.com>
254
255         Reviewed by Sam Weinig.
256
257         Use new byte array encoding/decoding functions for WTF argument coders
258         https://bugs.webkit.org/show_bug.cgi?id=62682
259
260         * Platform/CoreIPC/ArgumentCoders.cpp:
261         (CoreIPC::::encode):
262         (CoreIPC::::decode):
263         Use the new functions for the string argument coders.
264         
265         * Platform/CoreIPC/ArgumentCoders.h:
266         (CoreIPC::SimpleArgumentCoder::encode):
267         (CoreIPC::SimpleArgumentCoder::decode):
268         Use the new functions to avoid encoding/decoding the size when it's known at decode time.
269
270         * Platform/CoreIPC/ArgumentDecoder.cpp:
271         (CoreIPC::roundUpToAlignment):
272         Assert that the alignment is a power of 2.
273
274         (CoreIPC::decodeFixedLengthData):
275         Alignment comes before the size.
276
277         * UIProcess/cf/WebBackForwardListCF.cpp:
278         (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
279         Add a FIXME about now using the internal CoreIPC encoding format here.
280
281         * UIProcess/cf/WebPageProxyCF.cpp:
282         Bump the current session state data version number.
283
284 2011-06-14  No'am Rosenthal  <noam.rosenthal@nokia.com>
285
286         Reviewed by Kenneth Rohde Christiansen.
287
288         [Qt] Implement accelerated compositing on WK2 Qt port
289         https://bugs.webkit.org/show_bug.cgi?id=56935
290
291         Expose viewportVisibleRect(), so that we can detect which parts of a texture actually
292         need to be uploaded.
293
294         Together with Viatcheslav Ostapenko.
295
296         * UIProcess/API/qt/qwkpage.cpp:
297         (QWKPagePrivate::viewportVisibleRect):
298         * UIProcess/API/qt/qwkpage_p.h:
299         * UIProcess/PageClient.h:
300         * UIProcess/WebPageProxy.h:
301         * UIProcess/qt/WebPageProxyQt.cpp:
302         (WebKit::WebPageProxy::viewportVisibleRect):
303
304 2011-06-14  Anders Carlsson  <andersca@apple.com>
305
306         Reviewed by Sam Weinig.
307
308         Start using the new encode/decode functions
309         https://bugs.webkit.org/show_bug.cgi?id=62676
310
311         * Platform/CoreIPC/DataReference.cpp:
312         (CoreIPC::DataReference::encode):
313         Use encodeVariableLengthByteArray.
314
315         * Shared/UserMessageCoders.h:
316         (WebKit::UserMessageEncoder::baseEncode):
317         Use encodeVariableLengthByteArray and the new dataReference accessors.
318
319         (WebKit::UserMessageDecoder::baseDecode):
320         Use decodeVariableLengthByteArray.
321  
322         * Shared/WebData.h:
323         (WebKit::WebData::dataReference):
324         Return a reference to the data.
325
326         * Shared/WebSerializedScriptValue.h:
327         (WebKit::WebSerializedScriptValue::dataReference):
328         Ditto.
329
330         * Shared/cf/ArgumentCodersCF.cpp:
331         (CoreIPC::encode):
332         Use encodeVariableLengthByteArray.
333
334         * Shared/mac/SandboxExtensionMac.mm:
335         (WebKit::SandboxExtension::Handle::encode):
336         Use encodeVariableLengthByteArray.
337
338         * WebProcess/WebPage/DecoderAdapter.cpp:
339         (WebKit::DecoderAdapter::decodeBytes):
340         Use decodeVariableLengthByteArray.
341
342         * WebProcess/WebPage/EncoderAdapter.cpp:
343         (WebKit::EncoderAdapter::dataReference):
344         Rename data() to dataReference() to indicate that it returns a reference to the data.
345
346         (WebKit::EncoderAdapter::encodeBytes):
347         Use encodeVariableLengthByteArray.
348
349 2011-06-14  Anders Carlsson  <andersca@apple.com>
350
351         Reviewed by Sam Weinig.
352
353         Add encodeVariableLengthByteArray and decodeVariableLengthByteArray
354         https://bugs.webkit.org/show_bug.cgi?id=62674
355
356         Rename the ArgumentDecoder::decodeBytes overload that takes a DataReference to
357         decodeVariableLengthByteArray, to match the added encodeVariableLengthByteArray.
358
359         * Platform/CoreIPC/ArgumentDecoder.cpp:
360         (CoreIPC::ArgumentDecoder::decodeVariableLengthByteArray):
361         * Platform/CoreIPC/ArgumentDecoder.h:
362         * Platform/CoreIPC/ArgumentEncoder.cpp:
363         (CoreIPC::ArgumentEncoder::encodeFixedLengthData):
364         (CoreIPC::ArgumentEncoder::encodeVariableLengthByteArray):
365         * Platform/CoreIPC/ArgumentEncoder.h:
366         * Platform/CoreIPC/DataReference.cpp:
367         (CoreIPC::DataReference::decode):
368         * Shared/mac/SandboxExtensionMac.mm:
369         (WebKit::SandboxExtension::Handle::decode):
370
371 2011-06-14  Anders Carlsson  <andersca@apple.com>
372
373         Reviewed by Sam Weinig.
374
375         Add functions for converting between DataReferences and vectors
376         https://bugs.webkit.org/show_bug.cgi?id=62671
377
378         * Platform/CoreIPC/DataReference.h:
379         (CoreIPC::DataReference::DataReference):
380         New implicit constructor that takes a vector.
381
382         (CoreIPC::DataReference::vector):
383         New function that returns a new vector.
384
385         * Shared/WebBackForwardListItem.cpp:
386         (WebKit::WebBackForwardListItem::encode):
387         Use implicit constructor.
388
389         * WebProcess/WebPage/WebPage.cpp:
390         (WebKit::WebPage::runJavaScriptInMainFrame):
391         Ditto.
392
393 2011-06-14  John Sullivan  <sullivan@apple.com>
394
395         Reviewed by Dan Bernstein.
396
397         <https://bugs.webkit.org/show_bug.cgi?id=62666>
398         <rdar://problem/9606676>
399         Callers should be robust against WebImage::create() returning an image with a null snapshot
400
401         * Shared/API/c/cg/WKImageCG.cpp:
402         (WKImageCreateCGImage):
403         Return 0 if no bitmap was created.
404         (WKImageCreateFromCGImage):
405         Ditto.
406         
407         * Shared/UserMessageCoders.h:
408         (WebKit::UserMessageEncoder::baseEncode):
409         Check for null before dereferencing image->bitmap() in two places.
410         
411         * WebProcess/WebPage/WebPage.cpp:
412         (WebKit::WebPage::snapshotInViewCoordinates):
413         Return 0 if no bitmap was created.
414         (WebKit::WebPage::scaledSnapshotInDocumentCoordinates):
415         Ditto.
416         (WebKit::WebPage::createSnapshotOfVisibleContent):
417         Bail out if no bitmap was created.
418
419 2011-06-14  Anders Carlsson  <andersca@apple.com>
420
421         Reviewed by Darin Adler.
422
423         Add functions for encoding/decoding data with a known size and alignment
424         https://bugs.webkit.org/show_bug.cgi?id=62663
425
426         * Platform/CoreIPC/ArgumentDecoder.cpp:
427         (CoreIPC::ArgumentDecoder::decodeFixedLengthData):
428         * Platform/CoreIPC/ArgumentDecoder.h:
429         * Platform/CoreIPC/ArgumentEncoder.cpp:
430         (CoreIPC::ArgumentEncoder::encodeFixedLengthData):
431         (CoreIPC::ArgumentEncoder::encodeVariableLengthData):
432         * Platform/CoreIPC/ArgumentEncoder.h:
433
434 2011-06-14  Anders Carlsson  <andersca@apple.com>
435
436         Reviewed by Sam Weinig.
437
438         Move string ArgumentCoder template specializations out into a .cpp file
439         https://bugs.webkit.org/show_bug.cgi?id=62660
440
441         * GNUmakefile.am:
442         * Platform/CoreIPC/ArgumentCoders.cpp: Added.
443         (CoreIPC::::encode):
444         (CoreIPC::::decode):
445         * Platform/CoreIPC/ArgumentCoders.h:
446         * WebKit2.pro:
447         * WebKit2.xcodeproj/project.pbxproj:
448         * win/WebKit2.vcproj:
449
450 2011-06-14  Anders Carlsson  <andersca@apple.com>
451
452         Reviewed by Sam Weinig.
453
454         Remove PluginInfoStore::Plugin typedef
455         https://bugs.webkit.org/show_bug.cgi?id=62657
456
457         * UIProcess/Plugins/PluginInfoStore.h:
458         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
459         (WebKit::PluginInfoStore::getPluginInfo):
460         (WebKit::PluginInfoStore::shouldUsePlugin):
461
462 2011-06-14  Anders Carlsson  <andersca@apple.com>
463
464         Reviewed by Sam Weinig.
465
466         Create the PluginModuleInfo class and reverse the typedef so that PluginInfoStore::Plugin is now a typedef
467         https://bugs.webkit.org/show_bug.cgi?id=62654
468
469         * UIProcess/Plugins/PluginInfoStore.cpp:
470         (WebKit::PluginInfoStore::loadPluginsIfNecessary):
471         (WebKit::PluginInfoStore::loadPlugin):
472         (WebKit::PluginInfoStore::findPluginForMIMEType):
473         (WebKit::PluginInfoStore::findPluginForExtension):
474         (WebKit::PluginInfoStore::findPlugin):
475         (WebKit::PluginInfoStore::infoForPluginWithPath):
476         * UIProcess/Plugins/PluginInfoStore.h:
477         * UIProcess/Plugins/PluginProcessManager.cpp:
478         (WebKit::PluginProcessManager::getPluginProcessConnection):
479         * UIProcess/Plugins/PluginProcessProxy.cpp:
480         (WebKit::PluginProcessProxy::PluginProcessProxy):
481         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
482         (WebKit::WebPluginSiteDataManager::getSitesWithData):
483         (WebKit::WebPluginSiteDataManager::clearSiteData):
484         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
485         (WebKit::PluginInfoStore::getPluginInfo):
486         (WebKit::PluginInfoStore::shouldUsePlugin):
487         * UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp:
488         (WebKit::PluginInfoStore::getPluginInfo):
489         (WebKit::PluginInfoStore::shouldUsePlugin):
490         * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
491         (WebKit::isOldWindowsMediaPlayerPlugin):
492         (WebKit::isNewWindowsMediaPlayerPlugin):
493         (WebKit::PluginInfoStore::shouldUsePlugin):
494
495 2011-06-14  Stephanie Lewis  <slewis@apple.com>
496
497         Rubber stamped by Oliver Hunt.
498
499         <rdar://problem/9511169>
500         Update order files.
501
502         * mac/WebKit2.order:
503
504 2011-06-14  Anders Carlsson  <andersca@apple.com>
505
506         Reviewed by Dan Bernstein.
507
508         Start replacing PluginInfoStore::Plugin with PluginModuleInfo
509         https://bugs.webkit.org/show_bug.cgi?id=62651
510
511         * UIProcess/Plugins/PluginInfoStore.cpp:
512         (WebKit::PluginInfoStore::plugins):
513         (WebKit::PluginInfoStore::findPluginForMIMEType):
514         (WebKit::PluginInfoStore::findPluginForExtension):
515         (WebKit::PluginInfoStore::infoForPluginWithPath):
516         * UIProcess/Plugins/PluginInfoStore.h:
517         * UIProcess/Plugins/PluginProcessManager.cpp:
518         (WebKit::PluginProcessManager::getPluginProcessConnection):
519         (WebKit::PluginProcessManager::getSitesWithData):
520         (WebKit::PluginProcessManager::clearSiteData):
521         (WebKit::PluginProcessManager::getOrCreatePluginProcess):
522         * UIProcess/Plugins/PluginProcessManager.h:
523         * UIProcess/Plugins/PluginProcessProxy.cpp:
524         (WebKit::PluginProcessProxy::create):
525         * UIProcess/Plugins/PluginProcessProxy.h:
526         (WebKit::PluginProcessProxy::pluginInfo):
527         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
528         (WebKit::PluginProcessProxy::pluginNeedsExecutableHeap):
529         (WebKit::PluginProcessProxy::createPropertyListFile):
530
531 2011-06-14  Anders Carlsson  <andersca@apple.com>
532
533         Reviewed by Darin Adler.
534
535         Add PluginModuleInfo header and prepare for renaming of PluginInfoStore::Plugin to PluginModuleInfo
536         https://bugs.webkit.org/show_bug.cgi?id=62647
537
538         Make PluginModuleInfo a typedef of PluginInfoStore::Plugin for now; eventually it should be its own class,
539         and PluginInfoStore::Plugin should go away.
540
541         * GNUmakefile.am:
542         * Shared/Plugins/Netscape/NetscapePluginModule.h:
543         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
544         (WebKit::getPluginArchitecture):
545         (WebKit::getMIMETypesFromPluginBundle):
546         (WebKit::getPluginInfoFromPropertyLists):
547         (WebKit::getPluginInfoFromCarbonResources):
548         (WebKit::NetscapePluginModule::getPluginInfo):
549         (WebKit::NetscapePluginModule::determineQuirks):
550         * Shared/Plugins/PluginModuleInfo.cpp: Added.
551         * Shared/Plugins/PluginModuleInfo.h: Added.
552         * WebKit2.pro:
553         * WebKit2.xcodeproj/project.pbxproj:
554         * win/WebKit2.vcproj:
555
556 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
557
558         Reviewed by Martin Robinson.
559
560         [GTK] Move the code to show the context menu from WebKitWebViewBase to WebContextMenuProxyGtk
561         https://bugs.webkit.org/show_bug.cgi?id=62627
562
563         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
564         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
565         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
566         (WebKit::WebContextMenuProxyGtk::showContextMenu):
567         (WebKit::WebContextMenuProxyGtk::hideContextMenu):
568         (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk):
569         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
570         (WebKit::WebContextMenuProxyGtk::menuPositionFunction):
571         * UIProcess/gtk/WebContextMenuProxyGtk.h:
572
573 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
574
575         Reviewed by Martin Robinson.
576
577         [GTK] Rename convertWidgetRectToScreenRect() to convertWidgetPointToScreenPoint()
578         https://bugs.webkit.org/show_bug.cgi?id=62626
579
580         * UIProcess/API/gtk/PageClientImpl.cpp:
581         (WebKit::PageClientImpl::screenToWindow): Implement this method
582         using convertWidgetPointToScreenPoint().
583         (WebKit::PageClientImpl::windowToScreen): Update to use
584         convertWidgetPointToScreenPoint().
585         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
586         (WebKit::WebPopupMenuProxyGtk::showPopupMenu): Use
587         convertWidgetPointToScreenPoint().
588
589 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
590
591         Reviewed by Martin Robinson.
592
593         [GTK] Support authentication dialogs in WebKit2
594         https://bugs.webkit.org/show_bug.cgi?id=62366
595
596         Add a new soup feature to show an authentication dialog when it
597         gets a 401 HTTP response.
598
599         * GNUmakefile.am: Add new files to compilation.
600         * WebProcess/gtk/WebAuthDialog.cpp: Added.
601         (web_auth_dialog_class_init):
602         (web_auth_dialog_init):
603         (sessionAuthenticate):
604         (attach):
605         (detach):
606         (webAuthDialogSessionFeatureInit):
607         * WebProcess/gtk/WebAuthDialog.h: Added.
608         * WebProcess/gtk/WebProcessMainGtk.cpp:
609         (WebKit::WebProcessMainGtk):
610
611 2011-06-14  No'am Rosenthal  <noam.rosenthal@nokia.com> and Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
612
613         Reviewed by Kenneth Rohde Christiansen.
614
615         [Qt] Implement accelerated compositing on WK2 Qt port
616         https://bugs.webkit.org/show_bug.cgi?id=56935
617
618         Implementing LayerTreeHost and LayerTreeContext and LayerTreeHost for Qt.
619         Add the necessary plumbing to make the LayerTreeHost work with Qt, based on the original Mac
620         implementation (the code is nearly identical). This includes creating the right layers for the
621         overlay and for the non-composited content, and passing the root layer to the UI process.
622
623         Also, since LayerTreeHostQt is compiled, we have to add some of the rest of the existing patches,
624         namely the new messages: syncCompositingLayers and updateCompositingLayerContent, and create a
625         stub implementation for them in DrawingAreaProxy.
626
627         Note that this is not activated yet, until we enable accelerated compositing in the settings and
628         create the right GraphicsLayer.
629
630         * Scripts/webkit2/messages.py:
631         * Shared/LayerTreeContext.h:
632         * Shared/qt/LayerTreeContextQt.cpp:
633         (WebKit::LayerTreeContext::LayerTreeContext):
634         (WebKit::LayerTreeContext::~LayerTreeContext):
635         (WebKit::LayerTreeContext::encode):
636         (WebKit::LayerTreeContext::decode):
637         (WebKit::LayerTreeContext::isEmpty):
638         (WebKit::operator==):
639         * UIProcess/DrawingAreaProxy.h:
640         (WebKit::DrawingAreaProxy::syncCompositingLayers):
641         (WebKit::DrawingAreaProxy::updateCompositingLayerContent):
642         * UIProcess/DrawingAreaProxy.messages.in:
643         * WebKit2.pro:
644         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
645         (WebCore::collectCompositingInfoForThisLayer):
646         * WebProcess/WebPage/LayerTreeHost.cpp:
647         (WebKit::LayerTreeHost::create):
648         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
649         (WebKit::LayerTreeHostQt::create):
650         (WebKit::LayerTreeHostQt::~LayerTreeHostQt):
651         (WebKit::LayerTreeHostQt::LayerTreeHostQt):
652         (WebKit::LayerTreeHostQt::setLayerFlushSchedulingEnabled):
653         (WebKit::LayerTreeHostQt::scheduleLayerFlush):
654         (WebKit::LayerTreeHostQt::cancelPendingLayerFlush):
655         (WebKit::LayerTreeHostQt::setShouldNotifyAfterNextScheduledLayerFlush):
656         (WebKit::LayerTreeHostQt::setRootCompositingLayer):
657         (WebKit::LayerTreeHostQt::invalidate):
658         (WebKit::LayerTreeHostQt::setNonCompositedContentsNeedDisplay):
659         (WebKit::LayerTreeHostQt::scrollNonCompositedContents):
660         (WebKit::LayerTreeHostQt::forceRepaint):
661         (WebKit::LayerTreeHostQt::sizeDidChange):
662         (WebKit::LayerTreeHostQt::didInstallPageOverlay):
663         (WebKit::LayerTreeHostQt::didUninstallPageOverlay):
664         (WebKit::LayerTreeHostQt::setPageOverlayNeedsDisplay):
665         (WebKit::LayerTreeHostQt::flushPendingLayerChanges):
666         (WebKit::LayerTreeHostQt::performScheduledLayerFlush):
667         (WebKit::LayerTreeHostQt::layerFlushTimerFired):
668         (WebKit::LayerTreeHostQt::createPageOverlayLayer):
669         (WebKit::LayerTreeHostQt::destroyPageOverlayLayer):
670         (WebKit::LayerTreeHostQt::notifyAnimationStarted):
671         (WebKit::LayerTreeHostQt::notifySyncRequired):
672         (WebKit::LayerTreeHostQt::paintContents):
673         (WebKit::LayerTreeHostQt::showDebugBorders):
674         (WebKit::LayerTreeHostQt::showRepaintCounter):
675         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
676         * WebProcess/WebPage/qt/LayerTreeHostQt.h: Added.
677         (WebKit::LayerTreeHostQt::layerTreeContext):
678         (WebKit::LayerTreeHostQt::pauseRendering):
679         (WebKit::LayerTreeHostQt::resumeRendering):
680
681 2011-06-14  Noam Rosenthal  <noam.rosenthal@nokia.com>
682
683         Reviewed by Kenneth Rohde Christiansen.
684
685         [Qt] Implement accelerated compositing on WK2 Qt port
686         https://bugs.webkit.org/show_bug.cgi?id=56935
687
688         Add a createImage() function to ShareableBitmap, for now ifdef'ed to Qt only.
689         This allows us to support directly composited images across the WebKit2 processes.
690
691         Together with Viatcheslav Ostapenko.
692
693         * Shared/ShareableBitmap.h:
694         * Shared/qt/ShareableBitmapQt.cpp:
695         (WebKit::ShareableBitmap::createQImage):
696         (WebKit::ShareableBitmap::createImage):
697
698 2011-06-13  Anders Carlsson  <andersca@apple.com>
699
700         Reviewed by Sam Weinig.
701
702         Crash when trying to use Netflix Watch Instantly with Silverlight 3
703         https://bugs.webkit.org/show_bug.cgi?id=62611
704         <rdar://problem/9058370>
705
706         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
707         (WebKit::NetscapePluginModule::getPluginInfo):
708         Get the plug-in version string instead of the version number.
709
710         (WebKit::PluginVersion::isValid):
711         (WebKit::PluginVersion::PluginVersion):
712         (WebKit::PluginVersion::parse):
713         (WebKit::PluginVersion::isLessThan):
714         Add a new PluginVersion class that represents a plug-in version. The idea is
715         that this class be made cross platform.
716
717         (WebKit::NetscapePluginModule::determineQuirks):
718         Add the ReturnsNonRetainedScriptableNPObject quirk for versions of Silverlight less than 4.
719
720         * Shared/Plugins/PluginQuirks.h:
721         Add the ReturnsNonRetainedScriptableNPObject quirk.
722
723         * UIProcess/Plugins/PluginInfoStore.h:
724         Use a version string. Eventually this should hold the PluginVersion class we added.
725
726         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
727         (WebKit::NetscapePlugin::pluginScriptableNPObject):
728         If the plug-in has the ReturnsNonRetainedScriptableNPObject quirk, do an extra retain.
729
730 2011-06-13  Ryuan Choi  <ryuan.choi@samsung.com>
731
732         Reviewed by Kenneth Rohde Christiansen.
733
734         [EFL][WK2] Add dummy files at below of WebProcess.
735         https://bugs.webkit.org/show_bug.cgi?id=62445
736
737         Add Efl related directory and files in WebKit2/WebProcess/.
738
739         * WebProcess/Cookies/efl/WebCookieManagerEfl.cpp: Added.
740         (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
741         (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
742         * WebProcess/InjectedBundle/efl/InjectedBundleEfl.cpp: Added.
743         (WebKit::InjectedBundle::load):
744         (WebKit::InjectedBundle::activateMacFontAscentHack):
745         * WebProcess/WebPage/efl/WebInspectorEfl.cpp: Added.
746         (WebKit::WebInspector::localizedStringsURL):
747         * WebProcess/WebPage/efl/WebPageEfl.cpp: Added.
748         (WebKit::WebPage::platformInitialize):
749         (WebKit::WebPage::platformPreferencesDidChange):
750         (WebKit::scroll):
751         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
752         (WebKit::WebPage::platformHasLocalDataForURL):
753         (WebKit::WebPage::cachedResponseMIMETypeForURL):
754         (WebKit::WebPage::platformCanHandleRequest):
755         (WebKit::WebPage::cachedSuggestedFilenameForURL):
756         (WebKit::WebPage::cachedResponseDataForURL):
757         * WebProcess/efl/WebProcessEfl.cpp: Added.
758         (WebKit::WebProcess::platformSetCacheModel):
759         (WebKit::WebProcess::platformClearResourceCaches):
760         (WebKit::WebProcess::platformInitializeWebProcess):
761         (WebKit::WebProcess::platformTerminate):
762         * WebProcess/efl/WebProcessMainEfl.cpp: Added.
763         (WebKit::WebProcessMainEfl):
764         * WebProcess/efl/WebProcessMainEfl.h: Added.
765         * efl/MainEfl.cpp: Added.
766         (main):
767
768 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
769
770         Reviewed by Eric Seidel.
771
772         [EFL][WK2] Add initial WebInspectorEfl.cpp for webkit2 efl port
773         https://bugs.webkit.org/show_bug.cgi?id=62524
774
775         * UIProcess/efl/WebInspectorEfl.cpp: Added.
776         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
777         (WebKit::WebInspectorProxy::platformOpen):
778         (WebKit::WebInspectorProxy::platformDidClose):
779         (WebKit::WebInspectorProxy::platformBringToFront):
780         (WebKit::WebInspectorProxy::platformInspectedURLChanged):
781         (WebKit::WebInspectorProxy::inspectorPageURL):
782         (WebKit::WebInspectorProxy::platformAttach):
783         (WebKit::WebInspectorProxy::platformDetach):
784         (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight):
785
786 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
787
788         Reviewed by Eric Seidel.
789
790         [EFL][WK2] Add initial TextCheckerEfl.cpp for webkit2 efl port
791         https://bugs.webkit.org/show_bug.cgi?id=62438
792
793         * UIProcess/efl/TextCheckerEfl.cpp: Added.
794         (WebKit::TextChecker::state):
795         (WebKit::TextChecker::isContinuousSpellCheckingAllowed):
796         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
797         (WebKit::TextChecker::setGrammarCheckingEnabled):
798         (WebKit::TextChecker::uniqueSpellDocumentTag):
799         (WebKit::TextChecker::closeSpellDocumentWithTag):
800         (WebKit::TextChecker::checkSpellingOfString):
801         (WebKit::TextChecker::checkGrammarOfString):
802         (WebKit::TextChecker::spellingUIIsShowing):
803         (WebKit::TextChecker::toggleSpellingUIIsShowing):
804         (WebKit::TextChecker::updateSpellingUIWithMisspelledWord):
805         (WebKit::TextChecker::updateSpellingUIWithGrammarString):
806         (WebKit::TextChecker::getGuessesForWord):
807         (WebKit::TextChecker::learnWord):
808         (WebKit::TextChecker::ignoreWord):
809
810 2011-06-13  Sangyong Park  <sy302.park@gmail.com>
811
812         Reviewed by Eric Seidel.
813
814         implement to handle wheel event of plugin on x11
815         https://bugs.webkit.org/show_bug.cgi?id=62522
816
817         Implement platformHandleWheelEvent() in NetscapePluginX11.cpp
818         for to handle wheel event on plugins
819
820         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
821         (WebKit::setCommonMouseEventFields): add template argument to support WebWheelEvent
822         (WebKit::setXButtonEventFieldsByWebWheelEvent): initialize XButtonEvent by WebWheelEvent
823         (WebKit::NetscapePlugin::platformHandleWheelEvent): handle wheel event on plugin
824
825 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
826
827         Reviewed by Eric Seidel.
828
829         [EFL][WK2] Add initial WebContextEfl.cpp for webkit2 efl port
830         https://bugs.webkit.org/show_bug.cgi?id=62523
831
832         * UIProcess/efl/WebContextEfl.cpp: Added.
833         (WebKit::WebContext::applicationCacheDirectory):
834         (WebKit::WebContext::platformInitializeWebProcess):
835         (WebKit::WebContext::platformInvalidateContext):
836         (WebKit::WebContext::platformDefaultDatabaseDirectory):
837         (WebKit::WebContext::platformDefaultIconDatabasePath):
838         (WebKit::WebContext::platformDefaultLocalStorageDirectory):
839
840 2011-06-13  Noam Rosenthal  <noam.rosenthal@nokia.com>
841
842         Unreviewed fix - removed parts of r88659 that were committed by mistake.
843
844         The patch accidentally included parts that weren't supposed to be there, namely the whole
845         code was duplicated. This patch rectifies that and brings it to the original reviewed code.
846
847         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
848         * WebProcess/WebCoreSupport/WebGraphicsLayer.h:
849
850 2011-06-13  Anders Carlsson  <andersca@apple.com>
851
852         Reviewed by Dan Bernstein.
853
854         BankID plug-in isn't instantiated correctly
855         https://bugs.webkit.org/show_bug.cgi?id=62588
856         <rdar://problem/9586600>
857
858         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
859         (WebKit::NetscapePluginModule::determineQuirks):
860         The BankID plug-in uses the QuickDraw drawing model but doesn't draw anything so we can
861         use the half-baked QuickDraw support.
862
863         * WebProcess/Plugins/PluginProcessConnection.cpp:
864         (WebKit::defaultSyncMessageTimeout):
865         Don't use a sync message timeout for the BankID plug-in since it sends synchronous Apple Events
866         and we don't want the plug-in to die while it's waiting for a reply.
867
868 2011-06-13  Chris Fleizach  <cfleizach@apple.com>
869
870         Reviewed by Darin Adler.
871
872         kAXTextMarkerForPositionParametrizedAttribute does not work correctly in WK2
873         https://bugs.webkit.org/show_bug.cgi?id=62547
874
875         Implement the missing screenToWindow method for WK2.
876
877         * UIProcess/API/gtk/PageClientImpl.cpp:
878         (WebKit::PageClientImpl::screenToWindow):
879         * UIProcess/API/gtk/PageClientImpl.h:
880         * UIProcess/API/mac/PageClientImpl.h:
881         * UIProcess/API/mac/PageClientImpl.mm:
882         (WebKit::PageClientImpl::screenToWindow):
883         * UIProcess/API/qt/qwkpage.cpp:
884         (QWKPagePrivate::screenToWindow):
885         * UIProcess/API/qt/qwkpage_p.h:
886         * UIProcess/PageClient.h:
887         * UIProcess/WebPageProxy.cpp:
888         (WebKit::WebPageProxy::screenToWindow):
889         * UIProcess/WebPageProxy.h:
890         * UIProcess/WebPageProxy.messages.in:
891         * UIProcess/win/WebView.cpp:
892         (WebKit::WebView::screenToWindow):
893         * UIProcess/win/WebView.h:
894         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
895         (WebKit::WebChromeClient::screenToWindow):
896         * WebProcess/WebPage/WebPage.cpp:
897         (WebKit::WebPage::screenToWindow):
898         * WebProcess/WebPage/WebPage.h:
899
900 2011-06-13  Sam Weinig  <sam@webkit.org>
901
902         Reviewed by Darin Adler.
903
904         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
905         <rdar://problem/9580237> 
906
907         * WebProcess/WebPage/mac/WebPageMac.mm:
908         (WebKit::shouldUseSelection):
909         Return early if the selection we are using is not a range.
910
911 2011-06-13  Tony Chang  <tony@chromium.org>
912
913         Reviewed by Dimitri Glazkov.
914
915         rename ENABLE_NEW_FLEXBOX to ENABLE_CSS3_FLEXBOX
916         https://bugs.webkit.org/show_bug.cgi?id=62578
917
918         * Configurations/FeatureDefines.xcconfig:
919
920 2011-06-13  No'am Rosenthal  <noam.rosenthal@nokia.com>
921
922         Reviewed by Kenneth Rohde Christiansen.
923
924         [Qt] Implement accelerated compositing on WK2 Qt port
925         https://bugs.webkit.org/show_bug.cgi?id=56935
926
927         Added WebGraphicsLayer, a subclass of WebCore::GraphicsLayer that serializes the state of the layer
928         tree to the UI process WebLayerTreeInfo.
929         For now this patch doesn't serialize the animation information, a feature that will be upstreamed later on.
930
931         Together with Viatcheslav Ostapenko.
932
933         * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp: Added.
934         * WebProcess/WebCoreSupport/WebGraphicsLayer.h: Added.
935
936 2011-06-13  No'am Rosenthal  <noam.rosenthal@nokia.com>
937
938         Reviewed by Kenneth Rohde Christiansen.
939
940         [Qt] Implement accelerated compositing on WK2 Qt port
941         https://bugs.webkit.org/show_bug.cgi?id=56935
942
943         Added WebLayerTreeInfo: a set of structures that can serialize a tree of GraphicsLayers
944         across to the UI process.
945
946         Together with Viatcheslav Ostapenko.
947
948         * Scripts/webkit2/messages.py:
949         * Shared/WebLayerTreeInfo.cpp: Added.
950         * Shared/WebLayerTreeInfo.h: Added.
951
952 2011-06-11  Jer Noble  <jer.noble@apple.com>
953
954         Reviewed by Anders Carlsson.
955
956         Avoid flashing when exiting full-screen mode.
957         https://bugs.webkit.org/show_bug.cgi?id=62338
958
959         Instead of making a round-trip between processes by calling forceRepaint
960         and waiting for a callback, instead make a WebProcess-side call to
961         forceRepaintWithoutCallback before sending the ExitAcceleratedCompositingMode
962         message to the WebFullScreenControllerProxy. This also means we can get rid of
963         the dragImage creation and display.
964
965         Because this redraw will happen during the current run-loop instead of a future
966         one, make sure the background color has been set before the redraw in 
967         didEnterFullScreen().
968
969         Wait to hide the full-screen window until after we have received the 
970         ExitAcceleratedCompositingMode message.  By this time, repaint will have already
971         completed.
972
973         * UIProcess/mac/WKFullScreenWindowController.h:
974         * UIProcess/mac/WKFullScreenWindowController.mm:
975         (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Disable
976             screen updates, to be re-enabled during exitAcceleratedCompositingMode.
977         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Don't hide
978             the full-screen window here; wait for exitAcceleratedCompositing instead.
979         (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): Collapse 
980             the redrawCompleted method into this one.
981         (-[WKFullScreenWindowController close]): Remove the reference to 
982             exitCompositedModeRepaintCompleted.
983         * WebProcess/FullScreen/WebFullScreenManager.cpp:
984         (WebKit::WebFullScreenManager::didEnterFullScreen): Set the full screen
985             background color first.
986         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:
987         (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): Repaint before
988             sending the ExitAcceleratedCompositingMode message. 
989
990 2011-06-13  Tony Chang  <tony@chromium.org>
991
992         Reviewed by Adam Barth.
993
994         rename ENABLE_FLEXBOX to ENABLE_NEW_FLEXBOX
995         https://bugs.webkit.org/show_bug.cgi?id=62545
996
997         * Configurations/FeatureDefines.xcconfig:
998
999 2011-06-13  Anders Carlsson  <andersca@apple.com>
1000
1001         Reviewed by Dan Bernstein.
1002
1003         Don't access freed memory in the UI process when a plug-in process crashes
1004         https://bugs.webkit.org/show_bug.cgi?id=62548
1005         <rdar://problem/9599243>
1006
1007         Call pluginProcessCrashedOrFailedToLaunch after sending messages to all processes about the plug-in crash,
1008         otherwise we'll try to dereference m_pluginInfo.path after the PluginProcessProxy object has been deleted.
1009
1010         * UIProcess/Plugins/PluginProcessProxy.cpp:
1011         (WebKit::PluginProcessProxy::didClose):
1012
1013 2011-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1014
1015         Reviewed by Martin Robinson.
1016
1017         [GTK] Fix a crash when drawing area has been deleted
1018         https://bugs.webkit.org/show_bug.cgi?id=62541
1019
1020         Check whether WebPageProxy::drawingArea() returns a valid pointer
1021         before using it, it might be null, for example, when the web
1022         process crashes.
1023
1024         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
1025         (callDrawingAreaPaintMethod):
1026         (webkitWebViewBaseSizeAllocate):
1027
1028 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
1029
1030         Reviewed by Kenneth Rohde Christiansen.
1031
1032         [EFL][WK2] Minor fix: fix coding style and remove unnecessary codes for WebKit2 efl port's PageClientImpl
1033         https://bugs.webkit.org/show_bug.cgi?id=62429
1034
1035         * UIProcess/API/efl/PageClientImpl.cpp:
1036         (WebKit::PageClientImpl::scrollView):
1037         (WebKit::PageClientImpl::setCursor):
1038         (WebKit::PageClientImpl::windowToScreen):
1039         (WebKit::PageClientImpl::doneWithKeyEvent):
1040         (WebKit::PageClientImpl::setFindIndicator):
1041         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
1042         (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
1043         (WebKit::PageClientImpl::findStringInCustomRepresentation):
1044         (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation):
1045         * UIProcess/API/efl/PageClientImpl.h:
1046
1047 2011-06-13  Eunmi Lee  <eunmi15.lee@samsung.com>
1048
1049         Reviewed by Kenneth Rohde Christiansen.
1050
1051         [EFL][WK2] Add initial WebPreferencesEfl.cpp for webkit2 efl port
1052         https://bugs.webkit.org/show_bug.cgi?id=62525
1053
1054         * UIProcess/efl/WebPreferencesEfl.cpp: Added.
1055         (WebKit::WebPreferences::platformInitializeStore):
1056         (WebKit::WebPreferences::platformUpdateStringValueForKey):
1057         (WebKit::WebPreferences::platformUpdateBoolValueForKey):
1058         (WebKit::WebPreferences::platformUpdateUInt32ValueForKey):
1059         (WebKit::WebPreferences::platformUpdateDoubleValueForKey):
1060
1061 2011-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1062
1063         Reviewed by Martin Robinson.
1064
1065         [GTK] Add context menu support for Webkit2
1066         https://bugs.webkit.org/show_bug.cgi?id=54827
1067
1068         * GNUmakefile.am: Add new files to compilation.
1069         * UIProcess/API/gtk/PageClientImpl.cpp:
1070         (WebKit::PageClientImpl::createContextMenuProxy): Create a context
1071         menu proxy.
1072         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
1073         (globalPointForClientPoint): Function copied from webkit1 to
1074         convert a point in widget coordinates to global coordinates.
1075         (popupMenuPositionFunction):
1076         (webkitWebViewBaseShowContextMenu): Show the given context menu at
1077         the given position.
1078         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
1079         * UIProcess/gtk/WebContextMenuProxyGtk.cpp: Added.
1080         (WebKit::contextMenuItemActivatedCallback):
1081         (WebKit::WebContextMenuProxyGtk::createGtkMenu):
1082         (WebKit::WebContextMenuProxyGtk::showContextMenu):
1083         (WebKit::WebContextMenuProxyGtk::hideContextMenu):
1084         (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk):
1085         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
1086         * UIProcess/gtk/WebContextMenuProxyGtk.h: Copied from Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h.
1087         (WebKit::WebContextMenuProxyGtk::create):
1088
1089 2011-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1090
1091         Reviewed by Martin Robinson.
1092
1093         [GTK] Export an API similar to WebKit1
1094         https://bugs.webkit.org/show_bug.cgi?id=57820
1095
1096         Add first implementation of WebKitWebView, a class with the same
1097         API than webkit1, that wraps the C API to provide a high level
1098         WebKit2 API for GTK port.
1099
1100         * GNUmakefile.am: Add new files to compilation.
1101         * UIProcess/API/gtk/WebKitWebView.cpp: Added.
1102         (webkit_web_view_init):
1103         (webkit_web_view_class_init):
1104         (webkit_web_view_new):
1105         (webkit_web_view_load_uri):
1106         (webkit_web_view_go_back):
1107         (webkit_web_view_go_forward):
1108         * UIProcess/API/gtk/WebKitWebView.h: Added.
1109         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
1110         (webkitWebViewBaseCreate):
1111         (webkitWebViewBaseCreateWebPage):
1112         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
1113         * UIProcess/API/gtk/webkit/webkit.h: Added.
1114
1115 2011-06-12  Adam Barth  <abarth@webkit.org>
1116
1117         Reviewed by Alexey Proskuryakov.
1118
1119         Rename FrameLoaderClient::interruptForPolicyChangeError to use the past tense
1120         https://bugs.webkit.org/show_bug.cgi?id=62516
1121
1122         * WebProcess/WebCoreSupport/WebErrors.h:
1123         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1124         (WebKit::WebFrameLoaderClient::interruptedForPolicyChangeError):
1125         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1126         * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
1127         (WebKit::interruptedForPolicyChangeError):
1128         * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
1129         (WebKit::interruptedForPolicyChangeError):
1130         * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:
1131         (WebKit::interruptedForPolicyChangeError):
1132         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
1133         (WebKit::interruptedForPolicyChangeError):
1134         * WebProcess/WebCoreSupport/win/WebErrorsWin.cpp:
1135         (WebKit::interruptedForPolicyChangeError):
1136
1137 2011-06-12  Adam Barth  <abarth@webkit.org>
1138
1139         Reviewed by Eric Seidel.
1140
1141         Remove FrameLoader::isProcessingUserGesture
1142         https://bugs.webkit.org/show_bug.cgi?id=62519
1143
1144         Instead of asking the gesture indicator directly, ask the
1145         ScriptController, like everyone else.  The gesture indicator is just
1146         one of the piece of information we use to determine whether we're
1147         processing a user gesture.
1148
1149         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1150         (WebKit::InjectedBundle::isProcessingUserGesture):
1151
1152 2011-06-12  Adam Barth  <abarth@webkit.org>
1153
1154         Reviewed by Alexey Proskuryakov.
1155
1156         Remove trival "forward-to-client" member functions from FrameLoader
1157         https://bugs.webkit.org/show_bug.cgi?id=62510
1158
1159         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1160         (WebKit::WebFrameNetworkingContext::blockedError):
1161
1162 2011-06-11  Stephanie Lewis  <slewis@apple.com>
1163
1164         Reviewed by Sam Weinig.
1165
1166         https://bugs.webkit.org/show_bug.cgi?id=62480
1167         part of <rdar://problem/8675177>
1168         Add API to launch the WebProcess.  Launching it earlier can save time 
1169         when loading the first page.
1170
1171         * UIProcess/API/C/WKContext.cpp:
1172         (WKContextWarmInitialProcess):
1173         * UIProcess/API/C/WKContextPrivate.h:
1174         * UIProcess/WebContext.cpp:
1175         (WebKit::WebContext::warmInitialProcess):
1176         * UIProcess/WebContext.h:
1177
1178 2011-06-09  Jer Noble  <jer.noble@apple.com>
1179
1180         Reviewed by Darin Adler.
1181
1182         AVPlayerLayer is adding a "fade" animation during Safari full-screen
1183         https://bugs.webkit.org/show_bug.cgi?id=62433
1184
1185         CoreAnimation will add default animations when certain properties are changed, unless
1186         those changes are wrapped in a CATransaction which has had its disableActions property set
1187         to true.  Wrap each of these three property changes in a CATransaction and disable its actions,
1188         so that the default "fade" animation is not created in response.
1189
1190         * UIProcess/mac/WKFullScreenWindowController.mm:
1191         (-[WKFullScreenWindowController enterFullScreen:]): Wrap with CATransaction.
1192         (-[WKFullScreenWindowController _swapView:with:]): Ditto:
1193         * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:
1194         (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): Ditto.
1195
1196 2011-06-10  Anders Carlsson  <andersca@apple.com>
1197
1198         Reviewed by Sam Weinig.
1199
1200         REGRESSION (WebKit2): window.showModalDialog() broken
1201         https://bugs.webkit.org/show_bug.cgi?id=62496
1202         <rdar://problem/9581492>
1203
1204         If dispatching a message ends up creating a nested run loop, some incoming messages can end up not being
1205         delivered until we exit from the run loop.
1206
1207         Fix this by using a Deque instead of a Vector for incoming messages, and get one message at a time and then
1208         dispatch it. That prevents us from having any lingering messages lying around in stack allocated space.
1209
1210         * Platform/CoreIPC/Connection.cpp:
1211         (CoreIPC::Connection::waitForMessage):
1212         (CoreIPC::Connection::dispatchMessages):
1213         * Platform/CoreIPC/Connection.h:
1214
1215 2011-06-10  Sam Weinig  <sam@webkit.org>
1216
1217         Reviewed by Anders Carlsson.
1218
1219         Unresponsive cursor is shown when displaying a modal dialog
1220         Part of <rdar://problem/9581492>
1221         https://bugs.webkit.org/show_bug.cgi?id=62494
1222
1223         * UIProcess/WebPageProxy.cpp:
1224         (WebKit::WebPageProxy::runModal):
1225         * UIProcess/WebPageProxy.h:
1226         Stop the responsiveness timer when calling out to show a modal dialog.
1227
1228 2011-06-10  Tony Chang  <tony@chromium.org>
1229
1230         Reviewed by Ojan Vafai.
1231
1232         add a compile guard ENABLE(FLEXBOX)
1233         https://bugs.webkit.org/show_bug.cgi?id=62049
1234
1235         * Configurations/FeatureDefines.xcconfig:
1236
1237 2011-06-10  Ryuan Choi  <ryuan.choi@samsung.com>
1238
1239         Reviewed by Kenneth Rohde Christiansen.
1240
1241         [EFL][WK2] Add dummy files in WebProcess/WebCoreSupport/efl
1242         https://bugs.webkit.org/show_bug.cgi?id=62346
1243
1244         Add WebProcess/WebCoreSupport/efl directory and files.
1245
1246         * WebProcess/WebCoreSupport/efl/WebContextMenuClientEfl.cpp: Added.
1247         (WebKit::WebContextMenuClient::lookUpInDictionary):
1248         (WebKit::WebContextMenuClient::isSpeaking):
1249         (WebKit::WebContextMenuClient::speak):
1250         (WebKit::WebContextMenuClient::stopSpeaking):
1251         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp: Added.
1252         (WebKit::WebEditorClient::handleKeyboardEvent):
1253         (WebKit::WebEditorClient::handleInputMethodKeydown):
1254         * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp: Added.
1255         (WebKit::cancelledError):
1256         (WebKit::blockedError):
1257         (WebKit::cannotShowURLError):
1258         (WebKit::interruptForPolicyChangeError):
1259         (WebKit::cannotShowMIMETypeError):
1260         (WebKit::fileDoesNotExistError):
1261         (WebKit::pluginWillHandleLoadError):
1262         * WebProcess/WebCoreSupport/efl/WebFrameNetworkingContext.h: Added.
1263         (WebFrameNetworkingContext::create):
1264         (WebFrameNetworkingContext::WebFrameNetworkingContext):
1265         * WebProcess/WebCoreSupport/efl/WebPopupMenuEfl.cpp: Added.
1266         (WebKit::WebPopupMenu::setUpPlatformData):
1267
1268 2011-06-09  Andreas Kling  <kling@webkit.org>
1269
1270         Reviewed by Darin Adler.
1271
1272         WebKit2: Remove unused function CoreIPC::Connection::deprecatedWaitFor().
1273         https://bugs.webkit.org/show_bug.cgi?id=62386
1274
1275         * Platform/CoreIPC/Connection.h:
1276
1277 2011-06-09  Andreas Kling  <kling@webkit.org>
1278
1279         Reviewed by Anders Carlsson.
1280
1281         [Qt][WK2] Remove usage of deprecated CoreIPC functions.
1282         https://bugs.webkit.org/show_bug.cgi?id=62290
1283
1284         Use the new DrawingArea{,Proxy}.messages.in approach to CoreIPC in TiledDrawingArea.
1285         The TiledDrawingArea{,Proxy}-specific messages were moved up into DrawingArea{,Proxy}
1286         and guarded by ENABLE(TILED_BACKING_STORE).
1287
1288         * Shared/CoreIPCSupport/DrawingAreaMessageKinds.h: Removed.
1289         * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h: Removed.
1290
1291         * GNUmakefile.am:
1292         * WebKit2.pro:
1293         * WebKit2.xcodeproj/project.pbxproj:
1294         * win/WebKit2.vcproj: Prune deleted files from build system.
1295
1296         * Platform/CoreIPC/MessageID.h: Remove legacy DrawingArea message ID's.
1297
1298         * UIProcess/API/qt/qgraphicswkview.cpp:
1299         (QGraphicsWKViewPrivate::commitScale): No longer waits for all tile updates to complete,
1300         this will be addressed by the soon-to-be-upstreamed TileSet mechanism.
1301
1302         * UIProcess/DrawingAreaProxy.messages.in:
1303         * UIProcess/DrawingAreaProxy.h:
1304         (WebKit::DrawingAreaProxy::didSetSize):
1305         (WebKit::DrawingAreaProxy::invalidate):
1306         (WebKit::DrawingAreaProxy::snapshotTaken):
1307         (WebKit::DrawingAreaProxy::tileUpdated):
1308         (WebKit::DrawingAreaProxy::allTileUpdatesProcessed): Added IPC calls used by
1309         TiledDrawingAreaProxy to DrawingAreaProxy.
1310
1311         * WebProcess/WebPage/DrawingArea.messages.in:
1312         * WebProcess/WebPage/DrawingArea.h:
1313         (WebKit::DrawingArea::setSize):
1314         (WebKit::DrawingArea::cancelTileUpdate):
1315         (WebKit::DrawingArea::requestTileUpdate):
1316         (WebKit::DrawingArea::takeSnapshot): Added IPC calls used by TiledDrawingArea
1317         to DrawingArea.
1318
1319         * UIProcess/DrawingAreaProxyImpl.h:
1320         * UIProcess/DrawingAreaProxyImpl.cpp: Remove the now-unneeded didReceiveMessage()
1321         and didReceiveSyncMessage().
1322
1323         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1324         * WebProcess/WebPage/DrawingAreaImpl.h: Remove the now-unneeded didReceiveMessage().
1325
1326         * UIProcess/TiledDrawingAreaProxy.h:
1327         * UIProcess/TiledDrawingAreaProxy.cpp:
1328         (WebKit::TiledDrawingAreaProxy::sizeDidChange):
1329         (WebKit::TiledDrawingAreaProxy::tileUpdated):
1330         (WebKit::TiledDrawingAreaProxy::allTileUpdatesProcessed): Split didReceiveMessage()
1331         into functions.
1332
1333         (WebKit::TiledDrawingAreaProxy::removeTile):
1334         (WebKit::TiledDrawingAreaProxy::requestTileUpdate):
1335         (WebKit::TiledDrawingAreaProxy::setPageIsVisible):
1336         (WebKit::TiledDrawingAreaProxy::takeSnapshot): Use new-style IPC.
1337
1338         * WebProcess/WebPage/TiledDrawingArea.cpp:
1339         (WebKit::TiledDrawingArea::setSize):
1340         (WebKit::TiledDrawingArea::cancelTileUpdate):
1341         (WebKit::TiledDrawingArea::requestTileUpdate):
1342         (WebKit::TiledDrawingArea::takeSnapshot): Split didReceiveMessage() into functions.
1343
1344         (WebKit::TiledDrawingArea::display):
1345         (WebKit::TiledDrawingArea::updateTile):
1346         (WebKit::TiledDrawingArea::tileUpdateTimerFired): Use new-style IPC.
1347
1348         * UIProcess/WebPageProxy.cpp:
1349         (WebKit::WebPageProxy::didReceiveMessage): Remove handling of
1350         CoreIPC::MessageClassDrawingAreaProxyLegacy.
1351
1352         * WebProcess/WebPage/WebPage.cpp:
1353         (WebKit::WebPage::didReceiveMessage): Remove handling of
1354         CoreIPC::MessageClassDrawingAreaLegacy.
1355
1356         * UIProcess/qt/TiledDrawingAreaProxyQt.cpp: Remove unneeded includes.
1357
1358         * WebProcess/WebPage/TiledDrawingArea.h: Remove didReceiveMessage() and make
1359         CoreIPC message handlers explicitly virtual.
1360
1361 2011-06-09  Andreas Kling  <kling@webkit.org>
1362
1363         Reviewed by Anders Carlsson.
1364
1365         WebKit2: Generate correct header conditionals in message receivers.
1366         https://bugs.webkit.org/show_bug.cgi?id=62379
1367
1368         Given a *.messages.in file like this:
1369
1370         Foo(AwesomeObject o)
1371         #if ENABLE(ESOTERIC_FEATURE)
1372         Bar(AwesomeObject o)
1373         #endif
1374
1375         messages.py would include AwesomeObject.h only #if ENABLE(ESOTERIC_FEATURE).
1376         This breaks the build on platforms without that defined.
1377
1378         Furthermore, if two messages guarded by different conditionals both pull in the same
1379         header, only the last conditional will be applied, for example:
1380
1381         #if ENABLE(ESOTERIC_FEATURE)
1382         Foo(AwesomeObject o)
1383         #endif
1384         #if ENABLE(MYSTERIOUS_FEATURE)
1385         Bar(AwesomeObject o)
1386         #endif
1387
1388         Would include AwesomeObject.h #if ENABLE(MYSTERIOUS_FEATURE) when it really should
1389         check #if ENABLE(ESOTERIC_FEATURE) || ENABLE(MYSTERIOUS_FEATURE).
1390
1391         Change the generator to consider all conditionals for a given header file.
1392         Also consider conditionals for reply parameters.
1393
1394         * Scripts/webkit2/messages.py:
1395         * Scripts/webkit2/messages_unittest.py:
1396
1397 2011-06-09  Eunmi Lee  <eunmi15.lee@samsung.com>
1398
1399         Reviewed by Kenneth Rohde Christiansen.
1400
1401         [EFL][WK2] Add PageClientImpl and WebPageProxyEfl for efl port
1402         https://bugs.webkit.org/show_bug.cgi?id=62363
1403
1404         * UIProcess/API/efl/PageClientImpl.cpp: Added.
1405         (WebKit::PageClientImpl::PageClientImpl):
1406         (WebKit::PageClientImpl::~PageClientImpl):
1407         (WebKit::PageClientImpl::createDrawingAreaProxy):
1408         (WebKit::PageClientImpl::setViewNeedsDisplay):
1409         (WebKit::PageClientImpl::displayView):
1410         (WebKit::PageClientImpl::scrollView):
1411         (WebKit::PageClientImpl::viewSize):
1412         (WebKit::PageClientImpl::isViewWindowActive):
1413         (WebKit::PageClientImpl::isViewFocused):
1414         (WebKit::PageClientImpl::isViewVisible):
1415         (WebKit::PageClientImpl::isViewInWindow):
1416         (WebKit::PageClientImpl::processDidCrash):
1417         (WebKit::PageClientImpl::didRelaunchProcess):
1418         (WebKit::PageClientImpl::pageClosed):
1419         (WebKit::PageClientImpl::toolTipChanged):
1420         (WebKit::PageClientImpl::setCursor):
1421         (WebKit::PageClientImpl::setViewportArguments):
1422         (WebKit::PageClientImpl::registerEditCommand):
1423         (WebKit::PageClientImpl::clearAllEditCommands):
1424         (WebKit::PageClientImpl::canUndoRedo):
1425         (WebKit::PageClientImpl::executeUndoRedo):
1426         (WebKit::PageClientImpl::convertToDeviceSpace):
1427         (WebKit::PageClientImpl::convertToUserSpace):
1428         (WebKit::PageClientImpl::windowToScreen):
1429         (WebKit::PageClientImpl::doneWithKeyEvent):
1430         (WebKit::PageClientImpl::createPopupMenuProxy):
1431         (WebKit::PageClientImpl::createContextMenuProxy):
1432         (WebKit::PageClientImpl::setFindIndicator):
1433         (WebKit::PageClientImpl::didChangeScrollbarsForMainFrame):
1434         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
1435         (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
1436         (WebKit::PageClientImpl::customRepresentationZoomFactor):
1437         (WebKit::PageClientImpl::setCustomRepresentationZoomFactor):
1438         (WebKit::PageClientImpl::flashBackingStoreUpdates):
1439         (WebKit::PageClientImpl::findStringInCustomRepresentation):
1440         (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation):
1441         (WebKit::PageClientImpl::userSpaceScaleFactor):
1442         * UIProcess/API/efl/PageClientImpl.h: Added.
1443         (WebKit::PageClientImpl::create):
1444         (WebKit::PageClientImpl::viewObject):
1445         (WebKit::PageClientImpl::page):
1446         * UIProcess/WebPageProxy.h:
1447         * UIProcess/efl/WebPageProxyEfl.cpp: Added.
1448         (WebKit::WebPageProxy::viewObject):
1449         (WebKit::WebPageProxy::standardUserAgent):
1450         (WebKit::WebPageProxy::getEditorCommandsForKeyEvent):
1451         (WebKit::WebPageProxy::saveRecentSearches):
1452         (WebKit::WebPageProxy::loadRecentSearches):
1453
1454 2011-06-08  John Sullivan  <sullivan@apple.com>
1455
1456         Reviewed by Darin Adler.
1457
1458         <https://bugs.webkit.org/show_bug.cgi?id=62332>
1459         <rdar://problem/9355199>
1460         [WKView _setDragImage:at:linkDrag:] can crash if WKView is dealloc'ed during drag
1461
1462         * UIProcess/API/mac/WKView.mm:
1463         (-[WKView _resendKeyDownEvent:]):
1464         Renamed self-protecting RetainPtr from "protect" to "protector" so it's a noun.
1465         (-[WKView _setDragImage:at:linkDrag:]):
1466         Added a self-protecting RetainPtr.
1467
1468 2011-06-08  No'am Rosenthal  <noam.rosenthal@nokia.com>
1469
1470         Reviewed by Kenneth Rohde Christiansen.
1471
1472         WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1473         https://bugs.webkit.org/show_bug.cgi?id=61694
1474
1475         Add an ArgumentCoder for FloatPoint3D.
1476
1477         Together with Viatcheslav Ostapenko.
1478
1479         * Scripts/webkit2/messages.py:
1480         * Shared/WebCoreArgumentCoders.h:
1481
1482 2011-06-08  No'am Rosenthal  <noam.rosenthal@nokia.com>
1483
1484          Reviewed by Kenneth Rohde Christiansen.
1485
1486          WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1487          https://bugs.webkit.org/show_bug.cgi?id=61694
1488
1489          Add ArgumentCoders for TransformOperation, including all the subclasses,
1490          and TransformOperations.
1491
1492          * Scripts/webkit2/messages.py:
1493          * Shared/WebCoreArgumentCoders.h:
1494
1495 2011-06-08  Yael Aharon  <yael.aharon@nokia.com>
1496
1497         Reviewed by Andreas Kling.
1498
1499         [Qt] Build fix for building QtWebKit inside of Qt.
1500         https://bugs.webkit.org/show_bug.cgi?id=62280
1501
1502         Remove CONFIG=staticlib, because it causes the configure script to add -lwebkit2
1503         into QtWebKit.prl.
1504
1505         * WebKit2.pri:
1506
1507 2011-06-07  Tim Horton  <timothy_horton@apple.com>
1508
1509         Reviewed by Alexey Proskuryakov.
1510
1511         Use correct CFURLStorageSessionRef definition on Snow Leopard
1512         https://bugs.webkit.org/show_bug.cgi?id=62223
1513
1514         * PluginProcess/mac/PluginProcessShim.mm:
1515
1516 2011-06-07  John Sullivan  <sullivan@apple.com>
1517
1518         Reviewed by Darin Adler.
1519
1520         <https://bugs.webkit.org/show_bug.cgi?id=62248>
1521         <rdar://problem/9568516>
1522         WKResponderChainSink mechanism isn't robust against some types of responder chain manipulation
1523
1524         * UIProcess/API/mac/WKView.mm:
1525         (-[WKResponderChainSink detach]):
1526         This method formerly blindly assumed that since -initWithResponderChain: put self at the
1527         end of the responder chain, after _lastResponderInChain, then self is still at the end
1528         of the responder chain and still immediately after _lastResponderInChain. Made this function
1529         robust against some kinds of responder chain manipulations, though it can't be robust against
1530         some other kinds (e.g., manipulations that removed self from this chain and put it into some
1531         other chain).
1532
1533 2011-06-07  Sam Weinig  <sam@webkit.org>
1534
1535         Reviewed by Anders Carlsson.
1536
1537         Remove repeated IPC traffic from SetRenderTreeSize message
1538         https://bugs.webkit.org/show_bug.cgi?id=62244
1539
1540         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1541         Add didLayoutForFrame callback.
1542
1543         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1544         (WKBundlePageGetRenderTreeSize):
1545         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
1546         Add render tree size getter in WebProcess.
1547
1548         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1549         (WebKit::InjectedBundlePageLoaderClient::didLayoutForFrame):
1550         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1551         Added.
1552
1553         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1554         * WebProcess/WebCoreSupport/WebChromeClient.h:
1555         Removed setRenderTreeSize.
1556
1557         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1558         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
1559         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1560         Call the new didLayoutForFrame client function.
1561
1562         * WebProcess/WebPage/WebPage.cpp:
1563         (WebKit::WebPage::renderTreeSize):
1564         * WebProcess/WebPage/WebPage.h:
1565         Add iterative implementation to compute the total size of the render tree
1566         for a page.
1567
1568 2011-06-07  Zalan Bujtas  <zbujtas@gmail.com>
1569
1570         Reviewed by Andreas Kling.
1571
1572         TiledDrawingArea: Delay serving tile requests when the drawing area is suspended.
1573
1574         Do not paint tiles when painting is disabled (suspended) on the web process side.
1575         Buffer up the tile requests and paint them, when the drawing area gets resumed.
1576         On the UI process side, do not block on tile updates, when the tiled area is
1577         not visible (painting is disabled on the web process side).
1578
1579         * UIProcess/TiledDrawingAreaProxy.cpp:
1580         (WebKit::TiledDrawingAreaProxy::waitUntilUpdatesComplete):
1581         * WebProcess/WebPage/TiledDrawingArea.cpp:
1582         (WebKit::TiledDrawingArea::suspendPainting):
1583         (WebKit::TiledDrawingArea::resumePainting):
1584         (WebKit::TiledDrawingArea::scheduleTileUpdate):
1585         (WebKit::TiledDrawingArea::tileUpdateTimerFired):
1586         (WebKit::TiledDrawingArea::didReceiveMessage):
1587         * WebProcess/WebPage/TiledDrawingArea.h:
1588
1589 2011-06-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1590
1591         Unreviewed, rolling out r88259 and r88263.
1592         http://trac.webkit.org/changeset/88259
1593         http://trac.webkit.org/changeset/88263
1594         https://bugs.webkit.org/show_bug.cgi?id=62228
1595
1596         broke builds (Requested by rniwa on #webkit).
1597
1598         * PluginProcess/mac/PluginProcessShim.mm:
1599
1600 2011-06-07  Tim Horton  <timothy_horton@apple.com>
1601
1602         Reviewed by Alexey Proskuryakov.
1603
1604         Use correct CFURLStorageSessionRef definition on Snow Leopard
1605         https://bugs.webkit.org/show_bug.cgi?id=62223
1606
1607         * PluginProcess/mac/PluginProcessShim.mm:
1608
1609 2011-06-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1610
1611         Reviewed by Martin Robinson.
1612
1613         [GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView
1614         https://bugs.webkit.org/show_bug.cgi?id=62200
1615
1616         In WebKit2 PluginPackage is used by the UI process to load plugins
1617         in order to get information about them, but it doesn't use any GTK
1618         symbol. So the UI process should be able to load plugins even when
1619         building with GTK3, but we should not allow the plugin view to use
1620         the plugin if it mixes GTK2 and GTK3 symbols.
1621
1622         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
1623         (WebKit::moduleMixesGtkSymbols):
1624         (WebKit::NetscapePlugin::platformPostInitialize): Check whether
1625         the module is mixing GTK+ 2 and GTK+ 3 symbols.
1626
1627 2011-06-06  Sheriff Bot  <webkit.review.bot@gmail.com>
1628
1629         Unreviewed, rolling out r88222.
1630         http://trac.webkit.org/changeset/88222
1631         https://bugs.webkit.org/show_bug.cgi?id=62192
1632
1633         Broke compile on Mac (Requested by abarth on #webkit).
1634
1635         * Scripts/webkit2/messages.py:
1636         * Shared/WebCoreArgumentCoders.h:
1637
1638 2011-06-06  Noam Rosenthal  <noam.rosenthal@nokia.com>
1639
1640         Reviewed by Kenneth Rohde Christiansen.
1641
1642         WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
1643         https://bugs.webkit.org/show_bug.cgi?id=61694
1644
1645         Add ArgumentCoders for TransformOperation, including all the subclasses,
1646         and TransformOperations.
1647
1648         * Scripts/webkit2/messages.py:
1649         * Shared/WebCoreArgumentCoders.h:
1650
1651 2011-06-06  John Sullivan  <sullivan@apple.com>
1652
1653         Reviewed by Dan Bernstein.
1654
1655         <https://bugs.webkit.org/show_bug.cgi?id=62165>
1656         <rdar://problem/9555835>
1657         WebKit2 find-on-page callback doesn’t handle kWKMoreThanMaximumMatchCount on PDF pages
1658
1659         * UIProcess/API/mac/PDFViewController.mm:
1660         (WebKit::PDFViewController::findString):
1661         Return kWKMoreThanMaximumMatchCount when appropriate, a la FindController::countStringMatches().
1662         Also, skip counting all the matches if maxMatchCount is 0, to avoid (perhaps slowly) computing a
1663         number that would be ignored.
1664
1665 2011-06-06  Carlos Garcia Campos  <cgarcia@igalia.com>
1666
1667         Reviewed by Anders Carlsson.
1668
1669         Do not use NPRuntimeObjectMap in NetscapePlugin::setException when plug-in is running out of process
1670         https://bugs.webkit.org/show_bug.cgi?id=62124
1671
1672         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1673         (WebKit::NetscapePlugin::setException):
1674
1675 2011-06-06  Dominic Cooney  <dominicc@chromium.org>
1676
1677         Unreviewed WinCairo build fix after r88159.
1678
1679         * win/WebKit2CFLite.def: Export symbols for WebCoreTestSupport.
1680
1681 2011-06-04  Dominic Cooney  <dominicc@chromium.org>
1682
1683         Reviewed by Dimitri Glazkov.
1684
1685         Re-export JSC and WebCore symbols required by WebCoreTestSupport.
1686         https://bugs.webkit.org/show_bug.cgi?id=61076
1687
1688         * win/WebKit2.def:
1689
1690 2011-06-06  Alexandru Chiculita  <achicu@adobe.com>
1691
1692         Reviewed by Kent Tamura.
1693
1694         Add ENABLE_CSS_EXCLUSIONS support for build-webkit script
1695         https://bugs.webkit.org/show_bug.cgi?id=61628
1696
1697         * Configurations/FeatureDefines.xcconfig:
1698
1699 2011-06-06  Mihnea Ovidenie  <mihnea@adobe.com>
1700
1701         Reviewed by Kent Tamura.
1702
1703         Add ENABLE(CSS_REGIONS) guard for CSS Regions support
1704         https://bugs.webkit.org/show_bug.cgi?id=61631
1705
1706         * Configurations/FeatureDefines.xcconfig:
1707
1708 2011-06-06  Carlos Garcia Campos  <cgarcia@igalia.com>
1709
1710         Reviewed by Anders Carlsson.
1711
1712         [UNIX] SOCK_DGRAM sockets are not notified when the other end closes the connection
1713         https://bugs.webkit.org/show_bug.cgi?id=61538
1714
1715         Use SOCK_STREAM instead of SOCK_DGRAM sockets. Rework the message
1716         receiver code to support stream sockets, since it requires to
1717         handle message boundaries. The same code works for DGRAM sockets,
1718         so this change shouldn't break other ports using DGRAM.
1719
1720         * Platform/CoreIPC/Connection.h:
1721         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
1722         (CoreIPC::Connection::platformInitialize):
1723         (CoreIPC::Connection::processMessage): Process messages from data
1724         already received.
1725         (CoreIPC::readBytesFromSocket): Read from socket using recvmsg().
1726         (CoreIPC::Connection::readyReadHandler):
1727         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
1728         (WebKit::ProcessLauncher::launchProcess): Use SOCK_DGRAM in
1729         socketpair().
1730
1731 == Rolled over to ChangeLog-2011-06-04 ==