[EFL] Share resources installed for inspector
[WebKit.git] / Source / WebKit2 / ChangeLog
1 2012-10-12  Ryuan Choi  <ryuan.choi@samsung.com>
2
3         [EFL] Share resources installed for inspector
4         https://bugs.webkit.org/show_bug.cgi?id=98991
5
6         Reviewed by Gyuyoung Kim.
7
8         * PlatformEfl.cmake: Removed build script which install resources to share.
9         * UIProcess/efl/WebInspectorProxyEfl.cpp:
10         (WebKit::WebInspectorProxy::inspectorPageURL): Modified not to use makeString.
11         (WebKit::WebInspectorProxy::inspectorBaseURL): Changed resource path.
12
13 2012-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>
14
15         Unreviewed, rolling out r131160.
16         http://trac.webkit.org/changeset/131160
17         https://bugs.webkit.org/show_bug.cgi?id=99163
18
19         "It should not be landed without it's follow-up because it
20         break pixal and ref tests without it." (Requested by kbalazs
21         on #webkit).
22
23         * Shared/API/c/qt/WKImageQt.cpp:
24         (WKImageCreateQImage):
25         * Shared/API/c/qt/WKImageQt.h:
26
27 2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>
28
29         [WK2] Serialization of Resource[Request,Response,Error] should be shared across ports
30         https://bugs.webkit.org/show_bug.cgi?id=90142
31
32         Unreviewed buildfix 2.
33
34         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
35         (CoreIPC::::encodePlatformData):
36         (CoreIPC::::decodePlatformData):
37
38 2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>
39
40         [WK2] Serialization of Resource[Request,Response,Error] should be shared across ports
41         https://bugs.webkit.org/show_bug.cgi?id=90142
42
43         Unreviewed buildfix.
44
45         * Shared/WebCoreArgumentCoders.cpp:
46         (CoreIPC::::decode):
47
48 2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>
49
50         [WK2] Serialization of Resource[Request,Response,Error] should be shared across ports
51         https://bugs.webkit.org/show_bug.cgi?id=90142
52
53         Reviewed by Simon Hausmann.
54
55         Share common serialization code across Qt and soup ports.
56         All of these ports serialize the WebCore representation
57         of these types.
58
59         * Shared/WebCoreArgumentCoders.cpp:
60         (CoreIPC::::encode):
61         (CoreIPC):
62         (CoreIPC::::decode):
63         * Shared/WebCoreArgumentCoders.h:
64         * Shared/mac/WebCoreArgumentCodersMac.mm:
65         (CoreIPC::::encodePlatformData):
66         (CoreIPC::::decodePlatformData):
67         * Shared/qt/WebCoreArgumentCodersQt.cpp:
68         (CoreIPC::::encodePlatformData):
69         (CoreIPC::::decodePlatformData):
70         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
71         (CoreIPC::::encodePlatformData):
72         (CoreIPC::::decodePlatformData):
73         * Shared/win/WebCoreArgumentCodersWin.cpp:
74         (CoreIPC::::encodePlatformData):
75         (CoreIPC::::decodePlatformData):
76
77 2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>
78
79         Unreviewed, rolling out r130389.
80         http://trac.webkit.org/changeset/130389
81         https://bugs.webkit.org/show_bug.cgi?id=98048
82
83         It broke chromium
84
85         * win/WebKit2.def:
86         * win/WebKit2CFLite.def:
87
88 2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>
89
90         [Qt][WTR] Do a forced repaint before generating pixel results
91         https://bugs.webkit.org/show_bug.cgi?id=98654
92
93         Reviewed by Jocelyn Turcotte.
94
95         Added API to convert a QImage to a WKImage so we can
96         pass it to cross-platform code.
97
98         * Shared/API/c/qt/WKImageQt.cpp:
99         (WKImageCreateFromQImage):
100         * Shared/API/c/qt/WKImageQt.h:
101
102 2012-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>
103
104         Unreviewed, rolling out r131121.
105         http://trac.webkit.org/changeset/131121
106         https://bugs.webkit.org/show_bug.cgi?id=99144
107
108         It made all tests timeout on all WK2 platform (Requested by
109         ossy on #webkit).
110
111         * UIProcess/WebProcessProxy.cpp:
112         * UIProcess/WebProcessProxy.h:
113         (WebProcessProxy):
114         * UIProcess/WebProcessProxy.messages.in:
115         * WebProcess/InjectedBundle/InjectedBundle.cpp:
116         (WebKit::InjectedBundle::postMessage):
117         (WebKit::InjectedBundle::postSynchronousMessage):
118
119 2012-10-11  Andy Estes  <aestes@apple.com>
120
121         Add some basic methods and properties to the injected bundle Objective-C DOM API
122         https://bugs.webkit.org/show_bug.cgi?id=99137
123
124         Reviewed by Sam Weinig.
125
126         Add methods and properties that allow for tree traversal, node creation/insertion,
127         attribute modification, text node retrieval, and range creation.
128
129         * WebKit2.xcodeproj/project.pbxproj:
130         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
131         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
132         (toDocument):
133         (-[WKDOMDocument createElement:]):
134         (-[WKDOMDocument createTextNode:]):
135         (-[WKDOMDocument body]):
136         * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
137         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
138         (-[WKDOMElement hasAttribute:]):
139         (-[WKDOMElement getAttribute:]):
140         (-[WKDOMElement setAttribute:value:]):
141         (-[WKDOMElement tagName]):
142         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
143         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
144         (WebKit::WKDOMNodeClass):
145         (WebKit::toWebCoreText):
146         (WebKit::toWKDOMText):
147         (WebKit::toWebCoreRange):
148         * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
149         * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
150         (-[WKDOMNode insertNode:before:]):
151         (-[WKDOMNode appendChild:]):
152         (-[WKDOMNode parentNode]):
153         (-[WKDOMNode firstChild]):
154         (-[WKDOMNode nextSibling]):
155         * WebProcess/InjectedBundle/API/mac/WKDOMRange.h:
156         * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
157         (-[WKDOMRange setStart:offset:]):
158         (-[WKDOMRange setEnd:offset:]):
159         (-[WKDOMRange collapse:]):
160         (-[WKDOMRange selectNode:]):
161         (-[WKDOMRange selectNodeContents:]):
162         (-[WKDOMRange isCollapsed]):
163         * WebProcess/InjectedBundle/API/mac/WKDOMText.h: Added.
164         * WebProcess/InjectedBundle/API/mac/WKDOMText.mm: Added.
165         (-[WKDOMText data]):
166
167 2012-10-11  Brady Eidson  <beidson@apple.com>
168
169         Add a WKContext call to enable the NetworkProcess.
170         https://bugs.webkit.org/show_bug.cgi?id=99140
171
172         Reviewed by Sam Weinig.
173
174         Add the SPI:
175         * UIProcess/API/C/WKContext.cpp:
176         (WKContextSetUsesNetworkProcess):
177         * UIProcess/API/C/WKContextPrivate.h:
178
179         Add a member for the flag and the first call site that will be interested in the flag's value:
180         * UIProcess/WebContext.cpp:
181         (WebKit::WebContext::WebContext):
182         (WebKit::WebContext::setUsesNetworkProcess):
183         (WebKit):
184         (WebKit::WebContext::createNewWebProcess):
185         (WebKit::WebContext::ensureNetworkProcess):
186         * UIProcess/WebContext.h:
187         (WebContext):
188
189 2012-10-11  Andy Estes  <aestes@apple.com>
190
191         Fix the 32-bit Mac build after r131138.
192
193         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
194         (WebKit::InjectedBundle::load):
195
196 2012-10-11  Anders Carlsson  <andersca@apple.com>
197
198         Stop using Connection::deprecatedSend in WebConnection
199         https://bugs.webkit.org/show_bug.cgi?id=99130
200
201         Reviewed by Sam Weinig.
202
203         Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.
204
205         * DerivedSources.make:
206         * DerivedSources.pri:
207         * GNUmakefile.list.am:
208         Add new files.
209
210         * Platform/CoreIPC/MessageID.h:
211         Add WebConnectionMessageClass.
212
213         * Shared/WebConnection.cpp:
214         (WebKit::WebConnection::WebConnection):
215         Make WebConnection hold on to the CoreIPC::Connection.
216
217         (WebKit::WebConnection::postMessage):
218         Ask the subclasses to encode the body data, then send it.
219
220         (WebKit::WebConnection::handleMessage):
221         Ask the subclasses to decode the body data, then call didReceiveClient.
222
223         (WebKit::WebConnection::invalidate):
224         Null out m_connection.
225
226         * Shared/WebConnection.h:
227         (WebKit::WebConnection::connection):
228
229         * Shared/WebConnection.messages.in: Added.
230
231         * UIProcess/WebConnectionToWebProcess.cpp:
232         (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
233         Pass the connection to the WebConnection initializer.
234
235         (WebKit::WebConnectionToWebProcess::encodeMessageBody):
236         (WebKit::WebConnectionToWebProcess::decodeMessageBody):
237         Encode and decode the message body.
238
239         (WebKit::WebConnectionToWebProcess::didReceiveMessage):
240         Handle WebConnection messages.
241
242         * WebKit2.xcodeproj/project.pbxproj:
243         Add new files.
244
245         * WebProcess/WebConnectionToUIProcess.cpp:
246         (WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
247         Pass the connection to the WebConnection initializer.
248
249         (WebKit::WebConnectionToUIProcess::encodeMessageBody):
250         (WebKit::WebConnectionToUIProcess::decodeMessageBody):
251         Encode and decode the message body.
252
253         (WebKit::WebConnectionToUIProcess::didReceiveMessage):
254         Handle WebConnection messages.
255
256         * win/WebKit2.vcproj:
257         Add new files.
258
259 2012-10-11  Andy Estes  <aestes@apple.com>
260
261         Expose the main frame's document to injected bundles via the Objective-C API
262         https://bugs.webkit.org/show_bug.cgi?id=99133
263
264         Patch by Sam Weinig.
265
266         Reviewed by Anders Carlsson.
267
268         Allow a bundle to declare a principle class which will be instantiated
269         by WebKit2 and passed an object to which WKBundleClient calls are
270         forwarded and which can access the main frame's WKDOMDocument.
271
272         * WebKit2.xcodeproj/project.pbxproj:
273         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h:
274         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm: Instantiate
275         the bundle's principle class forward WKBundleClient calls to it.
276         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h:
277         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
278         Add a property called mainFrameDocument which returns a WKDOMDocument.
279         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerInternal.h:
280         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
281         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
282         (WebKit::InjectedBundle::load): Initialize the shared
283         WKWebProcessPlugInController with the bundle's principle class.
284
285 2012-10-11  Sam Weinig  <sam@webkit.org>
286
287         Add a helper function for initializing WebKit2 DOM objects
288         https://bugs.webkit.org/show_bug.cgi?id=99128
289
290         Reviewed by Anders Carlsson.
291
292         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
293         (WebKit::WKDOMNodeClass):
294         (WebKit::initWithImpl):
295         (WebKit::toWKDOMNode):
296         (WebKit::toWKDOMRange):
297         (WebKit::toWKDOMType):
298         Add toWKDOMType which implements the core object initialization and caching.
299
300 2012-10-11  Seokju Kwon  <seokju.kwon@samsung.com>
301
302         [EFL][WK2] Add support for Inspector
303         https://bugs.webkit.org/show_bug.cgi?id=98639
304
305         Reviewed by Kenneth Rohde Christiansen.
306
307         Support inspector on WebKit2/Efl and add APIs to show and close the inspector.
308
309         * UIProcess/API/efl/ewk_view.cpp:
310         (ewk_view_inspector_show):
311         (ewk_view_inspector_close):
312         * UIProcess/API/efl/ewk_view.h:
313         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
314         (TEST_F):
315         * UIProcess/WebInspectorProxy.h:
316         (WebInspectorProxy):
317         * UIProcess/efl/WebInspectorProxyEfl.cpp:
318         (WebKit::resizeInspectorWindow):
319         (WebKit):
320         (WebKit::destroyInspectorWindow):
321         (WebKit::closeInspectorWindow):
322         (WebKit::WebInspectorProxy::createInspectorWindow):
323         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
324         (WebKit::WebInspectorProxy::platformOpen):
325
326 2012-10-11  Anders Carlsson  <andersca@apple.com>
327
328         Stop using deprecatedSend and deprecatedSendSync for sending messages to the UI process
329         https://bugs.webkit.org/show_bug.cgi?id=99125
330
331         Reviewed by Andreas Kling.
332
333         Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.
334
335         * UIProcess/WebContext.h:
336         * UIProcess/WebProcessProxy.cpp:
337         (WebKit::WebProcessProxy::postMessage):
338         (WebKit):
339         (WebKit::WebProcessProxy::postSynchronousMessage):
340         * UIProcess/WebProcessProxy.h:
341         (WebProcessProxy):
342         * UIProcess/WebProcessProxy.messages.in:
343         * WebProcess/InjectedBundle/InjectedBundle.cpp:
344         (WebKit::InjectedBundle::postMessage):
345         (WebKit::InjectedBundle::postSynchronousMessage):
346
347 2012-10-11  Anders Carlsson  <andersca@apple.com>
348
349         Stop using deprecatedSend for WebContext::postMessageToInjectedBundle
350         https://bugs.webkit.org/show_bug.cgi?id=99123
351
352         Reviewed by Andreas Kling.
353
354         Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.
355
356         * Platform/CoreIPC/MessageID.h:
357         Remove MessageClassInjectedBundle.
358
359         * Shared/CoreIPCSupport/InjectedBundleMessageKinds.h: Removed.
360         * UIProcess/WebContext.cpp:
361         (WebKit::WebContext::createNewWebProcess):
362         Stop using deprecatedSend.
363
364         (WebKit::WebContext::postMessageToInjectedBundle):
365         Stop using deprecatedSend. Remove now invalid FIXMEs.
366
367         * UIProcess/WebPageProxy.cpp:
368         Remove include.
369
370         * WebKit2.xcodeproj/project.pbxproj:
371         Remove InjectedBundleMessageKinds.h.
372
373         * WebProcess/InjectedBundle/InjectedBundle.cpp:
374         * WebProcess/InjectedBundle/InjectedBundle.h:
375         The injected bundle is no longer in charge of receiving IPC messages.
376
377         * WebProcess/WebProcess.cpp:
378         (WebKit::WebProcess::didReceiveMessage):
379         Stop passing messages to the injected bundle.
380
381         (WebKit::WebProcess::postInjectedBundleMessage):
382         Decode the message and pass it to the injected bundle.
383
384         * WebProcess/WebProcess.messages.in:
385         Add PostInjectedBundleMessage.
386
387 2012-10-11  Anders Carlsson  <andersca@apple.com>
388
389         Stop using deprecatedSend for WebPageProxy::postMessageToInjectedBundle
390         https://bugs.webkit.org/show_bug.cgi?id=99120
391
392         Reviewed by Andreas Kling.
393
394         Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.
395
396         * Shared/CoreIPCSupport/InjectedBundleMessageKinds.h:
397         Remove PostMessageToPage.
398
399         * UIProcess/WebPageProxy.cpp:
400         (WebKit::WebPageProxy::postMessageToInjectedBundle):
401         Stop using deprecatedSend.
402
403         * WebProcess/InjectedBundle/InjectedBundle.cpp:
404         (WebKit::InjectedBundle::didReceiveMessage):
405         Remove code to handle PostMessageToPage.
406
407         * WebProcess/WebPage/WebPage.cpp:
408         (WebKit::WebPage::postInjectedBundleMessage):
409         Decode the APIObject and send it along to the injected bundle.
410
411         * WebProcess/WebPage/WebPage.messages.in:
412         Add PostInjectedBundleMessage message.
413
414 2012-10-11  Regina Chung  <heejin.r.chung@samsung.com>
415
416         [EFL][WK2] WebProcess keeps on waiting for UIProcess
417         https://bugs.webkit.org/show_bug.cgi?id=97646
418
419         Reviewed by Kenneth Rohde Christiansen.
420
421         Set LayerTreeRenderer to active so UIProcess can send RenderNextFrame message to WebProcess
422         after accelerated compositing(AC) mode is entered, so WebProcess can start flushing changes to UIProcess.
423
424         * UIProcess/API/efl/EflViewportHandler.cpp: Added API for setting LayerTreeRenderer's active state.
425         (WebKit::EflViewportHandler::setActive):
426         (WebKit):
427         * UIProcess/API/efl/EflViewportHandler.h:
428         (EflViewportHandler):
429         * UIProcess/API/efl/ewk_view.cpp: Sets LayerTreeRenderer's active status to true after entering AC mode.
430         (ewk_view_accelerated_compositing_mode_enter):
431
432 2012-10-10  Brady Eidson  <beidson@apple.com>
433
434         Switch ResourceLoader::resourceData() from SharedBuffer to ResourceBuffer
435         https://bugs.webkit.org/show_bug.cgi?id=98976
436
437         Reviewed by Anders Carlsson.
438
439         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
440         (WebKit::WebFrameLoaderClient::finishedLoading):
441         * WebProcess/WebPage/WebFrame.cpp:
442         (WebKit::WebFrame::source):
443         * WebProcess/WebPage/WebPage.cpp:
444         (WebKit::WebPage::getMainResourceDataOfFrame):
445
446 2012-10-11  Sam Weinig  <sam@webkit.org>
447
448         Add missing WK_EXPORT for WKDOMTextIterator.
449
450         Rubber-stamped by Brady Eidson.
451
452         * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.h:
453
454 2012-10-11  Zeno Albisser  <zeno@webkit.org>
455
456         [Qt] Implement GraphicsSurfaceToken to replace uint64_t as token type.
457         https://bugs.webkit.org/show_bug.cgi?id=98501
458
459         Replace the token type for GraphicsSurface with a new class GraphicsSurfaceToken.
460         This is necessary in order to implement GraphicsSurface for Windows.
461         Depending on the platform a GraphicsSurfaceToken might contain a
462         WindowID (Linux/GLX), two IOSurfaceIDs (Mac) or in the future two HANDLEs (Windows).
463         The simple uint64_t is not sufficient anymore, since a single HANDLE in windows
464         can be 64bit already.
465
466         Reviewed by Noam Rosenthal.
467
468         * Shared/ShareableSurface.cpp:
469         (WebKit::ShareableSurface::Handle::encode):
470         (WebKit::ShareableSurface::Handle::decode):
471         (WebKit::ShareableSurface::create):
472         (WebKit::ShareableSurface::createHandle):
473         * Shared/ShareableSurface.h:
474         (WebKit::ShareableSurface::Handle::graphicsSurfaceToken):
475         (Handle):
476         * Shared/WebCoreArgumentCoders.cpp:
477         (CoreIPC):
478         (CoreIPC::::encode):
479         (CoreIPC::::decode):
480         * Shared/WebCoreArgumentCoders.h:
481         (WebCore):
482         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
483         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
484         (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
485         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
486         (LayerTreeCoordinatorProxy):
487         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
488         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
489         (WebKit::LayerTreeRenderer::syncCanvas):
490         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
491         (LayerTreeRenderer):
492         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
493         (WebCore::CoordinatedGraphicsLayer::syncCanvas):
494         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
495         (CoordinatedGraphicsLayerClient):
496         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
497         (WebKit::LayerTreeCoordinator::syncCanvas):
498         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
499         (LayerTreeCoordinator):
500
501 2012-10-10  Andras Becsi  <andras.becsi@digia.com>
502
503         [Qt][WK2] Avoid unnecessary calls in PageViewportController
504         https://bugs.webkit.org/show_bug.cgi?id=98886
505
506         Reviewed by Jocelyn Turcotte.
507
508         Remove leftover and unneeded update guards and visibility update
509         notifications to avoid unnecessary update cycles between the
510         controller an the client.
511         Previously didRenderFrame triggered updates for no reason since
512         animations on the page cause a lot of DidRenderFrame messages
513         for which the viewport state does not change.
514
515         * UIProcess/PageViewportController.cpp:
516         (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
517         (WebKit::PageViewportController::didRenderFrame):
518         * UIProcess/PageViewportController.h:
519         (PageViewportController):
520         * UIProcess/qt/PageViewportControllerClientQt.cpp:
521         (WebKit::PageViewportControllerClientQt::setContentsScale):
522         (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):
523         (WebKit::PageViewportControllerClientQt::updateViewportController):
524         * UIProcess/qt/PageViewportControllerClientQt.h:
525         (PageViewportControllerClientQt):
526
527 2012-10-11  Mario Sanchez Prada  <msanchez@igalia.com>
528
529         [GTK] It should be possible to disable favicons in WebKit2 GTK+ API
530         https://bugs.webkit.org/show_bug.cgi?id=98885
531
532         Reviewed by Carlos Garcia Campos.
533
534         Make support for favicons in WebKit2GTK+ disabled by default, and
535         allow enabling it even after calling webkit_web_context_get_favicon_database(),
536         by decoupling opening the IconDatabase, which will happen when
537         setting the path for the database directory, from creating the
538         instance of WebKitFaviconDatabase from WebKitWebContext.
539
540         * UIProcess/API/gtk/WebKitWebContext.cpp:
541         (_WebKitWebContextPrivate): Renamed faviconDatabasePath to
542         faviconDatabaseDirectory;
543         (ensureFaviconDatabase): Makes sure there's an instance of
544         WebKitFaviconDatabase created and associated to the context.
545         (webkit_web_context_set_favicon_database_directory): Use the
546         default path if NULL is passed, or the specified one, creating the
547         database if needed and opening it by setting it's path. If the
548         database is already open this method does nothing.
549         (webkit_web_context_get_favicon_database_directory): Return the
550         path or NULL if webkit_web_context_set_favicon_database_directory
551         has not been called yet.
552         (webkit_web_context_get_favicon_database): Return the instance of
553         WebKitFaviconDatabase, or create it if it doesn't exist yet, but
554         never set the path (would cause the icon database to be opened).
555
556         * UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
557         (testNotInitialized): New test to check that a NOT_INITIALIZED
558         error is got when using the database before setting its path.
559         (testSetDirectory): Call set_favicon_database_directory() here
560         instead of doing it in the constructor of FaviconDatabaseTest.
561         (beforeAll): Add testNotInitialized() to the test suite.
562
563 2012-10-11  Jinwoo Song  <jinwoo7.song@samsung.com>
564
565         [EFL][WK2] Revisit setting API names and documentation
566         https://bugs.webkit.org/show_bug.cgi?id=98793
567
568         Reviewed by Kenneth Rohde Christiansen.
569
570         Make setting API names to be consistent and revisit the documentation.
571
572         * UIProcess/API/efl/ewk_settings.cpp:
573         (ewk_settings_frame_flattening_enabled_set):
574         (ewk_settings_frame_flattening_enabled_get):
575         (ewk_settings_dns_prefetching_enabled_set):
576         (ewk_settings_dns_prefetching_enabled_get):
577         * UIProcess/API/efl/ewk_settings.h:
578         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
579         (TEST_F):
580
581 2012-10-10  Jer Noble  <jer.noble@apple.com>
582
583         Disallow full screen mode keyboard access by default.
584         https://bugs.webkit.org/show_bug.cgi?id=98971
585         <rdar://problem/12474226>
586
587         Reviewed by Sam Weinig.
588
589         Only support full screen if keyboard access is not requested.
590
591         * UIProcess/WebFullScreenManagerProxy.cpp:
592         (WebKit::WebFullScreenManagerProxy::supportsFullScreen):
593
594 2012-10-10  Sheriff Bot  <webkit.review.bot@gmail.com>
595
596         Unreviewed, rolling out r130972 and r130984.
597         http://trac.webkit.org/changeset/130972
598         http://trac.webkit.org/changeset/130984
599         https://bugs.webkit.org/show_bug.cgi?id=98986
600
601         Huge numbers of WK2 crashes (Requested by smfr on #webkit).
602
603         * Platform/CoreIPC/Connection.h:
604         (Connection):
605         * Platform/CoreIPC/MessageReceiverMap.cpp:
606         (CoreIPC::MessageReceiverMap::addMessageReceiver):
607         (CoreIPC::MessageReceiverMap::clearAllMessageReceivers):
608         (CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
609         (CoreIPC::MessageReceiverMap::dispatchMessage):
610         (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
611         * Platform/CoreIPC/MessageReceiverMap.h:
612         (MessageReceiverMap):
613         * UIProcess/WebConnectionToWebProcess.h:
614         (WebConnectionToWebProcess):
615         * UIProcess/WebContext.cpp:
616         (WebKit::WebContext::WebContext):
617         (WebKit::WebContext::~WebContext):
618         (WebKit::WebContext::knowsHowToHandleMessage):
619         (WebKit::WebContext::didReceiveMessage):
620         (WebKit::WebContext::didReceiveSyncMessage):
621         * UIProcess/WebContext.h:
622         (WebContext):
623         * UIProcess/WebProcessProxy.cpp:
624         (WebKit::WebProcessProxy::didReceiveMessage):
625         (WebKit::WebProcessProxy::didReceiveSyncMessage):
626         * UIProcess/WebProcessProxy.h:
627         (WebProcessProxy):
628
629 2012-10-10  Sam Weinig  <sam@webkit.org>
630
631         Add more Objective-C WebKit2 DOM API skeletons.
632         https://bugs.webkit.org/show_bug.cgi?id=98981
633
634         Reviewed by Anders Carlsson.
635
636         * WebKit2.xcodeproj/project.pbxproj:
637         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
638         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
639         * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
640         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
641         Update guards to actually do something. __CLANG__ is never defined, but __clang__ is.
642
643         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
644         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
645         - Abstracts DOM object caching into the DOMCache class which can only be used as a singleton.
646         - Adds WKDOMRange class extension to allow manipulating its internal pointer for caching purposes.
647         - Add WKDOMRange conversion functions.
648
649         * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
650         * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
651         Rename _node to _impl for consistency.
652
653         * WebProcess/InjectedBundle/API/mac/WKDOMRange.h:
654         * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
655         (-[WKDOMRange _initWithImpl:WebCore::]):
656         (-[WKDOMRange initWithDocument:]):
657         (-[WKDOMRange dealloc]):
658         (-[WKDOMRange startContainer]):
659         (-[WKDOMRange startOffset]):
660         (-[WKDOMRange endContainer]):
661         (-[WKDOMRange endOffset]):
662         (-[WKDOMRange text]):
663         Added. Only offers base range functionality.
664
665         * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.h:
666         * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm:
667         (-[WKDOMTextIterator initWithRange:]):
668         (-[WKDOMTextIterator advance]):
669         (-[WKDOMTextIterator atEnd]):
670         (-[WKDOMTextIterator currentRange]):
671         (-[WKDOMTextIterator currentTextPointer]):
672         (-[WKDOMTextIterator currentTextLength]):
673         Added. Almost identical to WebTextIterator API in WebKit.
674
675 2012-10-10  Anders Carlsson  <andersca@apple.com>
676
677         Stop crashing left and right.
678
679         * UIProcess/WebConnectionToWebProcess.h:
680         (WebKit::WebConnectionToWebProcess::webProcessProxy):
681         Add a getter.
682
683         * UIProcess/WebProcessProxy.cpp:
684         (WebKit::WebProcessProxy::fromConnection):
685         The WebProcessProxy is not the Connection::Client, the WebConnectionToWebProcess is.
686
687 2012-10-10  Sam Weinig  <sam@webkit.org>
688
689         Fix the GCC Mac build. Why are we still building with GCC again?
690
691         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
692         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
693         * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
694         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
695         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
696         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
697         * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
698         * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
699
700 2012-10-10  Christophe Dumez  <christophe.dumez@intel.com>
701
702         [EFL][WK2] Add toolbar buttons to MiniBrowser
703         https://bugs.webkit.org/show_bug.cgi?id=98883
704
705         Reviewed by Kenneth Rohde Christiansen.
706
707         Add "back,forward,list,changed" signal on the Ewk_View
708         to notify the client when the view's back / forward
709         list has changed. This is useful for the UI to update
710         its back / forward buttons disabled state.
711
712         * UIProcess/API/efl/ewk_view.cpp:
713         (ewk_view_back_forward_list_changed):
714         * UIProcess/API/efl/ewk_view.h:
715         * UIProcess/API/efl/ewk_view_loader_client.cpp:
716         (didChangeBackForwardList):
717         * UIProcess/API/efl/ewk_view_private.h:
718
719 2012-10-10  Jon Lee  <jonlee@apple.com>
720
721         [WK2] Activate plugins when user clicks on snapshot
722         https://bugs.webkit.org/show_bug.cgi?id=98328
723         <rdar://problem/12426681>
724
725         Reviewed by Brady Eidson.
726
727         Implement the recreation of the plugin.
728
729         * WebProcess/Plugins/PluginView.cpp:
730         (WebKit::PluginView::recreateAndInitialize): We can run into a situation where the user
731         decided to run the plugin before the snapshot was ready to be taken. In this case, the
732         plugin member variable is non-null, and the timer is still active. Turn off the timer, and
733         destroy that instance of the plugin. We set the plugin to the instance provided in the
734         first parameter to this function, and reset the member variables so that the PluginView is
735         in a state similar to when it was first created. We also immediately initialize the plugin,
736         which may happen synchronously or asynchronously.
737
738         * WebProcess/Plugins/PluginView.h:
739         (WebKit::PluginView::initialParameters): Expose the initial parameters. Used to recreate
740         the plugin.
741         (WebKit::PluginView::pluginElement): Expose the element associated with the widget. Used to
742         recreate the plugin.
743
744         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
745         (WebKit::WebFrameLoaderClient::recreatePlugin): Create a new Plugin instance using the same
746         parameters used to create the plugin for snapshotting. Forward that instance to the widget.
747         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
748         (WebFrameLoaderClient): Implement recreatePlugin().
749
750 2012-10-10  Sam Weinig  <sam@webkit.org>
751
752         Fix 32-bit build.
753
754         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
755         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
756         * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
757         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
758         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
759         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
760         * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
761         * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
762
763 2012-10-10  Anders Carlsson  <andersca@apple.com>
764
765         WebContext should be a MessageReceiver
766         https://bugs.webkit.org/show_bug.cgi?id=98958
767
768         Reviewed by Sam Weinig.
769
770         Make WebContext be a MessageReceiver that lives in its own map. This allows us to get rid of the
771         knowsHowToHandleMessage functions on MessageReceiverMap and WebContext.
772
773         * Platform/CoreIPC/Connection.h:
774         (CoreIPC::Connection::client):
775         (Connection):
776         * Platform/CoreIPC/MessageReceiverMap.cpp:
777         (CoreIPC::MessageReceiverMap::addMessageReceiver):
778         (CoreIPC::MessageReceiverMap::invalidate):
779         (CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
780         (CoreIPC::MessageReceiverMap::dispatchMessage):
781         (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
782         * Platform/CoreIPC/MessageReceiverMap.h:
783         (MessageReceiverMap):
784         * UIProcess/WebContext.cpp:
785         (WebKit::WebContext::WebContext):
786         (WebKit::WebContext::~WebContext):
787         (WebKit::WebContext::dispatchMessage):
788         (WebKit::WebContext::dispatchSyncMessage):
789         (WebKit::WebContext::didReceiveMessage):
790         (WebKit::WebContext::didReceiveSyncMessage):
791         * UIProcess/WebContext.h:
792         (WebContext):
793         * UIProcess/WebProcessProxy.cpp:
794         (WebKit::WebProcessProxy::fromConnection):
795         (WebKit):
796         (WebKit::WebProcessProxy::didReceiveMessage):
797         (WebKit::WebProcessProxy::didReceiveSyncMessage):
798         * UIProcess/WebProcessProxy.h:
799         (WebProcessProxy):
800
801 2012-10-10  Sam Weinig  <sam@webkit.org>
802
803         Add skeleton of a WebKit2 ObjC DOM SPI (not intended to be the full DOM)
804         https://bugs.webkit.org/show_bug.cgi?id=98955
805
806         Reviewed by Anders Carlsson.
807
808         Add a skeleton DOM implementation only exposing Node, Element and Document
809         for now. It is currently only available in 64-bit as it relies on the non-fragile
810         ABI for now.
811
812         * WebKit2.xcodeproj/project.pbxproj:
813         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h: Added.
814         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm: Added.
815         * WebProcess/InjectedBundle/API/mac/WKDOMElement.h: Added.
816         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm: Added.
817         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h: Added.
818         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm: Added.
819         * WebProcess/InjectedBundle/API/mac/WKDOMNode.h: Added.
820         * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm: Added.
821
822 2012-10-04  Andy Estes  <aestes@apple.com>
823
824         [WebKit2] Create an API for adding and removing user stylesheets from a page group
825         https://bugs.webkit.org/show_bug.cgi?id=98432
826
827         Reviewed by Sam Weinig.
828
829         This patch adds the following API to WKBrowsingContextGroup:
830
831         - (void)addUserStyleSheet:(NSString *)source baseURL:(NSURL *)baseURL whitelist:(NSArray *)whitelist blacklist:(NSArray *)blacklist mainFrameOnly:(BOOL)mainFrameOnly;
832         - (void)removeAllUserStyleSheets;
833
834         Sheets added via this API are sent to all processes that contain a page
835         in the given page group. Sheets are also cached in the UI process in a
836         new object called UserContentContainer, which is a property of each
837         group's WebPageGroupData and is sent to new web processes during page
838         initialization.
839
840         This is less than ideal, since new pages added to a pre-existing
841         process / page group combination will send redundant user stylesheet
842         strings over the wire. To avoid this we'd have to keep track track of
843         the groups that currently exist in each process and only send user
844         content during page creation if it is the first time a process has seen
845         the page's group. I decided to not add this complexity for the time
846         being, but we might need to consider it if we find that the current
847         approach impacts performance for clients that heavily utilize user
848         content.
849
850         * Shared/API/c/WKArray.cpp:
851         (WKArrayCreateAdoptingValues): Add a WKArray creation function that
852         adopts the incoming WKTypeRefs rather than refing them.
853         * Shared/API/c/WKArray.h:
854         * Shared/API/c/WKBase.h: Move WKUserContentInjectedFrames out of
855         WKBundlePrivate.h so it can be used in WKPageGroup, too.
856         * Shared/API/c/cf/WKURLCF.cpp:
857         (WKURLCreateWithCFURL): Return 0 for null CFURLRefs instead of crashing
858         inside CFURLGetString().
859         * Shared/ImmutableArray.cpp:
860         (WebKit::ImmutableArray::ImmutableArray): Add a tag to differentiate
861         between the adopting and refing ctors.
862         * Shared/ImmutableArray.h:
863         (WebKit::ImmutableArray::create): Call the refing ctor.
864         (WebKit::ImmutableArray::adopt): Call the adopting ctor.
865         * Shared/UserContentContainer.cpp: Added.
866         (UserContentItemMessageEncoder): Create a UserMessageEncoder for
867         serializing UserContentContainer::Item's APIObjects.
868         (WebKit::UserContentItemMessageEncoder::UserContentItemMessageEncoder):
869         (WebKit::UserContentItemMessageEncoder::encode):
870         (UserContentItemMessageDecoder): Create a UserMessageEncoder for
871         deserializing UserContentContainer::Item's APIObjects.
872         (WebKit::UserContentItemMessageDecoder::UserContentItemMessageDecoder):
873         (WebKit::UserContentItemMessageDecoder::decode):
874         (WebKit::UserContentContainer::Item::Item):
875         (WebKit::encodeStringArray): Add a helper function for encoding
876         ImmutableArrays of WebStrings.
877         (WebKit::UserContentContainer::Item::encode): Encode the item's
878         properties using UserContentItemMessageEncoder.
879         (WebKit::decodeStringArray): Add a helper function for decoding
880         ImmutableArrays of WebStrings.
881         (WebKit::UserContentContainer::Item::decode): Decode the item's
882         properties using UserContentItemMessageDecoder.
883         (WebKit::toStringVector): Add a helper function for converting an
884         ImmutableArray of WebStrings to a Vector of Strings.
885         (WebKit::UserContentContainer::Item::whitelist): Use toStringVector().
886         (WebKit::UserContentContainer::Item::blacklist): Ditto.
887         (WebKit::UserContentContainer::encode): Encode the Vector of UserContentContainer::Items.
888         (WebKit::UserContentContainer::decode): Decode the Vector of UserContentContainer::Items.
889         * Shared/UserContentContainer.h: Added.
890         * Shared/WebPageGroupData.cpp:
891         (WebKit::WebPageGroupData::encode): Include userStyleSheets when encoding.
892         (WebKit::WebPageGroupData::decode): Include userStyleSheets when decoding.
893         * Shared/WebPageGroupData.h:
894         (WebPageGroupData): Add a UserContentContainer called userStyleSheets
895         to WebPageGroupData.
896         * UIProcess/API/C/WKPageGroup.cpp: Add the C SPI version of the Objective-C API.
897         (WKPageGroupAddUserStyleSheet):
898         (WKPageGroupRemoveAllUserStyleSheets):
899         * UIProcess/API/C/WKPageGroup.h:
900         * UIProcess/API/mac/WKBrowsingContextGroup.h: Add the Objective-C API.
901         * UIProcess/API/mac/WKBrowsingContextGroup.mm:
902         (createWKArray): Add a helper function that converts an NSArray of NSStrings to a WKArray of WKStrings.
903         (-[WKBrowsingContextGroup addUserStyleSheet:baseURL:whitelist:blacklist:mainFrameOnly:]):
904         Implement the Objective-C API in terms of the C SPI.
905         (-[WKBrowsingContextGroup removeAllUserStyleSheets]): Ditto.
906         * UIProcess/WebPageGroup.cpp:
907         (WebKit::WebPageGroup::addUserStyleSheet): Add the new sheet to the
908         group's WebPageGroupData, which ensures that the group's sheets are
909         sent to new web processes.
910         (WebKit::WebPageGroup::removeAllUserStyleSheets): Ditto for removal.
911         * UIProcess/WebPageGroup.h:
912         (WebKit::WebPageGroup::sendToAllProcessesInGroup): Add a helper message
913         that sends a message to all processes that have a page in the current
914         group. This is used to add new user sheets to already-initialized page
915         groups in the UI processes.
916         * WebKit2.xcodeproj/project.pbxproj:
917         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Moved
918         WKUserContentInjectedFrames from here to WKBase.h.
919         * WebProcess/WebPage/WebPageGroupProxy.cpp:
920         (WebKit::WebPageGroupProxy::WebPageGroupProxy): Add each sheet in the
921         WebPageGroupData to WebCore's page group.
922         (WebKit::WebPageGroupProxy::addUserStyleSheet): Add the sheet received
923         from the UI process to WebCore's page group.
924         (WebKit::WebPageGroupProxy::removeAllUserStyleSheets): Remove all
925         sheets from WebCore's page group.
926         * WebProcess/WebPage/WebPageGroupProxy.h:
927         * WebProcess/WebPage/WebPageGroupProxy.messages.in: Define
928         AddUserStyleSheet and RemoveAllUserStyleSheets, two messages sent from
929         the UI process to a web process's WebPageGroupProxy.
930
931 2012-10-10  Sam Weinig  <sam@webkit.org>
932
933         Make all of the WebContext sub objects MessageReceivers
934         https://bugs.webkit.org/show_bug.cgi?id=98661
935
936         Reviewed by Anders Carlsson.
937
938         Start work towards simplified message dispatch.
939
940         * Platform/CoreIPC/MessageReceiverMap.cpp:
941         (CoreIPC::MessageReceiverMap::clearAllMessageReceivers):
942         (CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
943         (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
944         * Platform/CoreIPC/MessageReceiverMap.h:
945         Add additional helper methods.
946
947         * UIProcess/WebContext.cpp:
948         (WebKit::WebContext::~WebContext):
949         (WebKit::WebContext::addMessageReceiver):
950         (WebKit::WebContext::knowsHowToHandleMessage):
951         (WebKit::WebContext::didReceiveMessage):
952         (WebKit::WebContext::didReceiveSyncMessage):
953         * UIProcess/WebContext.h:
954         Add a MessageReceiverMap that chains to the main on in WebProcessProxy. Simplifies
955         didReceiveMessage and didReceiveSyncMessage.
956
957         * UIProcess/WebProcessProxy.cpp:
958         (WebKit::WebProcessProxy::didReceiveMessage):
959         (WebKit::WebProcessProxy::didReceiveSyncMessage):
960         Use the new WebContext methods to simplify dispatch.
961
962         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
963         (WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy):
964         * UIProcess/Notifications/WebNotificationManagerProxy.h:
965         (WebNotificationManagerProxy):
966         * UIProcess/WebApplicationCacheManagerProxy.cpp:
967         (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
968         * UIProcess/WebApplicationCacheManagerProxy.h:
969         (WebApplicationCacheManagerProxy):
970         * UIProcess/WebBatteryManagerProxy.cpp:
971         (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
972         * UIProcess/WebBatteryManagerProxy.h:
973         (WebBatteryManagerProxy):
974         * UIProcess/WebCookieManagerProxy.cpp:
975         (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
976         * UIProcess/WebCookieManagerProxy.h:
977         (WebCookieManagerProxy):
978         * UIProcess/WebDatabaseManagerProxy.cpp:
979         (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
980         (WebKit::WebDatabaseManagerProxy::didReceiveMessage):
981         (WebKit):
982         * UIProcess/WebDatabaseManagerProxy.h:
983         (WebDatabaseManagerProxy):
984         * UIProcess/WebGeolocationManagerProxy.cpp:
985         (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
986         * UIProcess/WebGeolocationManagerProxy.h:
987         (WebGeolocationManagerProxy):
988         * UIProcess/WebIconDatabase.cpp:
989         (WebKit::WebIconDatabase::WebIconDatabase):
990         * UIProcess/WebIconDatabase.h:
991         (WebIconDatabase):
992         (WebKit::WebIconDatabase::type):
993         * UIProcess/WebKeyValueStorageManagerProxy.cpp:
994         (WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy):
995         * UIProcess/WebKeyValueStorageManagerProxy.h:
996         (WebKeyValueStorageManagerProxy):
997         * UIProcess/WebMediaCacheManagerProxy.cpp:
998         (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
999         * UIProcess/WebMediaCacheManagerProxy.h:
1000         (WebMediaCacheManagerProxy):
1001         * UIProcess/WebNetworkInfoManagerProxy.cpp:
1002         (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
1003         (WebKit::WebNetworkInfoManagerProxy::didReceiveSyncMessage):
1004         * UIProcess/WebNetworkInfoManagerProxy.h:
1005         (WebNetworkInfoManagerProxy):
1006         * UIProcess/WebResourceCacheManagerProxy.cpp:
1007         (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
1008         (WebKit::WebResourceCacheManagerProxy::didReceiveMessage):
1009         (WebKit):
1010         * UIProcess/WebResourceCacheManagerProxy.h:
1011         (WebResourceCacheManagerProxy):
1012         * UIProcess/WebVibrationProxy.cpp:
1013         (WebKit::WebVibrationProxy::WebVibrationProxy):
1014         * UIProcess/WebVibrationProxy.h:
1015         (WebVibrationProxy):
1016         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
1017         (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
1018         (WebKit::WebSoupRequestManagerProxy::didReceiveMessage):
1019         (WebKit):
1020         * UIProcess/soup/WebSoupRequestManagerProxy.h:
1021         (WebSoupRequestManagerProxy):
1022         * WebProcess/Authentication/AuthenticationManager.h:
1023         (AuthenticationManager):
1024         * WebProcess/Geolocation/WebGeolocationManager.h:
1025         (WebGeolocationManager):
1026         Make all the WebContext sub-objects MessageReceivers to simplify dispatch.
1027
1028 2012-10-10  Simon Fraser  <simon.fraser@apple.com>
1029
1030         Add the mangled symbol name for Frame::layerTreeAsText() to the confusingly named
1031         Windows export file.
1032
1033         * win/WebKit2.def:
1034
1035 2012-10-10  Simon Fraser  <simon.fraser@apple.com>
1036
1037         Store a visible rect in GraphicsLayers, and optionally dump it in layerTreeAsText
1038         https://bugs.webkit.org/show_bug.cgi?id=98839
1039
1040         Reviewed by Sam Weinig.
1041
1042         Add a flag to layerTreeAsText() so that tests can optionally include this visible rect in
1043         layer tree dumps. This output will be platform-specific, so we don't want to do it unconditionally.
1044
1045         * WebProcess/WebPage/WebFrame.cpp:
1046         (WebKit::WebFrame::layerTreeAsText):
1047
1048 2012-10-10  Shinya Kawanaka  <shinyak@chromium.org>
1049
1050         Needs internal API to return distributed nodes for InsertionPoint
1051         https://bugs.webkit.org/show_bug.cgi?id=98868
1052
1053         Reviewed by Hajime Morita.
1054
1055         * win/WebKit2.def:
1056         * win/WebKit2CFLite.def:
1057
1058 2012-10-10  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1059
1060         [Qt][WK2] REGRESSION(r130879): It made fast/events/touch/* tests crash
1061         https://bugs.webkit.org/show_bug.cgi?id=98888
1062
1063         Reviewed by Kenneth Rohde Christiansen.
1064
1065         Add null-checks in the gesture recognizers to allow them working without a PageViewportController.
1066         The pinch and pan gesture recognizers aren't used in that case yet, but they could eventually
1067         be used to send pinch and pan gesture events to the web process. They are currently kept active
1068         because we need the tap gesture recognizer and its logic is bound to those other recognizers.
1069
1070         * UIProcess/qt/QtPanGestureRecognizer.cpp:
1071         (WebKit::QtPanGestureRecognizer::update):
1072         (WebKit::QtPanGestureRecognizer::finish):
1073         (WebKit::QtPanGestureRecognizer::cancel):
1074         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
1075         (WebKit::QtPinchGestureRecognizer::update):
1076         (WebKit::QtPinchGestureRecognizer::finish):
1077         (WebKit::QtPinchGestureRecognizer::cancel):
1078
1079 2012-10-10  Carlos Garcia Campos  <cgarcia@igalia.com>
1080
1081         [GTK] Test /webkit2/WebKitWebView/history-cache asserts in debug bot
1082         https://bugs.webkit.org/show_bug.cgi?id=98731
1083
1084         Reviewed by Martin Robinson.
1085
1086         The problem is in the test itself that is using
1087         SingleResourceLoadTest class to load a multiresource document.
1088
1089         * UIProcess/API/gtk/tests/TestResources.cpp:
1090         (testWebViewResourcesHistoryCache): Load only single resource
1091         documents and check also that the main resource given is the
1092         expected one.
1093         (serverCallback): Add another single resource document.
1094
1095 2012-10-10  Christophe Dumez  <christophe.dumez@intel.com>
1096
1097         [WK2][SOUP] ResourceError.isCancellation() is not carried over IPC
1098         https://bugs.webkit.org/show_bug.cgi?id=98882
1099
1100         Reviewed by Kenneth Rohde Christiansen.
1101
1102         Properly serialize / deserialize ResourceError.isCancellation
1103         boolean so that it can be used in UIProcess.
1104
1105         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
1106         (CoreIPC::::encode):
1107         (CoreIPC::::decode):
1108
1109 2012-10-10  Jinwoo Song  <jinwoo7.song@samsung.com>
1110
1111         [EFL][WK2] Add APIs to get/set the DNS prefetching
1112         https://bugs.webkit.org/show_bug.cgi?id=98790
1113
1114         Reviewed by Laszlo Gombos.
1115
1116         Add setting APIs for DNS prefetching and a unit test.
1117
1118         * UIProcess/API/efl/ewk_settings.cpp:
1119         (ewk_settings_DNS_prefetching_enabled_set):
1120         (ewk_settings_DNS_prefetching_enabled_get):
1121         * UIProcess/API/efl/ewk_settings.h:
1122         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
1123         (TEST_F):
1124
1125 2012-10-09  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1126
1127         [Qt][WK2] REGRESSION(r130629): It made touchadjustment/focusout-on-touch.html fai1
1128         https://bugs.webkit.org/show_bug.cgi?id=98642
1129
1130         Reviewed by Kenneth Rohde Christiansen.
1131
1132         There was an early return that would prevent gesture recognition if no PageViewportController
1133         has been set on QtWebPageEventHandler. The gesture recognizer are also used to send
1134         GestureEvents to WebCore which this layout test is using.
1135
1136         Make sure that the gesture recognition is done even when no PageViewportController is present.
1137
1138         * UIProcess/qt/QtWebPageEventHandler.cpp:
1139         (WebKit::QtWebPageEventHandler::handleInputEvent):
1140         (WebKit::QtWebPageEventHandler::doneWithTouchEvent):
1141
1142 2012-10-10  Zeno Albisser  <zeno@webkit.org>
1143
1144         [Qt] ProcessLauncherQt should use QStringLiteral for serviceName.
1145         https://bugs.webkit.org/show_bug.cgi?id=98398
1146
1147         QString(const char*) is deprecated, we should use QStringLiteral instead.
1148
1149         Reviewed by Kenneth Rohde Christiansen.
1150
1151         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
1152         (WebKit::ProcessLauncher::launchProcess):
1153
1154 2012-10-10  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1155
1156         [EFL][WK2] Add History callbacks API
1157         https://bugs.webkit.org/show_bug.cgi?id=98594
1158
1159         Reviewed by Kenneth Rohde Christiansen.
1160
1161         Added History callbacks API to Ewk Context. Added unit tests.
1162
1163         * PlatformEfl.cmake:
1164         * UIProcess/API/efl/EWebKit2.h:
1165         * UIProcess/API/efl/ewk_context.cpp:
1166         (_Ewk_Context):
1167         (_Ewk_Context::_Ewk_Context):
1168         (ewk_context_history_callbacks_set): New public function which lets the client to set History callbacks.
1169         (ewk_context_history_client_get):
1170         (ewk_context_add_visited_link): New public function to mark a URL as visited link.
1171         * UIProcess/API/efl/ewk_context.h:
1172         * UIProcess/API/efl/ewk_context_history_client.cpp: Added.
1173         (getEwkHistoryDelegate):
1174         (didNavigateWithNavigationData):
1175         (didPerformClientRedirect):
1176         (didPerformServerRedirect):
1177         (didUpdateHistoryTitle):
1178         (populateVisitedLinks):
1179         (ewk_context_history_client_attach):
1180         * UIProcess/API/efl/ewk_context_history_client_private.h: Added.
1181         * UIProcess/API/efl/ewk_context_private.h:
1182         * UIProcess/API/efl/ewk_navigation_data.cpp: Added.
1183         (_Ewk_Navigation_Data):
1184         (_Ewk_Navigation_Data::_Ewk_Navigation_Data):
1185         (_Ewk_Navigation_Data::~_Ewk_Navigation_Data):
1186         (ewk_navigation_data_ref):
1187         (ewk_navigation_data_unref):
1188         (ewk_navigation_data_title_get):
1189         (ewk_navigation_data_original_request_get):
1190         (ewk_navigation_data_url_get):
1191         (ewk_navigation_data_new):
1192         * UIProcess/API/efl/ewk_navigation_data.h: Added.
1193         * UIProcess/API/efl/ewk_navigation_data_private.h: Added.
1194         * UIProcess/API/efl/ewk_view.cpp:
1195         (addToPageViewMap):
1196         (removeFromPageViewMap):
1197         (_ewk_view_smart_del):
1198         (_ewk_view_initialize):
1199         (ewk_view_from_page_get):
1200         * UIProcess/API/efl/ewk_view_private.h:
1201         * UIProcess/API/efl/tests/test_ewk2_context_history_delegate.cpp: Added.
1202         (httpServer):
1203         (navigateWithNavigationData):
1204         (performClientRedirect):
1205         (performServerRedirect):
1206         (updateHistoryTitle):
1207         (populateVisitedLinks):
1208         (onLoadFinishedForRedirection):
1209         (serverCallbackRedirection):
1210         (TEST_F):
1211
1212 2012-10-09  Byungwoo Lee  <bw80.lee@samsung.com>
1213
1214         [EFL][WK2] Change parameter and return type of loadUrlSync().
1215         https://bugs.webkit.org/show_bug.cgi?id=97920
1216
1217         Reviewed by Gyuyoung Kim.
1218
1219         loadUrlSync() uses waitUntilLoadFinished() internally, and it has
1220         a parameter and return value for timeout.
1221         To set and check timeout, loadUrlSync() should have those.
1222
1223         A parameter for timeout interval is added to loadUrlSync() and it
1224         returns the result of waitUntilLoadFinished() for checking timeout.
1225
1226         And I added codes to check the result of all the LoadUrlSync()
1227         function calls with ASSERT_TRUE() macro.
1228
1229         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1230         (EWK2UnitTest::EWK2UnitTestBase::loadUrlSync):
1231         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
1232         (EWK2UnitTestBase):
1233         * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
1234         (TEST_F):
1235         * UIProcess/API/efl/tests/test_ewk2_context.cpp:
1236         (TEST_F):
1237         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
1238         (TEST_F):
1239         * UIProcess/API/efl/tests/test_ewk2_intents.cpp:
1240         (TEST_F):
1241         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1242         (TEST_F):
1243
1244 2012-10-09  Byungwoo Lee  <bw80.lee@samsung.com>
1245
1246         [EFL][WK2] Move timeout callback to the CallbackDataTimer class.
1247         https://bugs.webkit.org/show_bug.cgi?id=97861
1248
1249         Reviewed by Gyuyoung Kim.
1250
1251         Timeout callbacks for waitUntil{LoadFinished,TitleChanged,URIChanged}
1252         can be moved to the CallbackDataTimer class.
1253
1254         Moved the callback implementation to the CallbackDataTimer class.
1255
1256         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1257         (EWK2UnitTest::CallbackDataTimer::CallbackDataTimer):
1258         (CallbackDataTimer):
1259         (EWK2UnitTest::CallbackDataTimer::timeOutCallback):
1260         (EWK2UnitTest::CallbackDataExpectedValue::CallbackDataExpectedValue):
1261         (EWK2UnitTest::EWK2UnitTestBase::waitUntilLoadFinished):
1262         (EWK2UnitTest::EWK2UnitTestBase::waitUntilTitleChangedTo):
1263         (EWK2UnitTest::EWK2UnitTestBase::waitUntilURIChangedTo):
1264
1265 2012-10-09  Jian Li  <jianli@chromium.org>
1266
1267         Update the CSS property used to support draggable regions.
1268         https://bugs.webkit.org/show_bug.cgi?id=97156
1269
1270         Reviewed by Adam Barth.
1271
1272         The CSS property to support draggable regions, guarded under
1273         WIDGET_REGION is now disabled from Mac WebKit, in order not to cause
1274         confusion with DASHBOARD_SUPPORT feature.
1275
1276         Also update the code to use the new name annotatedRegions to work for
1277         both features.
1278
1279         * Configurations/FeatureDefines.xcconfig: Disable WIDGET_REGION feature.
1280         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Rename dashboardRegions to annotatedRegions.
1281         (WebKit::WebChromeClient::annotatedRegionsChanged):
1282         * WebProcess/WebCoreSupport/WebChromeClient.h: Rename dashboardRegions to annotatedRegions.
1283         (WebChromeClient):
1284
1285 2012-10-09  Sheriff Bot  <webkit.review.bot@gmail.com>
1286
1287         Unreviewed, rolling out r130811 and r130821.
1288         http://trac.webkit.org/changeset/130811
1289         http://trac.webkit.org/changeset/130821
1290         https://bugs.webkit.org/show_bug.cgi?id=98831
1291
1292         Broke date-suggestion-picker-appearance-with-scroll-bar.html
1293         (Requested by abarth|gardening on #webkit).
1294
1295         * Shared/WebRenderObject.cpp:
1296         (WebKit::WebRenderObject::WebRenderObject):
1297         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1298         (WebKit::screenRectOfContents):
1299
1300 2012-10-09  Jon Lee  <jonlee@apple.com>
1301
1302         [WK2] Have plugins render offscreen to capture snapshot
1303         https://bugs.webkit.org/show_bug.cgi?id=98326
1304         <rdar://problem/12426658>
1305
1306         Reviewed by Simon Fraser.
1307
1308         Keep the plugin rendering without compositing to easily grab the snapshot.
1309
1310         PluginView now has two variables referring to snapshots, but are unrelated. The timer
1311         is used to capture a snapshot that acts as a poster for a plugin. The ShareableBitmap
1312         variable m_snapshot is used whenever the plugin paints in software, to avoid side effects
1313         should the plugin run JS during painting.
1314
1315         * WebProcess/Plugins/PluginView.cpp:
1316         (WebKit): Add a named constant for the time delay before a snapshot is taken.
1317         (WebKit::PluginView::PluginView): Initialize a 3-second timer to get the snapshot.
1318         (WebKit::PluginView::~PluginView): Refactor part of the destructor code out into
1319         destroyPluginAndReset() for reuse.
1320         (WebKit::PluginView::destroyPluginAndReset): Contains part of the destructor code.
1321         In addition to destroying the plugin, the destructor cancels pending loads and streams.
1322         (WebKit::PluginView::didInitializePlugin): If the plugin is in a state where it needs
1323         to generate or display a poster, don't setup the compositing layer and start the timer.
1324         (WebKit::PluginView::paint): Avoid painting if the plugin is not running.
1325         (WebKit::PluginView::invalidateRect): Avoid painting if the plugin is not running.
1326         (WebKit::PluginView::isAcceleratedCompositingEnabled): Don't enable accelerated compositing
1327         until the plugin is running.
1328         (WebKit::PluginView::pluginSnapshotTimerFired): When the timer fires, get a snapshot, generate
1329         an Image that WebCore can render, and destroy the plugin.
1330
1331         Rename m_snapshot to m_transientPaintingSnapshot.
1332         * WebProcess/Plugins/PluginView.h:
1333         * WebProcess/Plugins/PluginView.cpp:
1334         (WebKit::PluginView::paint):
1335         (WebKit::PluginView::notifyWidget):
1336         (WebKit::PluginView::pluginSnapshotTimerFired):
1337
1338 2012-10-09  Rik Cabanier  <cabanier@adobe.com>
1339
1340         Add missing compile flag for compositing
1341         https://bugs.webkit.org/show_bug.cgi?id=98681
1342
1343         Reviewed by Dirk Schulze.
1344
1345         This flag is needed in case there is a difference in API
1346         when compositing is enabled
1347
1348         * Configurations/FeatureDefines.xcconfig:
1349
1350 2012-10-09  Sheriff Bot  <webkit.review.bot@gmail.com>
1351
1352         Unreviewed, rolling out r130680.
1353         http://trac.webkit.org/changeset/130680
1354         https://bugs.webkit.org/show_bug.cgi?id=98720
1355
1356         this patch has a typo so was ineffective (Requested by
1357         cabanier on #webkit).
1358
1359         * Configurations/FeatureDefines.xcconfig:
1360
1361 2012-10-09  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
1362
1363         [EFL][WK2] Inform the PageProxy about visibility changes when the view is shown/hidden.
1364         https://bugs.webkit.org/show_bug.cgi?id=98757
1365
1366         Reviewed by Kenneth Rohde Christiansen.
1367
1368         SVN r130720 exposed a bug in our code: the PageProxy is not
1369         notified when one calls evas_object_show() or evas_object_hide()
1370         on the view, so the visibility it has when the WebPageProxy is
1371         constructed remained set forever.
1372
1373         This made the ewk_context_vibration_client_callbacks_set unit test
1374         start running forever, because WebPageProxy's constructor now sets
1375         the page's visibility to hidden by the default for us, since it is
1376         called from within ewk_view_smart_add() and before
1377         evas_object_show().
1378
1379         We now listen to the EVAS_CALLBACK_SHOW and EVAS_CALLBACK_HIDE
1380         callbacks and update the WebPageProxy accordingly. Note that we
1381         could not do this from the smart_show and smart_hide functions we
1382         already had, since they are called before the object's actual
1383         visibility is updated.
1384
1385         * UIProcess/API/efl/ewk_view.cpp:
1386         (_ewk_view_on_show):
1387         (_ewk_view_on_hide):
1388         (_ewk_view_smart_add):
1389
1390 2012-10-09  Simon Pena  <spena@igalia.com>
1391
1392         [GTK] Add support for running JavaScript from GResources
1393         https://bugs.webkit.org/show_bug.cgi?id=98488
1394
1395         Reviewed by Carlos Garcia Campos.
1396
1397         GResources allow embedding certain resources, frequently used, in a "bundle"
1398         which can be kept separated or stored in the binary. This patch adds
1399         support for running JavaScript from GResources.
1400
1401         For this, methods run_javascript_from_gresource and
1402         run_javascript_from_gresource_finish are added, which load the resource
1403         asynchronously and, when it is ready, run the JavaScript.
1404
1405         * UIProcess/API/gtk/WebKitWebView.cpp: Include the new methods.
1406         (resourcesStreamReadCallback):
1407         (webkit_web_view_run_javascript_from_gresource):
1408         (webkit_web_view_run_javascript_from_gresource_finish):
1409         * UIProcess/API/gtk/WebKitWebView.h:
1410         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Include the new
1411         methods in the documentation.
1412         * UIProcess/API/gtk/tests/GNUmakefile.am: Add the test resources to the
1413         build infrastructure.
1414         * UIProcess/API/gtk/tests/TestMain.cpp: Register the resources in the tests,
1415         so that they can be accessed in all of them.
1416         (register_gresource):
1417         (main):
1418         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Test the
1419         run_javascript_from_gresource method.
1420         (testWebViewRunJavaScript):
1421         * UIProcess/API/gtk/tests/WebViewTest.cpp: Add a method for testing the
1422         new run_javascript_from_gresource method.
1423         (runJavaScriptFromGResourceReadyCallback):
1424         (WebViewTest::runJavaScriptFromGResourceAndWaitUntilFinished):
1425         * UIProcess/API/gtk/tests/WebViewTest.h:
1426         * UIProcess/API/gtk/tests/resources/webkit2gtk-tests.gresource.xml: Added.
1427         Resource bundle containing the resources.
1428         * UIProcess/API/gtk/tests/resources/webkit2gtk-tests.test.js: Added.
1429         Example JavaScript file to test the GResources support.
1430
1431
1432 2012-10-08  Kiran Muppala  <cmuppala@apple.com>
1433
1434         Throttle DOM timers on hidden pages.
1435         https://bugs.webkit.org/show_bug.cgi?id=98474
1436
1437         Reviewed by Maciej Stachowiak.
1438
1439         Add HIDDEN_PAGE_DOM_TIMER_THROTTLING feature define.  Use existing code of
1440         PAGE_VISIBILITY_API to detect changes to page visibility state.
1441
1442         * Configurations/FeatureDefines.xcconfig:
1443         * UIProcess/WebPageProxy.cpp:
1444         (WebKit::WebPageProxy::WebPageProxy):
1445         Check visibility state on construction.
1446         (WebKit::WebPageProxy::initializeWebPage):
1447         Send initial visibility state message if HIDDEN_PAGE_DOM_TIMER_THROTTLING
1448         is enabled or if PAGE_VISIBILITY_API is enabled.
1449         (WebKit::WebPageProxy::viewStateDidChange):
1450         When PAGE_VISIBILITY_API is not enabled, compare new visibility against
1451         WebPageProxy::m_isVisible, to minimize number of messages sent.
1452         Remove unnecessary second call to PageClient::isViewVisible for updating
1453         visibility state.
1454
1455         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1456         (WebKit::InjectedBundle::setPageVisibilityState):
1457         WebKitTestRunner uses this method to implement testRunner.setPageVisibility(),
1458         hence enable it for testing hidden page timer throttling as well.
1459
1460         * WebProcess/WebPage/WebPage.cpp:
1461         (WebKit):
1462         (WebKit::WebPage::setVisibilityState):
1463         Ensure Page::setVisibilityState is called either if PAGE_VISIBILITY_API is
1464         enabled or if HIDDEN_PAGE_DOM_TIMER_THROTTLING is enabled.
1465
1466         * WebProcess/WebPage/WebPage.h:
1467         (WebPage):
1468         * WebProcess/WebPage/WebPage.messages.in:
1469
1470 2012-10-08  Simon Fraser  <simon.fraser@apple.com>
1471
1472         Try to fix Windows build by exporting Frame::layerTreeAsText().
1473
1474         * win/WebKit2.def:
1475
1476 2012-10-08  Rik Cabanier  <cabanier@adobe.com>
1477
1478         Add missing compile flag for compositing
1479         https://bugs.webkit.org/show_bug.cgi?id=98681
1480
1481         Reviewed by Dirk Schulze.
1482
1483         This flag is needed in case there is a difference in API
1484         when compositing is enabled
1485
1486         * Configurations/FeatureDefines.xcconfig:
1487
1488 2012-10-08  Christophe Dumez  <christophe.dumez@intel.com>
1489
1490         [EFL][WK2] EWK2UnitTestBase.ewk_cookie_manager_accept_policy unit test is failing
1491         https://bugs.webkit.org/show_bug.cgi?id=98663
1492
1493         Reviewed by Laszlo Gombos.
1494
1495         EWK2UnitTestBase.ewk_cookie_manager_accept_policy unit test was
1496         failing because the elements of a list were checked in a given
1497         order but the list was not sorted beforehand.
1498
1499         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
1500         (sortHostNames):
1501         (TEST_F):
1502
1503 2012-10-08  Jinwoo Song  <jinwoo7.song@samsung.com>
1504
1505         [EFL][WK2] Avoid useless converting to WKPage
1506         https://bugs.webkit.org/show_bug.cgi?id=98516
1507
1508         Reviewed by Eric Seidel.
1509
1510         Use priv->pageProxy->findString() and priv->pageProxy->hideFindUI()
1511         to avoid useless converting to WK.
1512
1513         * UIProcess/API/efl/ewk_view.cpp:
1514         (ewk_view_text_find):
1515         (ewk_view_text_find_highlight_clear):
1516
1517 2012-10-08  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
1518
1519         [WK2][WTR] WebKitTestRunner needs testRunner.dispatchPendingLoadRequests
1520         https://bugs.webkit.org/show_bug.cgi?id=98638
1521
1522         Reviewed by Eric Seidel.
1523
1524         Add implementation for testRunner.dispatchPendingLoadRequests in
1525         WebKitTestRunner.
1526
1527         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1528         (WKBundleDispatchPendingLoadRequests):
1529         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1530         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1531         (WebKit::InjectedBundle::dispatchPendingLoadRequests):
1532         (WebKit):
1533         * WebProcess/InjectedBundle/InjectedBundle.h:
1534         (InjectedBundle):
1535
1536 2012-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1537
1538         [GTK] Add a setting to enable/disable smooth scrolling to WebKit2 GTK+ API
1539         https://bugs.webkit.org/show_bug.cgi?id=98646
1540
1541         Reviewed by Xan Lopez.
1542
1543         * UIProcess/API/gtk/WebKitSettings.cpp:
1544         (webKitSettingsSetProperty): Implement setter for new property.
1545         (webKitSettingsGetProperty): Implement getter for new property.
1546         (webkit_settings_class_init): Add new property
1547         enable-smooth-scrolling.
1548         (webkit_settings_get_enable_smooth_scrolling):
1549         (webkit_settings_set_enable_smooth_scrolling):
1550         * UIProcess/API/gtk/WebKitSettings.h:
1551         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
1552         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
1553         (testWebKitSettings): Test smooth scrolling setting API.
1554
1555 2012-10-08  Christophe Dumez  <christophe.dumez@intel.com>
1556
1557         [EFL][WK2] Use URL instead of URI in the API
1558         https://bugs.webkit.org/show_bug.cgi?id=98643
1559
1560         Reviewed by Kenneth Rohde Christiansen.
1561
1562         Use URL instead of URI in WebKit2 EFL API. This change
1563         was discussed on the mailing list and aims at making
1564         the API more consistent.
1565
1566         * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
1567         (_Ewk_Back_Forward_List_Item):
1568         (ewk_back_forward_list_item_url_get):
1569         (ewk_back_forward_list_item_original_url_get):
1570         * UIProcess/API/efl/ewk_back_forward_list_item.h:
1571         * UIProcess/API/efl/ewk_context.cpp:
1572         (ewk_context_url_scheme_register):
1573         * UIProcess/API/efl/ewk_context.h:
1574         * UIProcess/API/efl/ewk_context_download_client.cpp:
1575         (decideDestinationWithSuggestedFilename):
1576         * UIProcess/API/efl/ewk_download_job.h:
1577         * UIProcess/API/efl/ewk_resource_private.h:
1578         * UIProcess/API/efl/ewk_view.cpp:
1579         (_Ewk_View_Private_Data):
1580         (ewk_view_url_update):
1581         (ewk_view_url_set):
1582         (ewk_view_url_get):
1583         (ewk_view_reload):
1584         (ewk_view_reload_bypass_cache):
1585         (ewk_view_load_finished):
1586         (ewk_view_load_provisional_redirect):
1587         (ewk_view_load_provisional_started):
1588         (ewk_view_html_string_load):
1589         * UIProcess/API/efl/ewk_view.h:
1590         * UIProcess/API/efl/ewk_view_loader_client.cpp:
1591         (didSameDocumentNavigationForFrame):
1592         * UIProcess/API/efl/ewk_view_private.h:
1593         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1594         (EWK2UnitTest::EWK2UnitTestBase::loadUrlSync):
1595         (EWK2UnitTest::onURLChanged):
1596         (EWK2UnitTest::timeOutWhileWaitingUntilURLChangedTo):
1597         (EWK2UnitTest::EWK2UnitTestBase::waitUntilURLChangedTo):
1598         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
1599         (EWK2UnitTestBase):
1600         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp:
1601         (EWK2UnitTestServer::EWK2UnitTestServer):
1602         (EWK2UnitTestServer::~EWK2UnitTestServer):
1603         (EWK2UnitTestServer::getURLForPath):
1604         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.h:
1605         (EWK2UnitTestServer):
1606         * UIProcess/API/efl/tests/resources/redirect_url_to_default.html: Renamed from Source/WebKit2/UIProcess/API/efl/tests/resources/redirect_uri_to_default.html.
1607         * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
1608         (checkItem):
1609         (urlFromTitle):
1610         * UIProcess/API/efl/tests/test_ewk2_context.cpp:
1611         (TEST_F):
1612         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
1613         (TEST_F):
1614         * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
1615         (TEST_F):
1616         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
1617         (TEST_F):
1618         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1619         (TEST_F):
1620
1621 2012-10-08  Zoltan Horvath  <zoltan@webkit.org>
1622
1623         [Qt] r122720 causes performance regression with DirectFB on ARMv7
1624         https://bugs.webkit.org/show_bug.cgi?id=97548
1625
1626         Reviewed by Jocelyn Turcotte.
1627
1628         Revert the rest of r122720. This change modifies the NativeImagePtr from QImage* to QPixmap*.
1629
1630         Covered by existing tests.
1631
1632         * Shared/qt/ShareableBitmapQt.cpp:
1633         (WebKit::ShareableBitmap::createImage):
1634         * UIProcess/qt/QtWebIconDatabaseClient.cpp:
1635         (WebKit::QtWebIconDatabaseClient::iconImageForPageURL):
1636         * WebProcess/WebCoreSupport/qt/WebDragClientQt.cpp:
1637         (WebKit::convertQPixmapToShareableBitmap):
1638         (WebKit::WebDragClient::startDrag):
1639         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1640         (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
1641
1642 2012-10-08  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1643
1644         Unreviewed build fix after r130630
1645
1646         Explicit convertion is required from QSizeF to FloatSize.
1647
1648         * UIProcess/API/qt/qquickwebview.cpp:
1649         (QQuickWebViewLegacyPrivate::updateViewportSize):
1650
1651 2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1652
1653         [Qt] Fix the mouse hover events transformation when devicePixelRatio != 1
1654         https://bugs.webkit.org/show_bug.cgi?id=98429
1655
1656         Reviewed by Kenneth Rohde Christiansen.
1657
1658         This prevents the events from being transformed two or three times.
1659         This is only noticeable in desktop mode.
1660
1661         * UIProcess/qt/QtWebPageEventHandler.cpp:
1662         (WebKit::QtWebPageEventHandler::handleHoverLeaveEvent):
1663         (WebKit::QtWebPageEventHandler::handleHoverMoveEvent):
1664
1665 2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1666
1667         [Qt] Apply QQuickWebViewExperimental::devicePixelRatio to the desktop mode as well
1668         https://bugs.webkit.org/show_bug.cgi?id=98428
1669
1670         Reviewed by Kenneth Rohde Christiansen.
1671
1672         This is handled by the PageViewportController when in flickable mode.
1673
1674         * UIProcess/API/qt/qquickwebview.cpp:
1675         (QQuickWebViewLegacyPrivate::updateViewportSize):
1676
1677 2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1678
1679         [Qt] Prevent the PageViewportController from affecting the viewport in desktop mode
1680         https://bugs.webkit.org/show_bug.cgi?id=98427
1681
1682         Reviewed by Kenneth Rohde Christiansen.
1683
1684         QQuickFlickable isn't tightly bound to it anymore, we can avoid creating it
1685         completely in this case.
1686
1687         * UIProcess/API/qt/qquickwebview.cpp:
1688         (QQuickWebViewFlickablePrivate::onComponentComplete):
1689         * UIProcess/API/qt/qquickwebview_p_p.h:
1690         (QQuickWebViewPrivate::onComponentComplete):
1691         (QQuickWebViewPrivate::viewportController):
1692         (QQuickWebViewPrivate):
1693         (QQuickWebViewFlickablePrivate::viewportController):
1694         (QQuickWebViewFlickablePrivate):
1695         * UIProcess/qt/QtPageClient.cpp:
1696         (WebKit::QtPageClient::didRenderFrame):
1697         (WebKit::QtPageClient::didChangeContentsSize):
1698         (WebKit::QtPageClient::pageTransitionViewportReady):
1699         * UIProcess/qt/QtWebPageLoadClient.cpp:
1700         (WebKit::QtWebPageLoadClient::didCommitLoad):
1701
1702 2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1703
1704         [Qt] Fix a QSocketNotifier warning at startup
1705         https://bugs.webkit.org/show_bug.cgi?id=98411
1706
1707         Reviewed by Simon Hausmann.
1708
1709         The actual warning:
1710         QSocketNotifier: socket notifiers cannot be enabled from another thread
1711
1712         The problem was that QSocketNotifier::setEnabled was called on the main thread
1713         after moveToThread was called. This hasn't had any effect since Connection
1714         would dispatch a readyReadHandler call right after which would then call
1715         setEnabled again from the correct thread from ~SocketNotifierResourceGuard.
1716
1717         Replace the call with a queued invoke to shut the warning.
1718
1719         * Platform/qt/WorkQueueQt.cpp:
1720         (WorkQueue::registerSocketEventHandler):
1721
1722 2012-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1723
1724         [GTK] Test /webkit2/WebKitWebView/populate-menu asserts in debug bots
1725         https://bugs.webkit.org/show_bug.cgi?id=98507
1726
1727         Reviewed by Martin Robinson.
1728
1729         Make sure we retain the page URL before asking for the icon.
1730
1731         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
1732         (getIconSurfaceSynchronously): Retain the page URL before asking
1733         for the icon, and release it if we fail to get an icon.
1734         (processPendingIconsForPageURL): Renamed to make it clear it
1735         receives a Sring and not a char* and moved
1736         getIconSurfaceSynchronously() call out of the loop to call it only
1737         once even if there are multiple requests pending.
1738         (iconDataReadyForPageURLCallback): Do not retain the page URL
1739         here.
1740
1741 2012-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1742
1743         [GTK] Don't use the C API internally in WebKitWebContext
1744         https://bugs.webkit.org/show_bug.cgi?id=96768
1745
1746         Reviewed by Martin Robinson.
1747
1748         Using the C++ classes directly instead of the C API wrappers we
1749         avoid a lot of toImpl/toAPI casts, string conversions and
1750         allocations. The code is also a lot simpler and easier to read.
1751
1752         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
1753         (didStart):
1754         (didReceiveResponse):
1755         (didReceiveData):
1756         (decideDestinationWithSuggestedFilename):
1757         (didCreateDestination):
1758         (didFail):
1759         (didCancel):
1760         (didFinish):
1761         (attachDownloadClientToContext):
1762         * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
1763         (attachRequestManagerClientToContext):
1764         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
1765         (registerSecurityPolicyForURIScheme):
1766         * UIProcess/API/gtk/WebKitWebContext.cpp:
1767         (_WebKitWebContextPrivate):
1768         (createDefaultWebContext):
1769         (webkit_web_context_set_cache_model):
1770         (webkit_web_context_get_cache_model):
1771         (webkit_web_context_clear_cache):
1772         (webkit_web_context_download_uri):
1773         (webkit_web_context_get_cookie_manager):
1774         (webkit_web_context_get_favicon_database_directory):
1775         (webkit_web_context_get_favicon_database):
1776         (webkit_web_context_set_additional_plugins_directory):
1777         (webkitWebContextGetPluginThread):
1778         (webkit_web_context_register_uri_scheme):
1779         (webkitWebContextGetOrCreateDownload):
1780         (webkitWebContextRemoveDownload):
1781         (webkitWebContextGetContext):
1782         (webkitWebContextGetRequestManager):
1783         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
1784         * UIProcess/API/gtk/WebKitWebView.cpp:
1785         (webkitWebViewConstructed):
1786
1787 2012-10-07  Kangil Han  <kangil.han@samsung.com>
1788
1789         [EFL][WK2] Fix unused parameter compile warning.
1790         https://bugs.webkit.org/show_bug.cgi?id=98610
1791
1792         Reviewed by Laszlo Gombos.
1793
1794         Fixed unused parameter compile warning by removing initiatingPageRef parameter name.
1795
1796         * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
1797         (didReceiveURIRequest):
1798
1799 2012-10-07  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1800
1801         Rename first/second to key/value in HashMap iterators
1802         https://bugs.webkit.org/show_bug.cgi?id=82784
1803
1804         Reviewed by Eric Seidel.
1805
1806         * Platform/CoreIPC/ArgumentCoders.h:
1807         * Platform/CoreIPC/Connection.cpp:
1808         (CoreIPC::Connection::SyncMessageState::getOrCreate):
1809         (CoreIPC::Connection::waitForMessage):
1810         (CoreIPC::Connection::processIncomingMessage):
1811         * Platform/gtk/WorkQueueGtk.cpp:
1812         (WorkQueue::registerEventSourceHandler):
1813         (WorkQueue::unregisterEventSourceHandler):
1814         * Platform/mac/WorkQueueMac.cpp:
1815         (WorkQueue::unregisterMachPortEventHandler):
1816         * Shared/Plugins/NPRemoteObjectMap.cpp:
1817         (WebKit::NPRemoteObjectMap::pluginDestroyed):
1818         * Shared/UserMessageCoders.h:
1819         (WebKit::UserMessageEncoder::baseEncode):
1820         * Shared/WebPreferencesStore.cpp:
1821         (WebKit::valueForKey):
1822         (WebKit::WebPreferencesStore::getBoolValueForKey):
1823         * Shared/mac/WebCoreArgumentCodersMac.mm:
1824         (CoreIPC::::decode):
1825         * Shared/qt/ArgumentCodersQt.cpp:
1826         (CoreIPC::::decode):
1827         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
1828         (CoreIPC::::decode):
1829         * UIProcess/API/efl/ewk_back_forward_list.cpp:
1830         (_Ewk_Back_Forward_List::~_Ewk_Back_Forward_List):
1831         * UIProcess/API/efl/ewk_context.cpp:
1832         (_Ewk_Context::~_Ewk_Context):
1833         * UIProcess/API/efl/ewk_view.cpp:
1834         (_ewk_view_priv_loading_resources_clear):
1835         * UIProcess/API/gtk/WebKitWebView.cpp:
1836         (webkit_web_view_get_subresources):
1837         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
1838         (webkitWebViewBaseContainerForall):
1839         * UIProcess/API/mac/WKPrintingView.mm:
1840         (-[WKPrintingView _expectedPreviewCallbackForRect:]):
1841         (pageDidDrawToPDF):
1842         (-[WKPrintingView _drawPreview:]):
1843         * UIProcess/API/mac/WKView.mm:
1844         (commandNameForSelector):
1845         (-[WKView validateUserInterfaceItem:]):
1846         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
1847         (WebKit::CoordinatedBackingStore::updateTile):
1848         (WebKit::CoordinatedBackingStore::texture):
1849         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
1850         (WebKit::CoordinatedBackingStore::commitTileOperations):
1851         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
1852         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
1853         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1854         (WebKit::LayerTreeRenderer::adjustPositionForFixedLayers):
1855         (WebKit::LayerTreeRenderer::syncCanvas):
1856         (WebKit::LayerTreeRenderer::setLayerChildren):
1857         (WebKit::LayerTreeRenderer::setLayerFilters):
1858         (WebKit::LayerTreeRenderer::setLayerState):
1859         (WebKit::LayerTreeRenderer::assignImageToLayer):
1860         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
1861         (WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests):
1862         * UIProcess/InspectorServer/WebInspectorServer.cpp:
1863         (WebKit::WebInspectorServer::~WebInspectorServer):
1864         (WebKit::WebInspectorServer::registerPage):
1865         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
1866         (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
1867         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
1868         (WebKit::WebInspectorServer::buildPageList):
1869         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
1870         (WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests):
1871         * UIProcess/Plugins/PluginProcessProxy.cpp:
1872         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
1873         * UIProcess/WebContext.cpp:
1874         (WebKit::createDictionaryFromHashMap):
1875         * UIProcess/WebIconDatabase.cpp:
1876         (WebKit::WebIconDatabase::didFinishURLImport):
1877         * UIProcess/WebIntentData.cpp:
1878         (WebKit::WebIntentData::extras):
1879         * UIProcess/WebProcessProxy.cpp:
1880         (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
1881         (WebKit::WebProcessProxy::addBackForwardItem):
1882         (WebKit::WebProcessProxy::frameCountInPage):
1883         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1884         (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
1885         (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
1886         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1887         (WebKit::InjectedBundleNodeHandle::getOrCreate):
1888         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
1889         (WebKit::InjectedBundleRangeHandle::getOrCreate):
1890         * WebProcess/InjectedBundle/InjectedBundleIntent.cpp:
1891         (WebKit::InjectedBundleIntent::extras):
1892         * WebProcess/Notifications/WebNotificationManager.cpp:
1893         (WebKit::WebNotificationManager::policyForOrigin):
1894         (WebKit::WebNotificationManager::show):
1895         (WebKit::WebNotificationManager::clearNotifications):
1896         (WebKit::WebNotificationManager::removeNotificationFromContextMap):
1897         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1898         (WebKit::NPRuntimeObjectMap::invalidate):
1899         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1900         (WebKit::NetscapePlugin::destroyStream):
1901         (WebKit::NetscapePlugin::frameDidFinishLoading):
1902         (WebKit::NetscapePlugin::frameDidFail):
1903         * WebProcess/Plugins/PluginView.cpp:
1904         (WebKit::buildHTTPHeaders):
1905         (WebKit::PluginView::~PluginView):
1906         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1907         (WebCore::CoordinatedGraphicsLayer::layerByID):
1908         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1909         (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
1910         (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
1911         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
1912         (WebKit::WebBackForwardListProxy::removeItem):
1913         * WebProcess/WebPage/mac/WebPageMac.mm:
1914         (WebKit::commandNameForSelectorName):
1915         * WebProcess/WebProcess.cpp:
1916         (WebKit::WebProcess::visitedLinkStateChanged):
1917         (WebKit::WebProcess::allVisitedLinkStateChanged):
1918         (WebKit::WebProcess::focusedWebPage):
1919         (WebKit::WebProcess::createWebPage):
1920         (WebKit::WebProcess::webPageGroup):
1921         (WebKit::fromCountedSetToHashMap):
1922         (WebKit::WebProcess::setTextCheckerState):
1923
1924 2012-10-07  Dan Bernstein  <mitz@apple.com>
1925
1926         Web process XPC services don't have correct version information in their Info.plist files
1927         https://bugs.webkit.org/show_bug.cgi?id=98619
1928
1929         Reviewed by Anders Carlsson.
1930
1931         * WebProcessService/Info.plist: Added CFBundleGetInfoString, and changed
1932         CFBundleShortVersionString and CFBundleVersion to report the source version.
1933         * WebProcessServiceForWebKitDevelopment/Info.plist: Ditto.
1934
1935 2012-10-06  Dan Bernstein  <mitz@apple.com>
1936
1937         WebKit2 part of <rdar://problem/12446507> [mac] WebKit clients cannot change the behavior of text-rendering: auto
1938         https://bugs.webkit.org/show_bug.cgi?id=98601
1939
1940         Reviewed by Darin Adler.
1941
1942         * Shared/WebProcessCreationParameters.cpp:
1943         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): Added initializer for
1944         to shouldEnableKerningAndLigaturesByDefault. The initial value is false.
1945         (WebKit::WebProcessCreationParameters::encode): Added encoding of
1946         shouldEnableKerningAndLigaturesByDefault.
1947         (WebKit::WebProcessCreationParameters::decode): Added decoding of
1948         shouldEnableKerningAndLigaturesByDefault.
1949         * Shared/WebProcessCreationParameters.h:
1950         (WebProcessCreationParameters): Added shouldEnableKerningAndLigaturesByDefault boolean
1951         member variable.
1952         * UIProcess/mac/WebContextMac.mm:
1953         (WebKit::WebContext::platformInitializeWebProcess): Changed to set
1954         shouldEnableKerningAndLigaturesByDefault in the process creation parameters according to
1955         the value of the WebKitKerningAndLigaturesEnabledByDefault user defaults key.
1956         * WebProcess/mac/WebProcessMac.mm:
1957         (WebKit::WebProcess::platformInitializeWebProcess): Added a call to
1958         Font::setDefaultTypesettingFeatures() to enable kerning and ligatures if requested in the
1959         process creation parameters.
1960
1961 2012-10-05  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
1962
1963         [WK2][WTR] WebKitTestRunner needs testRunner.setSerializeHTTPLoads
1964         https://bugs.webkit.org/show_bug.cgi?id=98524
1965
1966         Reviewed by Alexey Proskuryakov.
1967
1968         Add implementation for testRunner.setSerializeHTTPLoads in
1969         WebKitTestRunner.
1970
1971         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1972         (WKBundleSetSerialLoadingEnabled):
1973         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1974         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1975         (WebKit::InjectedBundle::setSerialLoadingEnabled):
1976         (WebKit):
1977         * WebProcess/InjectedBundle/InjectedBundle.h:
1978         (InjectedBundle):
1979
1980 2012-10-05  Sheriff Bot  <webkit.review.bot@gmail.com>
1981
1982         Unreviewed, rolling out r130556 and r130564.
1983         http://trac.webkit.org/changeset/130556
1984         http://trac.webkit.org/changeset/130564
1985         https://bugs.webkit.org/show_bug.cgi?id=98572
1986
1987         The patch wasn't reviewed by a reviewer and it is breaking
1988         Chromium Windows (Requested by jchaffraix on #webkit).
1989
1990         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1991         (InitWebCoreSystemInterface):
1992
1993 2012-10-05  Sam Weinig  <sam@webkit.org>
1994
1995         Set the current working directory to TMPDIR when entering the sandbox in the plug-in process.
1996         Based on a patch by Ivan Krstić.
1997
1998         Reviewed by Anders Carlsson.
1999
2000         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
2001         (enterSandbox):
2002
2003 2012-10-05  Tim Horton  <timothy_horton@apple.com>
2004
2005         [cg] GraphicsContextCG should ask CG whether the shadow offset workaround is required
2006         https://bugs.webkit.org/show_bug.cgi?id=98565
2007         <rdar://problem/12436468>
2008
2009         Reviewed by Simon Fraser.
2010
2011         Add wkCGContextDrawsWithCorrectShadowOffsets.
2012
2013         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2014         (InitWebCoreSystemInterface):
2015
2016 2012-10-04  Eric Carlson  <eric.carlson@apple.com>
2017
2018         Allow ports to override text track rendering style
2019         https://bugs.webkit.org/show_bug.cgi?id=97800
2020         <rdar://problem/12044964>
2021
2022         Reviewed by Silvia Pfeiffer.
2023
2024         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2025         (InitWebCoreSystemInterface): Initialize new WKSI function pointers.
2026
2027 2012-10-05  José Dapena Paz  <jdapena@igalia.com>
2028
2029         [GTK] Add support for creating EGL contexts
2030         https://bugs.webkit.org/show_bug.cgi?id=77921
2031
2032         Reviewed by Martin Robinson.
2033
2034         This patch adds support for EGL, using OpenGL and OpenGL ES 2. Both
2035         options are set up on compile time, with the configure options
2036         --enable-egl and --enable-gles2.
2037
2038         The implementation only adds support for EGL on top of X11, to
2039         isolate the changes to the minimum. More changes should come
2040         later to enable EGL for other targets (as Wayland).
2041
2042         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2043
2044 2012-10-04  Jon Lee  <jonlee@apple.com>
2045
2046         Add a setting to enable plugin snapshotting
2047         https://bugs.webkit.org/show_bug.cgi?id=98319
2048         <rdar://problem/12426480>
2049
2050         Reviewed by Brady Eidson.
2051
2052         Expose plugInSnapshottingEnabled preference to WebKit clients.
2053
2054         * Shared/WebPreferencesStore.h:
2055         (WebKit):
2056         * UIProcess/API/C/WKPreferences.cpp:
2057         (WKPreferencesSetPlugInSnapshottingEnabled):
2058         (WKPreferencesGetPlugInSnapshottingEnabled):
2059         * UIProcess/API/C/WKPreferences.h:
2060         * WebProcess/WebPage/WebPage.cpp:
2061         (WebKit::WebPage::updatePreferences): Update preference based on store.
2062
2063 2012-10-05  Balazs Kelemen  <kbalazs@webkit.org>
2064
2065         [Qt][WK2] Plugins are completely broken with a custom device pixel ratio
2066         https://bugs.webkit.org/show_bug.cgi?id=98518
2067
2068         Reviewed by Kenneth Rohde Christiansen.
2069
2070         Implement painting with scale factor in ShareableBitmap.
2071         The backing store of the plugin are still overscaled in MiniBrowser
2072         with this patch but this is only the effect of the fake device scale
2073         factor defined in qml (1.5). We should probably remove it on desktop.
2074
2075         * Shared/qt/ShareableBitmapQt.cpp:
2076         (WebKit::ShareableBitmap::paint):
2077
2078 2012-10-05  Christophe Dumez  <christophe.dumez@intel.com>
2079
2080         [EFL] Unskip fullscreen unit tests for EwkView
2081         https://bugs.webkit.org/show_bug.cgi?id=98509
2082
2083         Reviewed by Kenneth Rohde Christiansen.
2084
2085         Update 2 fullscreen unit tests for EwkView so that
2086         they don't require a call to ecore_evas_fullscreen_set()
2087         to succeed. ecore_evas_fullscreen_set() does not
2088         seem to work in Xvfb and causes the tests to hang.
2089         With this update, we can now run those tests again.
2090
2091         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2092         (TEST_F):
2093
2094 2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2095
2096         [GTK] Test /webkit2/WebKitPrintOperation/print-errors gives runtime critical warnings
2097         https://bugs.webkit.org/show_bug.cgi?id=98497
2098
2099         Reviewed by Martin Robinson.
2100
2101         The problem is that GTK+ tries to write in the IO channel that has
2102         already been closed.
2103
2104         * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
2105         (WebKit::WebPrintOperationGtk::print): Finish the surface when
2106         printing fails because printing data is invalid.
2107
2108 2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2109
2110         [GTK] Test /webkit2/WebKitWebResource/response fails
2111         https://bugs.webkit.org/show_bug.cgi?id=98511
2112
2113         Reviewed by Martin Robinson.
2114
2115         Do not consider the favicon as a resource for the web resources
2116         unit tests.
2117
2118         * UIProcess/API/gtk/tests/TestResources.cpp:
2119
2120 2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2121
2122         REGRESSION (r129989 - r130019): [WK2] TestResources test is failing
2123         https://bugs.webkit.org/show_bug.cgi?id=98342
2124
2125         Reviewed by Martin Robinson.
2126
2127         Return 404 error in unit tests using a HTTP server for paths not
2128         handled by the test. This way all tests should return now a 404
2129         for /favicon.ico.
2130
2131         * UIProcess/API/gtk/tests/TestBackForwardList.cpp:
2132         (serverCallback):
2133         * UIProcess/API/gtk/tests/TestCookieManager.cpp:
2134         (serverCallback):
2135         * UIProcess/API/gtk/tests/TestLoaderClient.cpp:
2136         (serverCallback):
2137         * UIProcess/API/gtk/tests/TestResources.cpp:
2138         (serverCallback):
2139         * UIProcess/API/gtk/tests/TestSSL.cpp:
2140         (serverCallback):
2141         * UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp:
2142         (serverCallback):
2143         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
2144         (serverCallback):
2145         * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
2146         (serverCallback):
2147
2148 2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2149
2150         [WK2][SOUP] Assertion hit in WebKit::DownloadManager::downloadFinished() when download fails
2151         https://bugs.webkit.org/show_bug.cgi?id=97565
2152
2153         Reviewed by Gustavo Noronha Silva.
2154
2155         Make sure to notify the downlaod client that the response has been
2156         received when the newly created download has already been added to
2157         the DownloadManager downloads map.
2158
2159         * WebProcess/Downloads/soup/DownloadSoup.cpp:
2160         (WebKit::DownloadClient::DownloadClient): Initialize
2161         m_handleResponseLaterID.
2162         (WebKit::DownloadClient::~DownloadClient): Remove the source for
2163         the delayed response notification if it hasn't been triggered.
2164         (WebKit::DownloadClient::didReceiveData): If response hasn't been
2165         handled yet, remove the source for the delayed response
2166         notification and handle the resource before start writing the data
2167         received to the output stream.
2168         (WebKit::DownloadClient::handleResponse): Call
2169         didReceiveResponse() with the delayed response.
2170         (WebKit::DownloadClient::handleResponseLaterCallback): Call
2171         handleResponse().
2172         (WebKit::DownloadClient::handleResponseLater): Schedule an idle
2173         callback to handle the response later, to make sure the download
2174         has been added to the downloads map.
2175         (WebKit::Download::startWithHandle): Call handleResponseLater()
2176         with the given response to handle the response when the download
2177         has been added to the downloads map.
2178
2179 2012-10-05  Jongseok Yang  <js45.yang@samsung.com>
2180
2181         [EFL][WK2] Remove "web" word from ewk_web_error APIs
2182         https://bugs.webkit.org/show_bug.cgi?id=97886
2183
2184         Reviewed by Gyuyoung Kim.
2185
2186         Remove "web" word from ewk_web_error APIs.
2187         "web" word was redundant because "ewk" means "EFL WebKit" and WK APIs for error does not have "web" word.
2188
2189         * PlatformEfl.cmake:
2190         * UIProcess/API/efl/EWebKit2.h:
2191         * UIProcess/API/efl/ewk_context_download_client.cpp:
2192         (didFail):
2193         * UIProcess/API/efl/ewk_cookie_manager.cpp:
2194         (getAcceptPolicyCallback):
2195         (getHostnamesWithCookiesCallback):
2196         * UIProcess/API/efl/ewk_cookie_manager.h:
2197         * UIProcess/API/efl/ewk_download_job_private.h:
2198         * UIProcess/API/efl/ewk_error.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_error.cpp.
2199         (_Ewk_Error):
2200         (_Ewk_Error::_Ewk_Error):
2201         (_Ewk_Error::~_Ewk_Error):
2202         (ewk_error_free):
2203         (ewk_error_type_get):
2204         (ewk_error_url_get):
2205         (ewk_error_code_get):
2206         (ewk_error_description_get):
2207         (ewk_error_cancellation_get):
2208         (ewk_error_new):
2209         * UIProcess/API/efl/ewk_error.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_error.h.
2210         * UIProcess/API/efl/ewk_error_private.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_error_private.h.
2211         * UIProcess/API/efl/ewk_view.cpp:
2212         (ewk_view_resource_load_failed):
2213         (ewk_view_download_job_failed):
2214         (ewk_view_load_error):
2215         (ewk_view_load_provisional_failed):
2216         * UIProcess/API/efl/ewk_view.h:
2217         * UIProcess/API/efl/ewk_view_loader_client.cpp:
2218         (didFailLoadWithErrorForFrame):
2219         (didFailProvisionalLoadWithErrorForFrame):
2220         * UIProcess/API/efl/ewk_view_private.h:
2221         * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
2222         (didFailLoadForResource):
2223         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
2224         (getAcceptPolicyCallback):
2225         (getHostnamesWithCookiesCallback):
2226         * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
2227         (on_download_failed):
2228
2229 2012-10-05  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
2230
2231         [WK2][GTK] WebPageAccessibilityObject leaking
2232         https://bugs.webkit.org/show_bug.cgi?id=98502
2233
2234         Reviewed by Carlos Garcia Campos.
2235
2236         Use GRefPtr on the accessibility object to fix the leak.
2237
2238         * WebProcess/WebPage/WebPage.h:
2239         (WebPage):
2240         * WebProcess/WebPage/gtk/WebPageGtk.cpp:
2241         (WebKit::WebPage::platformInitialize):
2242         (WebKit::WebPage::updateAccessibilityTree):
2243
2244 2012-10-05  Jinwoo Song  <jinwoo7.song@samsung.com>
2245
2246         [EFL][WK2] Add API to count the matching text
2247         https://bugs.webkit.org/show_bug.cgi?id=97873
2248
2249         Reviewed by Gyuyoung Kim.
2250
2251         Add an API, ewk_view_text_matches_count(), to count the matched text in the document.
2252         This API does not highlight the matched text in the document unlike ewk_view_text_find().
2253
2254         ewk_view_text_find() finds the matching text and but also update the UI view,
2255         but some applications may not want to affect the view, and just want to know the count.
2256
2257         * UIProcess/API/efl/ewk_view.cpp:
2258         (ewk_view_text_matches_count):
2259         * UIProcess/API/efl/ewk_view.h:
2260         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2261         (TEST_F):
2262
2263 2012-10-05  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
2264
2265         [WK2][GTK][EFL] standard_output returned by g_spawn_sync must be freed
2266         https://bugs.webkit.org/show_bug.cgi?id=98384
2267
2268         Reviewed by Gyuyoung Kim.
2269
2270         Free the standard_output returned by g_spawn_sync() to avoid
2271         a memory leak.
2272
2273         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
2274         (WebKit::PluginProcessProxy::scanPlugin):
2275
2276 2012-10-05  Jongseok Yang  <js45.yang@samsung.com>
2277
2278         [EFL][WK2] Remove "web" word from ewk_resource APIs
2279         https://bugs.webkit.org/show_bug.cgi?id=97887
2280
2281         Reviewed by Gyuyoung Kim.
2282
2283         Remove "web" word from ewk_web_resource APIs.
2284         "web" word was redundant because "ewk" means "EFL WebKit" and enough to understand the meaning with ewk_resource_XXX.
2285
2286         * PlatformEfl.cmake:
2287         * UIProcess/API/efl/EWebKit2.h:
2288         * UIProcess/API/efl/ewk_resource.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_resource.cpp.
2289         (_Ewk_Resource):
2290         (_Ewk_Resource::_Ewk_Resource):
2291         (_Ewk_Resource::~_Ewk_Resource):
2292         (ewk_resource_ref):
2293         (ewk_resource_unref):
2294         (ewk_resource_url_get):
2295         (ewk_resource_new):
2296         (ewk_resource_main_resource_get):
2297         * UIProcess/API/efl/ewk_resource.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_resource.h.
2298         * UIProcess/API/efl/ewk_resource_private.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_resource_private.h.
2299         * UIProcess/API/efl/ewk_view.cpp:
2300         (_ewk_view_priv_loading_resources_clear):
2301         (ewk_view_resource_load_initiated):
2302         (ewk_view_resource_load_response):
2303         (ewk_view_resource_load_failed):
2304         (ewk_view_resource_load_finished):
2305         (ewk_view_resource_request_sent):
2306         * UIProcess/API/efl/ewk_view.h:
2307         * UIProcess/API/efl/ewk_view_private.h:
2308         * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
2309         (didInitiateLoadForResource):
2310
2311 2012-10-04  Ryuan Choi  <ryuan.choi@samsung.com>
2312
2313         [EFL][WK2] ewk_web_error_free is not a public API
2314         https://bugs.webkit.org/show_bug.cgi?id=98482
2315
2316         Reviewed by Gyuyoung Kim.
2317
2318         Because Ewk_Web_Error is just passed as a parameter of callback function
2319         and maintained internally, ewk_web_error_free should not be a public API.
2320
2321         This patch moves ewk_web_error_free from public header to private header.
2322
2323         * UIProcess/API/efl/ewk_context_download_client.cpp:
2324         * UIProcess/API/efl/ewk_view_loader_client.cpp:
2325         * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
2326         * UIProcess/API/efl/ewk_web_error.cpp:
2327         * UIProcess/API/efl/ewk_web_error.h:
2328         * UIProcess/API/efl/ewk_web_error_private.h:
2329
2330 2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>
2331
2332         [EFL][WK2] Implement window frame callbacks in UIClient
2333         https://bugs.webkit.org/show_bug.cgi?id=98280
2334
2335         Reviewed by Kenneth Rohde Christiansen.
2336
2337         Implement callbacks to set and query window geometry
2338         in EwkView's UIClient.
2339
2340         * UIProcess/API/efl/ewk_view_ui_client.cpp:
2341         (getWindowFrame):
2342         (setWindowFrame):
2343         (ewk_view_ui_client_attach):
2344         * UIProcess/API/efl/tests/resources/window_move_resize.html: Added.
2345         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2346         (windowMoveResizeTimedOut):
2347         (TEST_F): Add corresponding unit test.
2348
2349 2012-10-04  Rik Cabanier  <cabanier@adobe.com>
2350
2351         Turn Compositing on by default in WebKit build
2352         https://bugs.webkit.org/show_bug.cgi?id=98315
2353
2354         Reviewed by Simon Fraser.
2355
2356         enable -webkit-blend-mode on trunk.
2357
2358         * Configurations/FeatureDefines.xcconfig:
2359
2360 2012-10-04  Simon Fraser  <simon.fraser@apple.com>
2361
2362         Fix the Qt build by removing an errant paste at the top of the file.
2363
2364         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2365
2366 2012-10-04  Ryuan Choi  <ryuan.choi@samsung.com>
2367
2368         [EFL][WK2] Add APIs to get/set the frame flattening.
2369         https://bugs.webkit.org/show_bug.cgi?id=95982
2370
2371         Reviewed by Gyuyoung Kim.
2372
2373         Added new APIs and test case to support frame flattening.
2374
2375         * UIProcess/API/efl/ewk_settings.cpp:
2376         (ewk_settings_enable_frame_flattening_set):
2377         (ewk_settings_enable_frame_flattening_get):
2378         * UIProcess/API/efl/ewk_settings.h:
2379         * UIProcess/API/efl/tests/resources/frame_flattening_test.html: Added.
2380         * UIProcess/API/efl/tests/resources/frame_flattening_test_subframe.html: Added.
2381         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2382         (TEST_F):
2383
2384 2012-10-04  Simon Fraser  <simon.fraser@apple.com>
2385
2386         TiledCoreAnimationDrawingArea.mm should not include RenderLayerCompositor.h
2387         https://bugs.webkit.org/show_bug.cgi?id=98471
2388
2389         Reviewed by Dean Jackson.
2390
2391         Remove #import of <WebCore/RenderLayerCompositor.h> from this file.
2392         It is not required.
2393
2394         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2395
2396 2012-10-04  Simon Fraser  <simon.fraser@apple.com>
2397
2398         Final part of "sync" to "flush" renaming
2399         https://bugs.webkit.org/show_bug.cgi?id=98430
2400
2401         Reviewed by Tim Horton.
2402
2403         Change method names on GraphicsLayer and GraphicsLayerClient that
2404         refer to "sync" to use the term "flush" instead, to be consistent
2405         with the rest of the code.
2406
2407         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2408         (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
2409         (WebKit::LayerTreeRenderer::flushLayerChanges):
2410         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2411         (WebKit::LayerTreeRenderer::notifyFlushRequired):
2412         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2413         (WebCore::CoordinatedGraphicsLayer::didChangeLayerState):
2414         (WebCore::CoordinatedGraphicsLayer::didChangeAnimatedProperties):
2415         (WebCore::CoordinatedGraphicsLayer::didChangeChildren):
2416         (WebCore::CoordinatedGraphicsLayer::didChangeFilters):
2417         (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
2418         (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
2419         (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
2420         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
2421         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2422         (CoordinatedGraphicsLayer):
2423         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2424         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
2425         (WebKit::LayerTreeCoordinator::notifyFlushRequired):
2426         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2427         (LayerTreeCoordinator):
2428         * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
2429         (WebKit::LayerTreeHostCA::notifyFlushRequired):
2430         (WebKit::LayerTreeHostCA::flushPendingLayerChanges):
2431         * WebProcess/WebPage/ca/LayerTreeHostCA.h:
2432         (LayerTreeHostCA):
2433         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2434         (WebKit::LayerTreeHostGtk::notifyFlushRequired):
2435         (WebKit::LayerTreeHostGtk::flushPendingLayerChanges):
2436         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
2437         (LayerTreeHostGtk):
2438         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2439         (TiledCoreAnimationDrawingArea):
2440         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2441         (WebKit::TiledCoreAnimationDrawingArea::notifyFlushRequired):
2442         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
2443
2444 2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>
2445
2446         [EFL][WK2] Implement PageClientImpl::isViewVisible()
2447         https://bugs.webkit.org/show_bug.cgi?id=98249
2448
2449         Reviewed by Kenneth Rohde Christiansen.
2450
2451         Implement PageClientImpl::isViewVisible() for EFL port
2452         by calling evas_object_visible_get() on the view.
2453
2454         * UIProcess/API/efl/PageClientImpl.cpp:
2455         (WebKit::PageClientImpl::isViewVisible):
2456
2457 2012-10-04  Alexey Proskuryakov  <ap@apple.com>
2458
2459         Improve initial empty process tracking
2460         https://bugs.webkit.org/show_bug.cgi?id=98458
2461
2462         Reviewed by Sam Weinig.
2463
2464         * UIProcess/WebContext.cpp: (WebKit::WebContext::disconnectProcess):
2465         Unset m_haveInitialEmptyProcess if we no longer do.
2466
2467 2012-10-03  Benjamin Poulain  <bpoulain@apple.com>
2468
2469         [WK2] Support all attributes of GeolocationPosition
2470         https://bugs.webkit.org/show_bug.cgi?id=98212
2471
2472         Reviewed by Sam Weinig.
2473
2474         Add complete support for GeolocationPosition.
2475
2476         * Shared/WebGeolocationPosition.cpp:
2477         (WebKit::WebGeolocationPosition::WebGeolocationPosition):
2478         (WebKit::WebGeolocationPosition::Data::encode):
2479         (WebKit::WebGeolocationPosition::Data::decode):
2480         * Shared/WebGeolocationPosition.h:
2481         (Data):
2482         (WebKit::WebGeolocationPosition::create):
2483         (WebKit::WebGeolocationPosition::canProvideAltitude):
2484         (WebKit::WebGeolocationPosition::altitude):
2485         (WebGeolocationPosition):
2486         (WebKit::WebGeolocationPosition::canProvideAltitudeAccuracy):
2487         (WebKit::WebGeolocationPosition::altitudeAccuracy):
2488         (WebKit::WebGeolocationPosition::canProvideHeading):
2489         (WebKit::WebGeolocationPosition::heading):
2490         (WebKit::WebGeolocationPosition::canProvideSpeed):
2491         (WebKit::WebGeolocationPosition::speed):
2492         WebGeolocationPosition mirror the attributes of WebCore::GeolocationPosition.
2493
2494         * UIProcess/API/C/WKGeolocationPosition.cpp:
2495         (WKGeolocationPositionCreate):
2496         (WKGeolocationPositionCreate_b):
2497         Add a new API exposing all the arguments.
2498
2499         * UIProcess/API/C/WKGeolocationPosition.h:
2500         * WebProcess/Geolocation/WebGeolocationManager.cpp:
2501         (WebKit::WebGeolocationManager::didChangePosition):
2502
2503 2012-10-04  Simon Fraser  <simon.fraser@apple.com>
2504
2505         Standardize on "flush" terminology for compositing layer flushing/syncing
2506         https://bugs.webkit.org/show_bug.cgi?id=98321
2507
2508         Reviewed by Simon Fraser.
2509
2510         Rename compositing-related methods that refer to "syncing" to instead
2511         refer to "flushing".
2512
2513         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2514         (WebKit::WebChromeClient::scheduleCompositingLayerFlush):
2515         * WebProcess/WebCoreSupport/WebChromeClient.h:
2516         (WebChromeClient):
2517         * WebProcess/WebPage/DrawingArea.h:
2518         (DrawingArea):
2519         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2520         (WebKit::DrawingAreaImpl::scheduleCompositingLayerFlush):
2521         * WebProcess/WebPage/DrawingAreaImpl.h:
2522         (DrawingAreaImpl):
2523         * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
2524         (WebKit::LayerTreeHostCA::flushPendingLayerChanges):
2525         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2526         (TiledCoreAnimationDrawingArea):
2527         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2528         (WebKit::TiledCoreAnimationDrawingArea::scheduleCompositingLayerFlush):
2529         (WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
2530         (WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
2531         (WebKit::TiledCoreAnimationDrawingArea::setPageOverlayNeedsDisplay):
2532         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
2533
2534 2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>
2535
2536         [EFL][WK2] Add setting to allow file access from file:// URLs
2537         https://bugs.webkit.org/show_bug.cgi?id=98121
2538
2539         Reviewed by Laszlo Gombos.
2540
2541         Add Ewk setting to set / query permission to access
2542         files from file:// URLs.
2543
2544         * UIProcess/API/efl/ewk_settings.cpp:
2545         (ewk_settings_file_access_from_file_urls_allowed_set):
2546         (ewk_settings_file_access_from_file_urls_allowed_get):
2547         * UIProcess/API/efl/ewk_settings.h:
2548         * UIProcess/API/efl/tests/resources/local_file_access.html: Added.
2549         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2550         (TEST_F): Add unit tests for new ewk setting.
2551
2552 2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>
2553
2554         [EFL] Run unit tests with Xvfb
2555         https://bugs.webkit.org/show_bug.cgi?id=98389
2556
2557         Reviewed by Laszlo Gombos.
2558
2559         * UIProcess/API/efl/ewk_main.cpp:
2560         (ewk_init): Call ecore_evas_shutdown() instead of
2561         edje_shutdown() when ecore_x_init() fails.
2562         (ewk_shutdown): Remove extra call to edje_shutdown().
2563         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2564         (TEST_F): Temporarily disable fullscreen unit tests
2565         until we get them working with Xvfb.
2566
2567 2012-10-04  Balazs Kelemen  <kbalazs@webkit.org>
2568
2569         Don't allow compositing to be disabled in forced compositing mode
2570         https://bugs.webkit.org/show_bug.cgi?id=98048
2571
2572         Reviewed by Jocelyn Turcotte.
2573
2574         Export Settings::setAcceleratedCompositingEnabled because it has been deinlined.
2575
2576         * win/WebKit2.def:
2577         * win/WebKit2CFLite.def:
2578
2579 2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
2580
2581         [Qt] Fix the tst_QQuickWebView::scrollRequest auto test
2582         https://bugs.webkit.org/show_bug.cgi?id=98045
2583
2584         Reviewed by Simon Hausmann.
2585
2586         Relying on QQuickWebViewPrivate::setNeedsDisplay can cause a false positive
2587         emission of the loadVisuallyCommitted signal since this method is also
2588         called when a layer is deleted or when the root layer changes.
2589
2590         Move the signal emission to QQuickWebViewPrivate::didRenderFrame which
2591         is called only after a DidRenderFrame message has been received from the
2592         web process.
2593
2594         * UIProcess/API/qt/qquickwebview.cpp:
2595         (QQuickWebViewPrivate::setNeedsDisplay):
2596         (QQuickWebViewPrivate::didRenderFrame):
2597         * UIProcess/API/qt/qquickwebview_p_p.h:
2598         (QQuickWebViewPrivate):
2599         * UIProcess/qt/QtPageClient.cpp:
2600         (WebKit::QtPageClient::didRenderFrame):
2601
2602 2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>
2603
2604         Regression(r130363): Broke unit tests
2605         https://bugs.webkit.org/show_bug.cgi?id=98341
2606
2607         Reviewed by Gyuyoung Kim.
2608
2609         Fix WebKit2 EFL to use X11 as well.
2610
2611         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
2612         (EWK2UnitTest::EWK2UnitTestBase::SetUp):
2613         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
2614         (EWK2UnitTest::EWK2UnitTestEnvironment::EWK2UnitTestEnvironment):
2615         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
2616         (EWK2UnitTestEnvironment):
2617         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestMain.cpp:
2618         (main):
2619         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2620         (checkFullScreenProperty):
2621
2622 2012-10-03  Christophe Dumez  <christophe.dumez@intel.com>
2623
2624         [EFL] Enable use of X11 in DumpRenderTree / WebKitTestRunner
2625         https://bugs.webkit.org/show_bug.cgi?id=98231
2626
2627         Reviewed by Gyuyoung Kim.
2628
2629         Initialize ecore_x library in ewk_main instead of
2630         WebKitTestRunner since WebKit is using ecore_x
2631         not WebKitTestRunner itself.
2632
2633         * UIProcess/API/efl/ewk_main.cpp:
2634         (ewk_init):
2635         (ewk_shutdown):
2636
2637 2012-10-03  Kangil Han  <kangil.han@samsung.com>
2638
2639         Fix unused parameter compile warnings.
2640         https://bugs.webkit.org/show_bug.cgi?id=98243
2641
2642         Reviewed by Alexey Proskuryakov.
2643
2644         Fixed unused parameter compile warnings by removing parameter names, adding UNUSED_PARAM usage and commenting out.
2645
2646         * PluginProcess/WebProcessConnection.cpp:
2647         (WebKit::WebProcessConnection::createPluginInternal):
2648         * PluginProcess/unix/PluginProcessUnix.cpp:
2649         (WebKit::PluginProcess::platformInitialize):
2650         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2651         (WebKit::JSNPObject::getOwnPropertyNames):
2652         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2653         (WebKit::NPN_RequestRead):
2654         (WebKit::NPN_NewStream):
2655         (WebKit::NPN_Write):
2656         (WebKit::NPN_MemFlush):
2657         (WebKit::NPN_ReloadPlugins):
2658         (WebKit::NPN_GetJavaPeer):
2659         (WebKit::NPN_InvalidateRegion):
2660         (WebKit::NPN_ForceRedraw):
2661         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2662         (WebKit::NetscapePlugin::contentsScaleFactorChanged):
2663         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
2664         (WebKit::NetscapePlugin::platformPostInitializeWindowed):
2665         * WebProcess/Plugins/PluginProxy.cpp:
2666         (WebKit::PluginProxy::contentsScaleFactorChanged):
2667
2668 2012-10-03  Anders Carlsson  <andersca@apple.com>
2669
2670         Plugins are killed after 45 seconds if showing keychain "Allow/Deny" dialog
2671         https://bugs.webkit.org/show_bug.cgi?id=85138
2672         <rdar://problem/11406430>
2673
2674         Reviewed by Andreas Kling.
2675
2676         Remove the watchdog that would kill a plug-in if we've been waiting for a sync reply from it for more than 45 seconds.
2677         It's unlikely that someone is going to wait 45 seconds for Safari to recover from a plug-in hang, and the timeout is
2678         causing problems with plug-ins (see the bugzilla bug for more information).
2679
2680         * Platform/CoreIPC/Connection.cpp:
2681         (CoreIPC::Connection::Connection):
2682         (CoreIPC::Connection::waitForSyncReply):
2683         * Platform/CoreIPC/Connection.h:
2684         (Client):
2685         (Connection):
2686         * PluginProcess/PluginProcess.cpp:
2687         * PluginProcess/PluginProcess.h:
2688         (PluginProcess):
2689         * PluginProcess/WebProcessConnection.cpp:
2690         * PluginProcess/WebProcessConnection.h:
2691         (WebProcessConnection):
2692         * Shared/WebProcessCreationParameters.cpp:
2693         (WebKit::WebProcessCreationParameters::encode):
2694         (WebKit::WebProcessCreationParameters::decode):
2695         * Shared/WebProcessCreationParameters.h:
2696         (WebProcessCreationParameters):
2697         * UIProcess/Plugins/PluginProcessManager.cpp:
2698         * UIProcess/Plugins/PluginProcessManager.h:
2699         (PluginProcessManager):
2700         * UIProcess/Plugins/PluginProcessProxy.cpp:
2701         * UIProcess/Plugins/PluginProcessProxy.h:
2702         (PluginProcessProxy):
2703         * UIProcess/WebConnectionToWebProcess.cpp:
2704         * UIProcess/WebConnectionToWebProcess.h:
2705         (WebConnectionToWebProcess):
2706         * UIProcess/WebProcessProxy.cpp:
2707         * UIProcess/WebProcessProxy.h:
2708         (WebProcessProxy):
2709         * UIProcess/WebProcessProxy.messages.in:
2710         * UIProcess/mac/WebContextMac.mm:
2711         (WebKit::WebContext::platformInitializeWebProcess):
2712         * WebProcess/Plugins/PluginProcessConnection.cpp:
2713         (WebKit::PluginProcessConnection::PluginProcessConnection):
2714         * WebProcess/Plugins/PluginProcessConnection.h:
2715         (PluginProcessConnection):
2716         * WebProcess/WebConnectionToUIProcess.cpp:
2717         * WebProcess/WebConnectionToUIProcess.h:
2718         (WebConnectionToUIProcess):
2719         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2720         (WebKit::WebChromeClient::runJavaScriptAlert):
2721         (WebKit::WebChromeClient::runJavaScriptConfirm):
2722         (WebKit::WebChromeClient::runJavaScriptPrompt):
2723         * WebProcess/WebProcess.cpp:
2724         (WebKit::WebProcess::WebProcess):
2725         (WebKit::WebProcess::initializeWebProcess):
2726         * WebProcess/WebProcess.h:
2727         (WebProcess):
2728
2729 2012-10-03  Hugo Parente Lima  <hugo.lima@openbossa.org>
2730
2731         [WK2] PageViewportController.cpp is supposed to be a generic WebKit2 file but only works with Qt port.
2732         https://bugs.webkit.org/show_bug.cgi?id=98186
2733
2734         Reviewed by Noam Rosenthal.
2735
2736         Remove the dependece of WebCore::FloatSize to QSize implicit conversion.
2737
2738         * UIProcess/API/qt/qquickwebpage.cpp:
2739         (QQuickWebPagePrivate::updateSize):
2740         * UIProcess/API/qt/qquickwebview.cpp:
2741         (QQuickWebViewLegacyPrivate::updateViewportSize):
2742         (QQuickWebViewFlickablePrivate::updateViewportSize):
2743         * UIProcess/PageViewportController.cpp:
2744         (WebKit::PageViewportController::didRenderFrame):
2745         (WebKit::PageViewportController::pageDidRequestScroll):
2746         (WebKit::PageViewportController::syncVisibleContents):
2747         (WebKit::PageViewportController::viewportSizeInContentsCoordinates):
2748         (WebKit):
2749         * UIProcess/PageViewportController.h:
2750         (PageViewportController):
2751
2752 2012-10-03  Anders Carlsson  <andersca@apple.com>
2753
2754         Try to fix the Qt WebKit2 failures.
2755
2756         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2757         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
2758         Always force compositing if USE(COORDINATED_GRAPHICS) is true.
2759
2760 2012-10-03  Anders Carlsson  <andersca@apple.com>
2761
2762         Use the XPC service by default on newer systems
2763         https://bugs.webkit.org/show_bug.cgi?id=98297
2764         <rdar://problem/12424641>
2765
2766         Reviewed by Sam Weinig.
2767
2768         * UIProcess/mac/WebProcessProxyMac.mm:
2769         (WebKit::shouldUseXPC):
2770         Return false for older systems.
2771
2772         (WebKit::WebProcessProxy::platformConnect):
2773         Call shouldUseXPC().
2774
2775 2012-10-02  Andy Estes  <aestes@apple.com>
2776
2777         [WebKit2] Add the ability to send messages to the WebPageGroupProxy
2778         https://bugs.webkit.org/show_bug.cgi?id=98233
2779
2780         Reviewed by Anders Carlsson.
2781
2782         Add a WebPageGroupProxy.messages.in, implement a stub message receiver
2783         in WebPageGroupProxy, and teach WebProcess how to route messages to the
2784         appropriate WebPageGroupProxy.
2785
2786         * CMakeLists.txt: Tell a build system about added files.
2787         * DerivedSources.make: Ditto.
2788         * DerivedSources.pri: Ditto.
2789         * GNUmakefile.list.am: Ditto.
2790         * WebKit2.xcodeproj/project.pbxproj: Ditto.
2791         * win/WebKit2.vcproj: Ditto.
2792         * Platform/CoreIPC/MessageID.h: Add MessageClassWebPageGroupProxy.
2793         * WebProcess/WebPage/WebPageGroupProxy.cpp:
2794         (WebKit::WebPageGroupProxy::didReceiveMessage): Stub out the method
2795         that will receive messages.
2796         (WebKit::WebPageGroupProxy::didReceiveWebPageGroupProxyMessage): Stub
2797         out a method that will exist in WebPageGroupProxyMessageReceiver.cpp
2798         once WebPageGroupProxy.messages.in contains messages.
2799         * WebProcess/WebPage/WebPageGroupProxy.h:
2800         * WebProcess/WebPage/WebPageGroupProxy.messages.in: Added.
2801         * WebProcess/WebProcess.cpp:
2802         (WebKit::WebProcess::didReceiveMessage): Route messages to the
2803         WebPageGroupProxy matching destinationID if the message is of class
2804         MessageClassWebPageGroupProxy.
2805
2806 2012-10-02  Anders Carlsson  <andersca@apple.com>
2807
2808         Change most GraphicsLayer::create calls to use the version that takes a GraphicsLayerFactory
2809         https://bugs.webkit.org/show_bug.cgi?id=98217
2810
2811         Reviewed by Andreas Kling.
2812
2813         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2814         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
2815         (WebKit::LayerTreeCoordinator::createPageOverlayLayer):
2816         * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
2817         (WebKit::LayerTreeHostCA::initialize):
2818         (WebKit::LayerTreeHostCA::createPageOverlayLayer):
2819         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2820         (WebKit::LayerTreeHostGtk::initialize):
2821         (WebKit::LayerTreeHostGtk::createPageOverlayLayer):
2822         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2823         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
2824
2825 2012-10-03  Alberto Garcia  <agarcia@igalia.com>
2826
2827         [GTK] [WK2] Unused variable in webkitWebViewLoadChanged
2828         https://bugs.webkit.org/show_bug.cgi?id=98271
2829
2830         Reviewed by Martin Robinson.
2831
2832         Use the priv variable to directly access private attributes
2833         instead of dereferencing webView->priv all the time.
2834         Fixes -Wunused-variable.
2835
2836         * UIProcess/API/gtk/WebKitWebView.cpp:
2837         (webkitWebViewLoadChanged):
2838
2839 2012-10-03  Christophe Dumez  <christophe.dumez@intel.com>
2840
2841         [EFL][WK2] Implement focus/unfocus in UIClient
2842         https://bugs.webkit.org/show_bug.cgi?id=98253
2843
2844         Reviewed by Gyuyoung Kim.
2845
2846         Implement focus-related functionality in
2847         WebKitEFL's UIClient.
2848
2849         * UIProcess/API/efl/ewk_view_ui_client.cpp:
2850         (focus):
2851         (unfocus):
2852         (takeFocus):
2853         (ewk_view_ui_client_attach):
2854
2855 2012-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2856
2857         [GTK] WebKitWebView doesn't emit notify:favicon when it changes in some cases in WebKit2
2858         https://bugs.webkit.org/show_bug.cgi?id=98153
2859
2860         Reviewed by Martin Robinson.
2861
2862         The main problem is that it relies on icon-ready signal to be
2863         emitted by the favicon database, but that signal is only emitted
2864         when the icon is loaded from the network or imported from the
2865         database, but not when the icon is already in memory. The way to
2866         detect if a web page doesn't have a favicon or it's unknown it's
2867         also incorrectly done and the wrong error is returned for pages
2868         not having a favicon.
2869
2870         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
2871         (GetFaviconSurfaceAsyncData): Add a GError field.
2872         (getIconSurfaceSynchronously): Add a GError parameter and fill it
2873         accordingly. Use imageForPageURL() instead of
2874         nativeImageForPageURL() because the latter always returns NULL for
2875         empty images, so it's not possible to know whether it's an empty
2876         image or not. If the image is empty is because the web page is
2877         known by the database and it doesn't have a favicon.
2878         (processPendingIconsForURI): Pass the data error to
2879         getIconSurfaceSynchronously(). Don't set the icon if the request
2880         has been cancelled.
2881         (webkitFaviconDatabaseGetFavicon): Pass NULL as error to
2882         getIconSurfaceSynchronously().
2883         (setErrorForAsyncResult): Fill also error for
2884         WEBKIT_FAVICON_DATABASE_ERROR_FAVICON_UNKNOWN.
2885         (webkit_favicon_database_get_favicon): If we get NULL as icon in
2886         the first place, check the error code returned by
2887         getIconSurfaceSynchronously() and return early if the page doesn't
2888         have a favicon. Remove the cancelled signal to avoid race
2889         conditions.
2890         (webkit_favicon_database_get_favicon_finish): Errors are processed
2891         before now, so simply propagate the error if any or return the
2892         favicon.
2893         * UIProcess/API/gtk/WebKitWebView.cpp:
2894         (_WebKitWebViewPrivate): Keep a reference of the favicon.
2895         (webkitWebViewCancelFaviconRequest): Cancel any async operation to
2896         get the favicon.
2897         (webkitWebViewUpdateFavicon): Check if favicon has changed and
2898         save it emitting also notify::favicon signal.
2899         (iconReadyCallback): Only update the favicon if we don't have one
2900         already.
2901         (webkitWebViewFinalize): Call webkitWebViewCancelFaviconRequest().
2902         (getFaviconReadyCallback): Update the favicon.
2903         (webkitWebViewRequestFavicon): Request a new favicon.
2904         (webkitWebViewLoadChanged): Try to get the favicon when the load
2905         has been committed and the URI is the final one.
2906         (webkit_web_view_get_favicon): Return the cached favicon.
2907         * UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
2908         (serverCallback):
2909         (testSetDirectory):
2910         (testGetFavicon):
2911         (testWebViewFavicon):
2912
2913 2012-10-02  Carlos Garcia Campos  <cgarcia@igalia.com>
2914
2915         [GTK] Add API to get the web view that initiated a custom URI request to WebKit2 GTK+
2916         https://bugs.webkit.org/show_bug.cgi?id=97895
2917
2918         Reviewed by Martin Robinson.
2919
2920         The message DidReceiveURIRequest is now sent to the page that
2921         initiated the request that forwards the mesassage to the
2922         WebSoupRequestManagerProxy.
2923
2924         * UIProcess/API/C/soup/WKSoupRequestManager.h: Update
2925         didReceiveURIRequest callback to receive the initiating page ID.
2926         * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
2927         (didReceiveURIRequest): Update the callback API change.
2928         * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
2929         (didReceiveURIRequest): Pass the initiating page to the
2930         WebKitURISchemeRequest constructor.
2931         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
2932         (_WebKitURISchemeRequestPrivate): Keep a reference to the
2933         WebPageProxy that initiatesd the request.
2934         (webkitURISchemeRequestCreate): Save the initiating page.
2935         (webkit_uri_scheme_request_get_web_view): Return the view widget
2936         of the initiating WebPageProxy.
2937         * UIProcess/API/gtk/WebKitURISchemeRequest.h:
2938         * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
2939         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
2940         * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
2941         * UIProcess/WebPageProxy.cpp:
2942         (WebKit::WebPageProxy::didReceiveURIRequest): Forward the request
2943         to the soup request manager proxy.
2944         * UIProcess/WebPageProxy.h:
2945         (WebPageProxy): Add didReceiveURIRequest().
2946         * UIProcess/WebPageProxy.messages.in: Add DidReceiveURIRequest
2947         message.
2948         * UIProcess/soup/WebSoupRequestManagerClient.cpp:
2949         (WebKit::WebSoupRequestManagerClient::didReceiveURIRequest):
2950         Pass the inititing page to the client callback.
2951         * UIProcess/soup/WebSoupRequestManagerClient.h:
2952         (WebSoupRequestManagerClient):
2953         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
2954         (WebKit::WebSoupRequestManagerProxy::didReceiveURIRequest): Pass
2955         the inititing page to the client.
2956         * UIProcess/soup/WebSoupRequestManagerProxy.h:
2957         (WebSoupRequestManagerProxy):
2958         * UIProcess/soup/WebSoupRequestManagerProxy.messages.in: Remove
2959         DidReceiveURIRequest message.
2960         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
2961         (WebKit::WebFrameNetworkingContext::WebFrameNetworkingContext):
2962         Save the pageID of the WebFrame.
2963         (WebKit::WebFrameNetworkingContext::initiatingPageID): Return the
2964         inititing page ID.
2965         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
2966         * WebProcess/soup/WebSoupRequestManager.cpp:
2967         (WebKit::WebSoupRequestManager::send): Send DidReceiveURIRequest
2968         message to the WebPage that initiated the request.
2969
2970 2012-10-02  Zan Dobersek  <zandobersek@gmail.com>
2971
2972         Unreviewed build fix for the GTK port after r130207.
2973         Use proper file separators for new entries.
2974
2975         * GNUmakefile.list.am:
2976
2977 2012-10-02  Joone Hur  <joone.hur@intel.com>
2978
2979         Unreviewed, GTK+,Efl debug build fix after r130225.
2980
2981         This patch allows to include the static xErrorString variable when LOG_DISABLED is 0.
2982
2983         * PluginProcess/unix/PluginProcessMainUnix.cpp:
2984         (WebKit):
2985
2986 2012-10-02  Sam Weinig  <sam@webkit.org>
2987
2988         Fix a typo and add some \n's to make Mark happy.
2989
2990         Rubber-stamped by Mark "logging must be fast" Rowe.
2991
2992         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
2993         (WebKit::InjectedBundle::load):
2994
2995 2012-10-02  Sam Weinig  <sam@webkit.org>
2996
2997         Add Objective-C API for the InjectedBundle
2998         https://bugs.webkit.org/show_bug.cgi?id=98222
2999
3000         Reviewed by Anders Carlsson.
3001
3002         Add skeleton of the Objective-C API for the InjectedBundle.
3003
3004         * WebKit2.xcodeproj/project.pbxproj:
3005         Add new API files.
3006
3007         * WebProcess/InjectedBundle/API/mac: Added.
3008         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h: Added.
3009         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm: Added.
3010         (-[WKWebProcessPlugIn _initWithPrincipalClassInstance:injectedBundle:]):
3011         Initialization method for the WKWebProcessPlugIn object. This object will act as the WKBundleRef
3012         object does in the C-SPI.
3013         (+[WKWebProcessPlugIn _shared]):
3014         Access the shared instance.
3015         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h: Added.
3016
3017         * WebProcess/InjectedBundle/InjectedBundle.h:
3018         Store an NSBundle rather than a CFBundleRef as the platform bundle.
3019
3020         * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: Removed.
3021         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm: Copied from Source/WebKit2/WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp.
3022         (WebKit::InjectedBundle::load):
3023         If a principal class is provided and no WKBundleInitialize function is present in the bundle, use the principal class
3024         as the initialization point. The principal class must conform to the WKWebProcessPlugIn protocol and if a
3025         webProcessPlugInInitialize: method is present, it is called. 
3026
3027 2012-10-02  Dan Bernstein  <mitz@apple.com>
3028
3029         Fixed a crash when the localization option is not passed to the web process.
3030
3031         Reviewed by Sam Weinig.
3032
3033         * PluginProcess/mac/PluginProcessMainMac.mm:
3034         (WebKit::PluginProcessMain): Changed to not call WKSetDefaultLocalization
3035         with the empty string.
3036         * WebProcess/mac/WebProcessMainMac.mm:
3037         (WebKit::WebProcessMain): Ditto.
3038
3039 == Rolled over to ChangeLog-2012-10-02 ==