[GTK] WebKitGTK+ is linking against libxslt in too many places
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-09-14  Alberto Garcia  <berto@igalia.com>
2
3         [GTK] WebKitGTK+ is linking against libxslt in too many places
4         https://bugs.webkit.org/show_bug.cgi?id=121356
5
6         Reviewed by Martin Robinson.
7
8         Don't use LIBXSLT_CFLAGS when compiling libWebCoreGtk2, no source
9         files use libxslt there.
10
11         * GNUmakefile.am:
12
13 2013-09-13  Ryuan Choi  <ryuan.choi@samsung.com>
14
15         Unreviewed build fix attempt for WK2 build.
16
17         * WebProcess/Plugins/PluginView.cpp: Changed ScriptState to ExecState.
18         (WebKit::PluginView::performJavaScriptURLRequest):
19
20 2013-09-13  Anders Carlsson  <andersca@apple.com>
21
22         Use nullptr instead of 0 in calls to HashMap::add
23         https://bugs.webkit.org/show_bug.cgi?id=121322
24
25         Reviewed by Sam Weinig.
26
27         * Platform/CoreIPC/Connection.cpp:
28         (CoreIPC::Connection::SyncMessageState::getOrCreate):
29         * UIProcess/Storage/StorageManager.cpp:
30         (WebKit::StorageManager::createLocalStorageMap):
31         (WebKit::StorageManager::createSessionStorageMap):
32         (WebKit::StorageManager::getOrCreateLocalStorageNamespace):
33         * UIProcess/WebProcessProxy.cpp:
34         (WebKit::WebProcessProxy::addBackForwardItem):
35         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
36         (WebKit::InjectedBundleNodeHandle::getOrCreate):
37         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
38         (WebKit::InjectedBundleRangeHandle::getOrCreate):
39         * WebProcess/Storage/StorageNamespaceImpl.cpp:
40         (WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
41         * WebProcess/WebProcess.cpp:
42         (WebKit::WebProcess::createWebPage):
43         (WebKit::WebProcess::webPageGroup):
44
45 2013-09-13  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
46
47         [GTK] Move to the new web inspector
48         https://bugs.webkit.org/show_bug.cgi?id=120647
49
50         Reviewed by Carlos Garcia Campos.
51
52         * GNUmakefile.am: bundle the remote inspector page list HTML into libwebkit2gtk as a GResource.
53         * UIProcess/API/gtk/tests/GNUmakefile.am: no need to set WEBKIT_INSPECTOR_PATH anymore.
54         * UIProcess/API/gtk/tests/InspectorTestServer.cpp:
55         (main): ditto.
56         * UIProcess/API/gtk/tests/TestInspector.cpp:
57         (beforeAll): ditto.
58         * UIProcess/API/gtk/tests/TestInspectorServer.cpp:
59         (testInspectorServerPageList): update paths to the internal resource ones.
60         * UIProcess/InspectorServer/WebInspectorServer.h:
61         * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
62         (WebKit::WebInspectorServer::platformResourceForPath): ditto.
63         (WebKit::WebInspectorServer::buildPageList): ditto.
64         * UIProcess/WebInspectorProxy.cpp:
65         (WebKit::isMainInspectorPage): factor out checking for the inspector main resource, to make
66         the code more readable.
67         (WebKit::decidePolicyForNavigationAction): use SchemeRegistry to figure out whether the
68         request is for a local resource instead of KURL::isLocalFile() to allow using schemes
69         other than file:// for the inspector resources.
70         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
71         (WebKit::WebInspectorProxy::inspectorPageURL): use the new internal resource URL; since it's now
72         static we no longer need to generate and store the string.
73         (WebKit::WebInspectorProxy::inspectorBaseURL): ditto.
74         * WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
75         (WebKit::WebInspector::localizedStringsURL): use the new internal resource URL.
76         * UIProcess/gtk/WebContextGtk.cpp:
77         (WebKit::WebContext::platformInitializeWebProcess): register resource as a local scheme.
78
79 2013-09-13  Allan Sandfeld Jensen  <allan.jensen@digia.com>
80
81         Fix build with namespaced Qt.
82
83         Unreviewed build fix.
84
85         One forward declaration of QUrl was missing proper namespace macros.
86
87         * UIProcess/API/qt/qquickurlschemedelegate_p.h:
88
89 2013-09-12  Simon Fraser  <simon.fraser@apple.com>
90
91         Avoid extra scrollbar-related layouts for overlay scrollbars
92         https://bugs.webkit.org/show_bug.cgi?id=121267
93
94         Reviewed by Beth Dakin.
95         
96         view->resize() will call setNeedsLayout() if necessary, and may already have
97         done layout, so the extra setNeedsLayout() here was bad.
98
99         * WebProcess/WebPage/WebPage.cpp:
100         (WebKit::WebPage::setSize):
101
102 2013-09-12  Andre Moreira Magalhaes   <andre.magalhaes@collabora.co.uk>
103
104         Web Inspector: Do not try to parse incomplete HTTP requests
105         https://bugs.webkit.org/show_bug.cgi?id=121123
106
107         Reviewed by Darin Adler.
108
109         When working on a patch for bug #121121 I found an issue with the InspectorServer where it would try
110         to parse an HTTP message before receiving the full message and thus fail connecting with the
111         chromedevtools plugin.
112
113         What happens is that the WebSocketServerConnection receives buffers on
114         WebSocketServerConnection::didReceiveSocketStreamData and calls
115         WebSocketServerConnection::readHTTPMessage which then checks if we have a valid request by calling
116         HTTPRequest::parseHTTPRequestFromBuffer. If the request is valid it tries to parse the message and
117         clears the buffer, otherwise it continues adding data to the internal buffer until we have a valid
118         request.
119
120         The problem is that currently HTTPRequest::parseHTTPRequestFromBuffer considers the request as valid
121         before receiving the full message. To solve this we should make the method check if the request
122         headers end with a blank line otherwise we consider the request as invalid (see also
123         http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html).
124
125         * UIProcess/API/gtk/tests/TestInspectorServer.cpp:
126         (sendIncompleteRequest):
127         (beforeAll):
128         Add GTK specific test to check if the inspector server replies to incomplete requests.
129         * UIProcess/InspectorServer/HTTPRequest.cpp:
130         (WebKit::HTTPRequest::parseHeaders):
131         Do not consider request valid if headers didn't end with a blank line.
132
133 2013-09-12  Anders Carlsson  <andersca@apple.com>
134
135         SharedBuffer::createNSData should return a RetainPtr<NSData>
136         https://bugs.webkit.org/show_bug.cgi?id=121237
137
138         Reviewed by Darin Adler.
139
140         Update for WebCore changes.
141
142         * UIProcess/API/mac/WKView.mm:
143         (-[WKView writeSelectionToPasteboard:types:]):
144         (-[WKView _setPromisedData:WebCore::withFileName:withExtension:withTitle:withURL:withVisibleURL:withArchive:WebCore::forPasteboard:]):
145         (-[WKView namesOfPromisedFilesDroppedAtDestination:]):
146
147 2013-09-12  Anders Carlsson  <andersca@apple.com>
148
149         SharedBuffer::createCFData should return RetainPtr<CFDataRef>
150         https://bugs.webkit.org/show_bug.cgi?id=121230
151
152         Reviewed by Darin Adler.
153
154         * NetworkProcess/mac/NetworkResourceLoaderMac.mm:
155         (WebKit::NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer):
156         * Shared/WebArchiveResource.cpp:
157         (WebKit::WebArchiveResource::data):
158
159 2013-09-12  Zalan Bujtas  <zalan@apple.com>
160
161         REGRESSION: Inline PDF that are cached fail to appear in iframe.
162         https://bugs.webkit.org/show_bug.cgi?id=75449
163
164         Reviewed by Darin Adler.
165
166         Make sure 'frame is from page cache' flag is set for subframes too.
167
168         WebFrameLoaderClient::m_frameCameFromPageCache == true forces plugins
169         to be loaded manually. It ensures that the plugin raw data is fetched again
170         while the containing frame is being restored from the page cache.
171         (Plugins get destroyed when the frame goes to page cache.)
172
173         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
174         (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
175         This gets called only on the frame where the actual history navigation happens.
176         (WebKit::WebFrameLoaderClient::didRestoreFromPageCache):
177         This gets called for all the restored frames.
178
179 2013-09-11  Simon Fraser  <simon.fraser@apple.com>
180
181         Make sure that layout is up-to-date when moving a WKView into a window, to avoid !needsLayout() assertions in RenderView::paint()
182         https://bugs.webkit.org/show_bug.cgi?id=121196
183
184         Reviewed by Tim Horton.
185         
186         When a WKView was moved into a window, it was possible for us to paint
187         without ensuring that layout is up-to-date. Fix this by having
188         WebPage::setIsInWindow() update layout if we are moving to a window.
189
190         * WebProcess/WebPage/WebPage.cpp:
191         (WebKit::WebPage::setIsInWindow):
192
193 2013-09-11  Mario Sanchez Prada  <mario.prada@samsung.com>
194
195         [GTK] Remove Gail dependency from build system for GTK3
196         https://bugs.webkit.org/show_bug.cgi?id=119673
197
198         Reviewed by Gustavo Noronha Silva.
199
200         * GNUmakefile.am: Removed GAIL_LIBS.
201
202 2013-09-11  Alberto Garcia  <berto@igalia.com>
203
204         [WK2] [GTK] LayerTreeHostGtk: don't set m_isValid to false if glContext() returns null
205         https://bugs.webkit.org/show_bug.cgi?id=120892
206
207         Reviewed by Martin Robinson.
208
209         If the GL context cannot be created then m_isValid is set to false
210         during the initialization of LayerTreeHostGtk.
211
212         This is not really necessary since the rest of the code already
213         deals with that situation, so it doesn't have any effect other
214         than breaking the assertion in invalidate().
215
216         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
217         (WebKit::LayerTreeHostGtk::initialize):
218
219 2013-09-11  Commit Queue  <commit-queue@webkit.org>
220
221         Unreviewed, rolling out r154899.
222         http://trac.webkit.org/changeset/154899
223         https://bugs.webkit.org/show_bug.cgi?id=121162
224
225         It didn't fix the problem and broke other unit tests
226         (Requested by KaL on #webkit).
227
228         * UIProcess/API/gtk/tests/WebViewTest.cpp:
229         (WebViewTest::resizeView):
230
231 2013-09-11  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
232
233         WTF::OwnPtr should behave similarly with the rest of WTF smart pointers
234         https://bugs.webkit.org/show_bug.cgi?id=120773
235
236         Reviewed by Anders Carlsson.
237
238         Before the change OwnPtr could take either the pointer type or the pointed-to type, which was bad
239         for the following reasons:
240         - It distinguished OwnPtr behaviour from other WTF smart pointer classes behaviour (so it was confusing for the Client).
241         - It was potential error-prone as it actually modified the type given by the Client in opaque way.
242
243         * UIProcess/API/efl/ewk_database_manager.cpp:
244         (getDatabaseOriginsCallback):
245         * UIProcess/API/efl/ewk_storage_manager.cpp:
246         (getStorageOriginsCallback):
247
248 2013-09-11  ChangSeok Oh  <changseok.oh@collabora.com>
249
250         Unreviewed build fix.
251
252         * GNUmakefile.list.am: Duplicated NetscapePluginModuleNone.cpp & NetscapePluginNone.cpp.
253         They cause build breaks of multiple definitions when targeting wayland build.
254
255 2013-09-11  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
256
257         Generate more HTML type checks and casting
258         https://bugs.webkit.org/show_bug.cgi?id=121080
259
260         Reviewed by Andreas Kling.
261
262         Clean-up remained functions of HTML elements using auto-generated isFooElement(),
263         and replace toFooElement() with ELEMENT_TYPE_CASTS() macro.
264
265         Besides this patch clean-up unnecessary checks which are being supported by
266         auto-generated isFooElement().
267
268         * WebProcess/WebPage/WebFrame.cpp:
269         (WebKit::WebFrame::containsAnyFormControls):
270
271 2013-09-10  Marcelo Morais  <m.morais@samsung.com>
272
273         [EFL] WebInspector: Move to new webinspector
274         https://bugs.webkit.org/show_bug.cgi?id=119559
275
276         Reviewed by Gyuyoung Kim.
277
278         Loading the new Web Inspector page instead of the old inspector.
279         Co-Author: Andre Loureiro <andre.vl@samsung.com>
280
281         * UIProcess/efl/WebInspectorProxyEfl.cpp:
282         (WebKit::WebInspectorProxy::inspectorPageURL):
283
284 2013-09-10  Sergio Villar Senin  <svillar@igalia.com>
285
286         [WK2][GTK] Frequent crashes when showing context menus in Debug builds
287         https://bugs.webkit.org/show_bug.cgi?id=121099
288
289         Reviewed by Carlos Garcia Campos.
290
291         Disconnect signal handlers when destroying the context menu proxy
292         object. This avoids use-after-free crashes when opening several
293         context menus in a row.
294
295         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
296         (WebKit::WebContextMenuProxyGtk::append):
297         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
298         * UIProcess/gtk/WebContextMenuProxyGtk.h:
299
300 2013-09-10  Allan Sandfeld Jensen  <allan.jensen@digia.com>
301
302         [Qt] make use of qtHaveModule() 
303         https://bugs.webkit.org/show_bug.cgi?id=121090
304
305         Reviewed by Jocelyn Turcotte.
306         Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com>
307
308         Use qtHaveModule instead of our own haveQtModule.
309
310         * WebProcess.pro:
311
312 2013-09-10  Carlos Garcia Campos  <cgarcia@igalia.com>
313
314         [GTK] /webkit2/WebKitWebView/default-menu fails when GtkSettings:gtk-show-input-method-menu is disabled
315         https://bugs.webkit.org/show_bug.cgi?id=121088
316
317         Reviewed by Xan Lopez.
318
319         * UIProcess/API/gtk/tests/TestContextMenu.cpp: Always check
320         Unicode submenu is present in default context menu for editable
321         content.
322
323 2013-09-09  Dean Jackson  <dino@apple.com>
324
325         [WebGL] Allow multithreaded OpenGL contexts
326         https://bugs.webkit.org/show_bug.cgi?id=121062
327
328         Reviewed by Simon Fraser.
329
330         Expose a new preference "multithreadedWebGLEnabled".
331
332         * Shared/WebPreferencesStore.h:
333         * UIProcess/API/C/WKPreferences.cpp:
334         (WKPreferencesSetMultithreadedWebGLEnabled):
335         (WKPreferencesGetMultithreadedWebGLEnabled):
336         * UIProcess/API/C/WKPreferencesPrivate.h:
337         * WebProcess/WebPage/WebPage.cpp:
338         (WebKit::WebPage::updatePreferences):
339         * mac/WebKit2.order:
340
341 2013-09-09  Dean Jackson  <dino@apple.com>
342
343         Enable WebGL for OS X nightlies
344         https://bugs.webkit.org/show_bug.cgi?id=121040
345
346         Reviewed by Beth Dakin.
347
348         * Shared/WebPreferencesStore.h: Set initial value to true.
349
350 2013-09-08  Anders Carlsson  <andersca@apple.com>
351
352         Begin moving off of TypeTraits.h
353         https://bugs.webkit.org/show_bug.cgi?id=121006
354
355         Reviewed by Darin Adler.
356
357         Convert uses of WTF type traits to STL type traits.
358
359         * Platform/CoreIPC/ArgumentCoder.h:
360         * Platform/CoreIPC/ArgumentCoders.h:
361         * Platform/CoreIPC/ArgumentDecoder.h:
362         * Platform/CoreIPC/ArgumentEncoder.h:
363         * Platform/CoreIPC/Arguments.h:
364         * Shared/API/c/WKSharedAPICast.h:
365         (WebKit::toImpl):
366
367 2013-09-09  Gustavo Noronha Silva  <gns@gnome.org>
368
369         Unreviewed build fix.
370
371         * GNUmakefile.list.am: Typo - left-over \ from a copy/paste, most likely.
372
373 2013-09-09  Anton Obzhirov  <a.obzhirov@samsung.com>
374
375         [GTK] Cancel the current active WebKitAuthenticationRequest on load failed
376         https://bugs.webkit.org/show_bug.cgi?id=120350
377
378         Reviewed by Carlos Garcia Campos.
379
380         The default dialog does not get closed and the authentication is not cancelled
381         if loading fails or is stopped on a page which requires HTTP authentication.
382
383         This patch cancels the authentication request on load failed
384         and adds new authentication cancelled signal in WebKitAuthenticationRequest
385         to allow the application handling of authentication UI.
386
387         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
388         (authenticationCancelled):
389         (webkitAuthenticationDialogInitialize):
390         (webkitAuthenticationDialogDispose):
391         (webkitAuthenticationDialogNew):
392         * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
393         * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp:
394         (webkit_authentication_request_class_init):
395         (webkit_authentication_request_cancel):
396         * UIProcess/API/gtk/WebKitWebView.cpp:
397         (webkitWebViewAuthenticate):
398         (webkitWebViewLoadFailed):
399         (webkitWebViewHandleAuthenticationChallenge):
400         (webkitWebViewCancelAuthenticationRequest):
401         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
402         (testWebViewAuthenticationLoadCancelled):
403         (beforeAll):
404
405 2013-09-09  Brian Holt  <brian.holt@samsung.com>
406
407         [GTK][WK2] Update ContextMenu Download API
408         https://bugs.webkit.org/show_bug.cgi?id=120763
409
410         Reviewed by Carlos Garcia Campos.
411
412         Mark the new Download items in the Context Menu with the Since
413         tag, and include a unit test for Context Menu audio.
414
415         * UIProcess/API/gtk/WebKitContextMenuActions.h:
416         * UIProcess/API/gtk/tests/TestContextMenu.cpp:
417         (testContextMenuDefaultMenu):
418
419 2013-09-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
420
421         [wk2] REGRESSION (r154673): PDF scrolling moves very slowly
422         https://bugs.webkit.org/show_bug.cgi?id=120542
423
424         Reviewed by Tim Horton.
425
426         Handle 'wheel' events in addition to 'mousewheel'. This fixes
427         PDF scrolling.
428
429         * WebProcess/Plugins/PluginView.cpp:
430         (WebKit::PluginView::handleEvent):
431
432 2013-09-08  Anders Carlsson  <andersca@apple.com>
433
434         Move WTF::notFound to Vector.h and delete NotFound.h
435         https://bugs.webkit.org/show_bug.cgi?id=120990
436
437         Reviewed by Sam Weinig.
438
439         * Shared/EditorState.h:
440
441 2013-09-07  Anders Carlsson  <andersca@apple.com>
442
443         Get rid of PassOwnArrayPtr
444         https://bugs.webkit.org/show_bug.cgi?id=120964
445
446         Reviewed by Andreas Kling.
447
448         Remove unneeded includes.
449
450         * Shared/ImmutableArray.h:
451         * WebProcess/InjectedBundle/InjectedBundle.cpp:
452
453 2013-09-06  Ryosuke Niwa  <rniwa@webkit.org>
454
455         Range::ownerDocument should return Document&
456         https://bugs.webkit.org/show_bug.cgi?id=120908
457
458         Reviewed by Andreas Kling.
459
460         * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
461         (-[WKDOMRange textRects]):
462
463 2013-09-05  Ryuan Choi  <ryuan.choi@samsung.com>
464
465         [CMAKE] Add c++0x into CXX_FLAGS as a default
466         https://bugs.webkit.org/show_bug.cgi?id=120812
467
468         Unreviewed build fix for EFL ports.
469
470         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h: Added constexpr for in-class initialization.
471         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp: Added space between strings.
472         (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTestPageUrl):
473         (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTheme):
474         (EWK2UnitTest::EWK2UnitTestEnvironment::urlForResource):
475
476 2013-09-05  Alexey Proskuryakov  <ap@apple.com>
477
478         WKFullScreenWindowController extends lifetime of WKView, deleting it at a wrong time
479         https://bugs.webkit.org/show_bug.cgi?id=120792
480         <rdar://problem/14884666>
481
482         Reviewed by Jer Noble.
483
484         * UIProcess/API/mac/WKView.mm: (-[WKView fullScreenWindowController]):
485         Use a newly minted initializer for the controller.
486
487         * UIProcess/mac/WKFullScreenWindowController.h: Removed unused web view accessors.
488         Changed the class to take web view at initialization time.
489
490         * UIProcess/mac/WKFullScreenWindowController.mm:
491         (-[WKFullScreenWindowController initWithWindow:webView:]): Initialize the controller
492         inone step.
493         (-[WKFullScreenWindowController dealloc]): WebView is now a raw pointer, no need
494         to zero it.
495         (-[WKFullScreenWindowController close]): Make sure to not leave a dangling WKView
496         pointer (this method is indirectly but inevitably called when WKView is deallocated).
497
498 2013-09-05  Anders Carlsson  <andersca@apple.com>
499
500         Replace uses of CLANG_PRAGMA with #pragma
501
502         Rubber-stamped by Andreas Kling.
503
504         This file is only compiled by clang anyway.
505
506         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
507         (WebKit::InjectedBundle::load):
508
509 2013-09-05  Anders Carlsson  <andersca@apple.com>
510
511         GCAssertions.h should use STL type traits and static_assert
512         https://bugs.webkit.org/show_bug.cgi?id=120785
513
514         Reviewed by Andreas Kling.
515
516         Update for JavaScriptCore changes.
517
518         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
519
520 2013-09-05  Alberto Garcia  <berto@igalia.com>
521
522         [WK2] [GTK] Remove the test to disable AC under Wayland from WebKitWebViewGroup
523         https://bugs.webkit.org/show_bug.cgi?id=120762
524
525         Reviewed by Gustavo Noronha Silva.
526
527         The code to disable AC under Wayland is not run if we're using
528         WebKitTestRunner, so it would be better to move it to
529         WebKitWebViewBase.
530
531         However it's not really necessary to do that, instead it's much
532         simpler to disable accelerated compositing in all cases unless we
533         know we can support it.
534
535         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
536         (webkitWebViewBaseUpdatePreferences):
537         * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
538         (webkitWebViewGroupAttachSettingsToPageGroup):
539
540 2013-09-04  Alberto Garcia  <berto@igalia.com>
541
542         [WK2][GTK] ASSERTION in WebKit::LayerTreeHostGtk::invalidate
543         https://bugs.webkit.org/show_bug.cgi?id=117733
544
545         Reviewed by Martin Robinson.
546
547         If the GL context cannot be created then an invalid
548         LayerTreeHostGtk object will be returned.
549
550         This patch disables accelerated compositing if the system doesn't
551         support it.
552
553         * UIProcess/API/gtk/WebKitWebView.cpp:
554         (webkitWebViewUpdateSettings):
555         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
556         (webkitWebViewBaseUpdatePreferences):
557         (webkitWebViewBaseCreateWebPage):
558         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
559
560 2013-09-04  Commit Queue  <commit-queue@webkit.org>
561
562         Unreviewed, rolling out r154989.
563         http://trac.webkit.org/changeset/154989
564         https://bugs.webkit.org/show_bug.cgi?id=120678
565
566         This patch might broke apps using webkitgtk not from the main
567         thread (Requested by msanchez on #webkit).
568
569         * UIProcess/API/gtk/WebKitWebView.cpp:
570         (webkitWebViewRunAsModal):
571         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
572         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
573
574 2013-09-04  Zan Dobersek  <zdobersek@igalia.com>
575
576         [GTK] Add support for the Wayland build target
577         https://bugs.webkit.org/show_bug.cgi?id=120627
578
579         Reviewed by Gustavo Noronha Silva.
580
581         * GNUmakefile.list.am: Build X11-specific NetscapePluginModule and NetscapePlugin classes if building the X11 target,
582         fall back to the generic, empty classes otherwise.
583         * PluginProcess/unix/PluginProcessMainUnix.cpp:
584         (WebKit::PluginProcessMainUnix): Guard the NetscapePluginModule::scanPlugin() invocation with PLUGIN_ARCHITECTURE(X11),
585         it's at the moment specific to the X11 implementation of the Netscape plugins.
586         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp: Guard PluginProcessProxy::scanPlugin() with PLUGIN_ARCHITECTURE(X11),
587         just like it's guarded in the PluginProcessProxy class declaration.
588         * UIProcess/cairo/BackingStoreCairo.cpp: Additionally guard <gdk/gdkx.h> and WidgetBackingStoreGtkX11 inclusion and use
589         with PLATFORM(X11), this code should only be built when building the X11 target.
590         (WebKit::createBackingStoreForGTK):
591         * UIProcess/gtk/WebPageProxyGtk.cpp: Guard the createPluginContainer() and windowedPluginGeometryDidChange() methods and their
592         helper functions and objects with PLUGIN_ARCHITECTURE(X11), just like they're guarded in the WebPageProxy class declaration.
593         * config.h: Only define PLUGIN_ARCHITECTURE_X11 to 1 if we're actually building the X11 target.
594
595 2013-09-03  Darin Adler  <darin@apple.com>
596
597         REGRESSION (r154967) window resize is very choppy
598         https://bugs.webkit.org/show_bug.cgi?id=120653
599
600         Reviewed by Andreas Kling.
601
602         Andreas Kling spotted the bad change.
603
604         * Platform/CoreIPC/Connection.cpp:
605         (CoreIPC::Connection::waitForMessage): Roll out this incorrect change.
606         The code here is not the same as a call to take.
607
608 2013-09-03  Anton Obzhirov  <a.obzhirov@samsung.com>
609
610         [GTK] gdk threads deprecated functions calls should be refactored
611         https://bugs.webkit.org/show_bug.cgi?id=120070
612
613         Reviewed by Mario Sanchez Prada.
614
615         Removed deprecated functions gdk_threads_leave()/gdk_threads_enter() functions since
616         there is no more checks for threads lock in GTK 3.6.
617
618         * UIProcess/API/gtk/WebKitWebView.cpp:
619         (webkitWebViewRunAsModal):
620         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
621         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
622
623 2013-09-03  Brian Holt  <brian.holt@samsung.com>
624
625         [GTK] [WK2] TestContextMenu default-menu fails
626         https://bugs.webkit.org/show_bug.cgi?id=120459
627
628         Reviewed by Gustavo Noronha Silva.
629
630         Add context menu items for downloading media elements.
631
632         * UIProcess/API/gtk/WebKitContextMenuActions.cpp:
633         (webkitContextMenuActionGetActionTag):
634         (webkitContextMenuActionGetForContextMenuItem):
635         (webkitContextMenuActionGetLabel):
636         * UIProcess/API/gtk/WebKitContextMenuActions.h:
637         * UIProcess/API/gtk/tests/TestContextMenu.cpp:
638
639 2013-09-02  Darin Adler  <darin@apple.com>
640
641         Cut down on double hashing and code needlessly using hash table iterators
642         https://bugs.webkit.org/show_bug.cgi?id=120611
643
644         Reviewed by Andreas Kling.
645
646         * Platform/CoreIPC/Connection.cpp:
647         (CoreIPC::Connection::waitForMessage): Use take instead of find/remove.
648
649         * UIProcess/WebPreferences.cpp:
650         (WebKit::WebPreferences::removePageGroup): Use the return value from remove
651         instead of find/remove.
652
653         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
654         (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
655         (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
656         Use take instead of find/remove.
657
658         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
659         (WebKit::NetscapePlugin::frameDidFinishLoading): Use take instead of find/remove.
660         (WebKit::NetscapePlugin::frameDidFail): Use take instead of find/remove.
661
662         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
663         (WebKit::WebBackForwardListProxy::removeItem): Use take instead of find/remove.
664
665         * WebProcess/WebPage/WebPage.cpp:
666         (WebKit::WebPage::didFinishCheckingText): Use take instead of get/remove so we
667         hash only once.
668         (WebKit::WebPage::didCancelCheckingText): Ditto.
669         (WebKit::WebPage::stopExtendingIncrementalRenderingSuppression): Use the return
670         value from remove instead of contains/remove so we hash only once.
671
672 2013-09-02  Darin Adler  <darin@apple.com>
673
674         [Mac] No need for HardAutorelease, which is same as CFBridgingRelease
675         https://bugs.webkit.org/show_bug.cgi?id=120569
676
677         Reviewed by Andy Estes.
678
679         * Platform/mac/StringUtilities.mm:
680         (WebKit::nsStringFromWebCoreString): Use CFBridgingRelease. Also
681         changed condition to be a little cleaner and use a constant string for empty
682         strings as well as null strings.
683
684         * UIProcess/API/mac/WKBrowsingContextController.mm:
685         (autoreleased): Switched from autorelease to CFBridgingRelease for strings,
686         which eliminates a type cast and makes this work under GC, although I don't
687         think we should compile WebKit2 for GC.
688
689         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
690         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
691         Use CFBridgingRelease.
692
693 2013-09-02  Csaba Osztrogonác  <ossy@webkit.org>
694
695         REGRESSION(r154909): caused many crashes on Qt WK2, EFL WK2
696         https://bugs.webkit.org/show_bug.cgi?id=120600
697
698         Reviewed by Andreas Kling.
699
700         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
701         (CoreIPC::::decode): keyTime should be double here too.
702
703 2013-09-01  Alexey Proskuryakov  <ap@apple.com>
704
705         [WK2][Mac] Drag and drop tests interfere with user's UI
706         https://bugs.webkit.org/show_bug.cgi?id=120538
707
708         Reviewed by Dan Bernstein.
709
710         * UIProcess/API/mac/WKView.mm: (-[WKView _setDragImage:at:linkDrag:]): Make it possible
711         to override drag initiation in subclasses. It is a bit unfortunate that this exposes
712         a deprecated API that we call, but probably not unfortunate enough to invent a new
713         scary looking name for the same function, and conditionally call that if implemented
714         by subclass.
715
716 2013-08-31  Santosh Mahto  <santosh.ma@samsung.com>
717
718         warning: unused parameter point and area in EwkView.cpp:1390
719         https://bugs.webkit.org/show_bug.cgi?id=120545
720
721         Reviewed by Darin Adler.
722
723         * UIProcess/API/efl/EwkView.cpp:
724         (EwkView::didFindZoomableArea): Added UNUSED_PARAM.
725
726 2013-08-31  Jae Hyun Park  <jae.park@company100.net>
727
728         Remove unused variable in LayerTreeHost
729         https://bugs.webkit.org/show_bug.cgi?id=118950
730
731         Reviewed by Anders Carlsson.
732
733         m_waitingForUIProcess has been renamed to m_isWaitingForRenderer as of
734         r152183, and it is a private variable in CoordinatedLayerTreeHost. Thus,
735         we don't need m_waitingForUIProcess in LayerTreeHost.
736
737         * WebProcess/WebPage/LayerTreeHost.h:
738
739 2013-08-30  Brian Holt  <brian.holt@samsung.com>
740
741         [GTK] [WK2] TestWebKitWebView snapshot fails
742         https://bugs.webkit.org/show_bug.cgi?id=120404
743
744         Reviewed by Darin Adler.
745
746         Fixed the snapshot test failure caused by GTK no longer allowing
747         widgets to resize.  Instead, resize the WebView by resizing the
748         window and waiting for the event to complete asynchronously.
749
750         * UIProcess/API/gtk/tests/WebViewTest.cpp:
751         (WebViewTest::resizeView):
752
753 2013-08-30  Csaba Osztrogonác  <ossy@webkit.org>
754
755         Add USE(PROTECTION_SPACE_AUTH_CALLBACK) guards to canAuthenticateAgainstProtectionSpace()
756         https://bugs.webkit.org/show_bug.cgi?id=120351
757
758         Reviewed by Darin Adler.
759
760         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
761         * NetworkProcess/AsynchronousNetworkLoaderClient.h:
762         * NetworkProcess/NetworkLoaderClient.h:
763         * NetworkProcess/SynchronousNetworkLoaderClient.cpp:
764         * NetworkProcess/SynchronousNetworkLoaderClient.h:
765
766 2013-08-30  Gabor Abraham  <abrhm@inf.u-szeged.hu>
767
768         Fix, remove unused parameter in UIProcess/WebColorPicker.cpp.
769         https://bugs.webkit.org/show_bug.cgi?id=120525
770
771         Reviewed by Darin Adler.
772
773         * UIProcess/WebColorPicker.cpp:
774         (WebKit::WebColorPicker::showColorPicker):
775
776 2013-08-30  Tamas Czene  <tczene@inf.u-szeged.hu>
777
778         Resolve unused parameter warning in WebPlatformStrategies.cpp
779         https://bugs.webkit.org/show_bug.cgi?id=120515
780
781         Reviewed by Darin Adler.
782
783         * WebProcess/WebPage/TapHighlightController.cpp:
784         (WebKit::TapHighlightController::drawRect):
785
786 2013-08-30  Tamas Czene  <tczene@inf.u-szeged.hu>
787
788         Resolve unused parameter warning in FindController.cpp
789         https://bugs.webkit.org/show_bug.cgi?id=120516
790
791         Reviewed by Darin Adler.
792
793         * WebProcess/WebPage/FindController.cpp:
794         (WebKit::FindController::drawRect):
795
796 2013-08-30  Tamas Czene  <tczene@inf.u-szeged.hu>
797
798         Resolve unused parameter warning in WKBundlePageOverlay.cpp
799         https://bugs.webkit.org/show_bug.cgi?id=120521
800
801         Reviewed by Andreas Kling.
802
803         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
804         (WKBundlePageOverlayFractionFadedIn):
805
806 2013-08-30  Antti Koivisto  <antti@apple.com>
807
808         Remove code behind ENABLE(DIALOG_ELEMENT)
809         https://bugs.webkit.org/show_bug.cgi?id=120467
810
811         Reviewed by Darin Adler.
812
813         * Configurations/FeatureDefines.xcconfig:
814
815 2013-08-29  Sam Weinig  <sam@webkit.org>
816
817         Add ENABLE gaurds for Promises
818         https://bugs.webkit.org/show_bug.cgi?id=120488
819
820         Reviewed by Andreas Kling.
821
822         * Configurations/FeatureDefines.xcconfig:
823
824 2013-08-29  Zan Dobersek  <zdobersek@igalia.com>
825
826         [Automake] libWebCoreDOM.la could use a better name
827         https://bugs.webkit.org/show_bug.cgi?id=120232
828
829         Reviewed by Martin Robinson.
830
831         * GNUmakefile.am: libWebCoreDOM has a new name - libGObjectDOMBindings.
832
833 2013-08-29  Joseph Pecoraro  <pecoraro@apple.com>
834
835         Web Inspector: Download Web Archive of Inspected Page
836         https://bugs.webkit.org/show_bug.cgi?id=119774
837
838         Reviewed by Timothy Hatcher.
839
840         Update to support InspectorFrontendHost.save's new base64Encoded
841         parameter. It means the incoming content is binary data, not a string.
842
843         * UIProcess/WebInspectorProxy.cpp:
844         (WebKit::WebInspectorProxy::save):
845         * UIProcess/WebInspectorProxy.h:
846         * UIProcess/WebInspectorProxy.messages.in:
847         * UIProcess/efl/WebInspectorProxyEfl.cpp:
848         (WebKit::WebInspectorProxy::platformSave):
849         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
850         (WebKit::WebInspectorProxy::platformSave):
851         * UIProcess/mac/WebInspectorProxyMac.mm:
852         (WebKit::WebInspectorProxy::platformSave):
853         * UIProcess/qt/WebInspectorProxyQt.cpp:
854         (WebKit::WebInspectorProxy::platformSave):
855         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
856         (WebKit::WebInspectorFrontendClient::save):
857         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
858         * WebProcess/WebPage/WebInspector.cpp:
859         (WebKit::WebInspector::save):
860         * WebProcess/WebPage/WebInspector.h:
861
862 2013-08-29  Brian Holt  <brian.holt@samsung.com>
863
864         [GTK] [WK2] TestWebKitWebView page-visibility fails
865         https://bugs.webkit.org/show_bug.cgi?id=120406
866
867         Reviewed by Gustavo Noronha Silva.
868
869         Removed the webkit prefix for document visibility properties.
870
871         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
872         (testWebViewPageVisibility):
873
874 2013-08-28  Chris Curtis  <chris_curtis@apple.com>
875
876         https://bugs.webkit.org/show_bug.cgi?id=119548
877         Refactoring Exception throws.
878
879         Reviewed by Geoffrey Garen.
880         
881         Moved setting an exception into the vm, These functions changed to use the new functionality.
882
883         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
884         (WebKit::JSNPObject::callMethod):
885         (WebKit::JSNPObject::callObject):
886         (WebKit::JSNPObject::callConstructor):
887         (WebKit::JSNPObject::throwInvalidAccessError):
888         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
889         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
890
891 2013-08-28  Anders Carlsson  <andersca@apple.com>
892
893         Allow the Flash plug-in to open its preference pane
894         https://bugs.webkit.org/show_bug.cgi?id=120431
895         <rdar://problem/14857039>
896
897         Reviewed by Andreas Kling.
898
899         Forward the -[NSWorkspace openFile:] call to the UI process and allow opening
900         the Flash preference pane (if Flash asks for it).
901
902         * PluginProcess/PluginProcess.h:
903         * PluginProcess/mac/PluginProcessMac.mm:
904         (WebKit::replacedNSWorkspace_openFile):
905         (WebKit::initializeCocoaOverrides):
906         (WebKit::PluginProcess::openFile):
907         * UIProcess/Plugins/PluginProcessProxy.h:
908         * UIProcess/Plugins/PluginProcessProxy.messages.in:
909         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
910         (WebKit::PluginProcessProxy::openURL):
911         (WebKit::shouldOpenFile):
912         (WebKit::PluginProcessProxy::openFile):
913
914 2013-08-28  Tamas Czene  <tczene@inf.u-szeged.hu>
915
916         [wk2] Resolve unused parameters in WebPlatformStrategies.cpp
917         https://bugs.webkit.org/show_bug.cgi?id=120410
918
919         Reviewed by Darin Adler.
920
921         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
922         (WebKit::WebPlatformStrategies::getPluginInfo):
923         (WebKit::WebPlatformStrategies::transientLocalStorageNamespace):
924
925 2013-08-28  Tamas Czene  <tczene@inf.u-szeged.hu>
926
927         [wk2] Resolve unused parameter warnings in the WebProcess.cpp
928         https://bugs.webkit.org/show_bug.cgi?id=120412
929
930         Reviewed by Darin Adler.
931
932         * WebProcess/WebProcess.cpp:
933         (WebKit::WebProcess::startMemorySampler):
934
935 2013-08-28  Darin Adler  <darin@apple.com>
936
937         Eliminate Pasteboard::generalPasteboard
938         https://bugs.webkit.org/show_bug.cgi?id=120392
939
940         Reviewed by Anders Carlsson.
941
942         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
943         (WebKit::WebEditorClient::updateGlobalSelection):
944         Use createForGlobalSelection instead of generalPasteboard and setSelectionMode.
945
946 2013-08-28  Ábrahám Gábor  <abrhm@inf.u-szeged.hu>
947
948         Fix unused variable warning.
949         https://bugs.webkit.org/show_bug.cgi?id=120396
950
951         Reviewed by Allan Sandfeld Jensen.
952
953         Fix unused variable compiler warning in PageOverlay.h
954
955         * WebProcess/WebPage/PageOverlay.h:
956         (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
957         (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
958
959
960 2013-08-28  Zan Dobersek  <zdobersek@igalia.com>
961
962         [GTK][WK2] Only set up a RedirectedXCompositeWindow if running under an X11 display
963         https://bugs.webkit.org/show_bug.cgi?id=120321
964
965         Reviewed by Gustavo Noronha Silva.
966
967         Only set up the RedirectedXCompositeWindow member of the WebKitWebViewBasePrivate struct
968         if we're running under an X11 display. This is now done in the webkitWebViewBaseConstructed
969         function rather than the constructor, which is removed.
970
971         This allows for the UIProcess to run in a Wayland environment even when built with accelerated
972         compositing enabled. Of course, at the moment there's no support yet for accelerated compositing
973         under Wayland, so we fall back to rendering the backing store. No changes are introduced to
974         the behavior under X11 - accelerated compositing will be used where possible, if supported.
975
976         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
977         (webkitWebViewBaseConstructed):
978
979 2013-08-28  Zan Dobersek  <zdobersek@igalia.com>
980
981         [GTK][WK2] Disable accelerated compositing under Wayland
982         https://bugs.webkit.org/show_bug.cgi?id=120347
983
984         Reviewed by Martin Robinson.
985
986         Accelerated compositing is not yet supported under the Wayland display protocol,
987         so it should be disabled. Since it is enabled by default and the GTK WK2 API does
988         not provide any way to change that, it's enough to disable it when attaching the
989         WebKitSettings object to the WebPageGroup if running under Wayland.
990
991         * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
992         (webkitWebViewGroupAttachSettingsToPageGroup):
993
994 2013-08-28  Alexandre Abreu  <alexandre.abreu@canonical.com>
995
996         Add a 'isMainFrame' parameter to QWebNavigationRequest.
997         https://bugs.webkit.org/show_bug.cgi?id=118860
998
999         Reviewed by Simon Hausmann.
1000
1001         * UIProcess/API/qt/qwebnavigationrequest.cpp:
1002         (QWebNavigationRequestPrivate::QWebNavigationRequestPrivate):
1003         (QWebNavigationRequest::QWebNavigationRequest):
1004         (QWebNavigationRequest::navigationType):
1005         (QWebNavigationRequest::isMainFrame):
1006         * UIProcess/API/qt/qwebnavigationrequest_p.h:
1007         * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
1008         * UIProcess/qt/QtWebPagePolicyClient.cpp:
1009         (WebKit::QtWebPagePolicyClient::decidePolicyForNavigationAction):
1010         * UIProcess/qt/QtWebPagePolicyClient.h:
1011
1012 2013-08-27  Luciano Wolf  <luciano.wolf@openbossa.org>
1013
1014         100% cpu usage for "transition: opacity" animation
1015         https://bugs.webkit.org/show_bug.cgi?id=120012
1016
1017         Reviewed by Noam Rosenthal.
1018
1019         Schedule animation timer after scheduling a layer flush. This way it
1020         won't overwrite animation timer with "0", thus avoiding 100% cpu usage.
1021
1022         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1023         (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
1024
1025 2013-08-27  Csaba Osztrogonác  <ossy@webkit.org>
1026
1027         [WK2][Soup] Add WebFrameNetworkingContext::webFrameLoaderClient() after r154490
1028         https://bugs.webkit.org/show_bug.cgi?id=120353
1029
1030         Reviewed by Alexey Proskuryakov.
1031
1032         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1033         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
1034         (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
1035         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
1036
1037 2013-08-26  Santosh Mahto  <santosh.ma@samsung.com>
1038
1039         Fixing compilation warning "unused parameter" in WebPageProxy.cpp
1040         https://bugs.webkit.org/show_bug.cgi?id=120205
1041
1042         Reviewed by Anders Carlsson.
1043
1044         * UIProcess/WebPageProxy.cpp:
1045         (WebKit::WebPageProxy::findPlugin):
1046         (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
1047         Added UNUSED_PARAM to avoid warning.
1048
1049 2013-08-23  Andy Estes  <aestes@apple.com>
1050
1051         Fix issues found by the Clang Static Analyzer
1052         https://bugs.webkit.org/show_bug.cgi?id=120230
1053
1054         Reviewed by Darin Adler.
1055
1056         * UIProcess/API/mac/WKBrowsingContextController.mm:
1057         (autoreleased): Don't leak CFURLs when in Objective-C GC.
1058         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
1059         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
1060         Don't leak CFStrings when in Objective-C GC.
1061
1062 2013-08-26  Csaba Osztrogonác  <ossy@webkit.org>
1063
1064         [WK2] Buildfix for non Mac platforms
1065         https://bugs.webkit.org/show_bug.cgi?id=120294
1066
1067         Reviewed by Darin Adler.
1068
1069         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
1070         (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
1071         * NetworkProcess/NetworkResourceLoader.h:
1072
1073 2013-08-26  Alexey Proskuryakov  <ap@apple.com>
1074
1075         [Mac] can-read-in-dragstart-event.html and can-read-in-copy-and-cut-events.html fail
1076         https://bugs.webkit.org/show_bug.cgi?id=113094
1077
1078         Reviewed by Darin Adler.
1079
1080         Return new pasteboard change count from all functions that change it.
1081
1082         * UIProcess/WebContext.h:
1083         * UIProcess/WebContext.messages.in:
1084         * UIProcess/mac/WebContextMac.mm:
1085         (WebKit::WebContext::pasteboardCopy):
1086         (WebKit::WebContext::addPasteboardTypes):
1087         (WebKit::WebContext::setPasteboardTypes):
1088         (WebKit::WebContext::setPasteboardPathnamesForType):
1089         (WebKit::WebContext::setPasteboardStringForType):
1090         (WebKit::WebContext::setPasteboardBufferForType):
1091         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1092         (WebKit::PDFPlugin::writeItemsToPasteboard):
1093         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1094         (WebKit::WebPlatformStrategies::copy):
1095         (WebKit::WebPlatformStrategies::changeCount):
1096         (WebKit::WebPlatformStrategies::addTypes):
1097         (WebKit::WebPlatformStrategies::setTypes):
1098         (WebKit::WebPlatformStrategies::setBufferForType):
1099         (WebKit::WebPlatformStrategies::setPathnamesForType):
1100         (WebKit::WebPlatformStrategies::setStringForType):
1101         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1102
1103 2013-08-26  Andreas Kling  <akling@apple.com>
1104
1105         Unreviewed build fix.
1106
1107         * WebProcess/WebPage/WebFrame.cpp:
1108         (WebKit::WebFrame::createWithCoreMainFrame):
1109         (WebKit::WebFrame::createSubframe):
1110
1111 2013-08-26  Pratik Solanki  <psolanki@apple.com>
1112
1113         PageGroup::groupSettings() should return a reference
1114         https://bugs.webkit.org/show_bug.cgi?id=120319
1115
1116         Reviewed by Andreas Kling.
1117
1118         PageGroup::m_groupSettings is never NULL so we can just return a reference from groupSettings().
1119
1120         * WebProcess/Storage/StorageNamespaceImpl.cpp:
1121         (WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
1122
1123 2013-08-26  Andreas Kling  <akling@apple.com>
1124
1125         WebCore: Let Page create the main Frame.
1126         <https://webkit.org/b/119964>
1127
1128         Reviewed by Anders Carlsson.
1129
1130         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1131         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1132         (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
1133
1134             This starts out with a null WebFrame* pointer now.
1135
1136         (WebKit::WebFrameLoaderClient::setWebFrame):
1137
1138             WebFrame hooks itself up through this as soon as it's constructed.
1139
1140         (WebKit::WebFrameLoaderClient::frameLoaderDestroyed):
1141
1142             Tweak an out-of-date comment. The ref() we're balancing out comes from
1143             WebFrame::create().
1144
1145         * WebProcess/WebPage/WebFrame.cpp:
1146         (WebKit::WebFrame::createWithCoreMainFrame):
1147
1148             Rewrote createMainFrame() as createWithCoreMainFrame(). The new method wraps
1149             an existing WebCore::Frame instead of creating a new one.
1150
1151         (WebKit::WebFrame::createSubframe):
1152
1153             Merged WebFrame::init() into here since the logic isn't shared with main
1154             Frame creation anymore.
1155
1156         (WebKit::WebFrame::create):
1157         (WebKit::WebFrame::WebFrame):
1158
1159             Call WebFrameLoaderClient::setWebFrame(this).
1160
1161         * WebProcess/WebPage/WebFrame.h:
1162
1163             WebFrame::m_frameLoaderClient is now an OwnPtr rather than an inline member.
1164             This way it can be created before the WebFrame.
1165
1166         * WebProcess/WebPage/WebPage.cpp:
1167         (WebKit::WebPage::WebPage):
1168
1169             Set up a WebFrameLoaderClient and pass it to the Page constructor along with
1170             the other PageClients.
1171
1172 2013-08-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1173
1174         [GTK] Add WebKit2 API for isolated worlds
1175         https://bugs.webkit.org/show_bug.cgi?id=103377
1176
1177         Reviewed by Anders Carlsson.
1178
1179         * GNUmakefile.list.am: Add new files to compilation.
1180         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
1181         * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
1182         (testWebExtensionWindowObjectCleared):
1183         (scriptDialogCallback):
1184         (runJavaScriptInIsolatedWorldFinishedCallback):
1185         (testWebExtensionIsolatedWorld):
1186         (beforeAll):
1187         * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
1188         (echoCallback):
1189         (windowObjectCleared):
1190         (getWebPage):
1191         (methodCallCallback):
1192         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
1193         (webkit_frame_get_javascript_context_for_script_world): New public
1194         method to tget the JavaScript execution context for a given script
1195         world.
1196         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
1197         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
1198         (scriptWorlds): Global WebKitScriptWorld map.
1199         (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
1200         (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
1201         given injected bundle script world.
1202         (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
1203         bundle script world wrapped by the given WebKitScriptWorld.
1204         (webkitScriptWorldWindowObjectCleared): Emit
1205         WebKitScriptWorld::window-object-cleared signal.
1206         (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
1207         the given injected bundle script world.
1208         (createDefaultScriptWorld): Create the default WebKitScriptWorld
1209         wrapping the normal world.
1210         (webkit_script_world_get_default): Return the default WebKitScriptWorld.
1211         (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
1212         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
1213         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
1214         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1215         (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
1216         (webkitWebPageCreate): Add implementation for callback
1217         didClearWindowObjectForFrame in injected bundle loader client.
1218         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1219         Include WebKitScriptWorld.h.
1220
1221 2013-08-26  Carlos Garcia Campos  <cgarcia@igalia.com>
1222
1223         [WebKit2] Offsets for WKBundlePageLoaderClient in APIClientTraits are wrong
1224         https://bugs.webkit.org/show_bug.cgi?id=120268
1225
1226         Reviewed by Anders Carlsson.
1227
1228         * Shared/APIClientTraits.cpp: Use always the first member of every
1229         version as the offset of the version.
1230
1231 2013-08-26  Carlos Garcia Campos  <cgarcia@igalia.com>
1232
1233         [GTK] Add missing initializer for pluginLoadPolicy in WKPageLoaderClient
1234         https://bugs.webkit.org/show_bug.cgi?id=120289
1235
1236         Reviewed by Philippe Normand.
1237
1238         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
1239         (attachLoaderClientToView): Add initializer for pluginLoadPolicy
1240         and rename the comment of the previous one as
1241         pluginLoadPolicy_deprecatedForUseWithV2.
1242
1243 2013-08-26  Carlos Garcia Campos  <cgarcia@igalia.com>
1244
1245         [GTK] webkitCredentialGetCredential returns a temporary in g_return_val_if_fail
1246         https://bugs.webkit.org/show_bug.cgi?id=120287
1247
1248         Reviewed by Philippe Normand.
1249
1250         * UIProcess/API/gtk/WebKitCredential.cpp:
1251         (webkitCredentialGetCredential): Use ASSERT() instead of
1252         g_return_val_if_fail() since this is a private function.
1253
1254 2013-08-25  Zan Dobersek  <zdobersek@igalia.com>
1255
1256         Unreviewed GTK build fix after r154565.
1257
1258         * UIProcess/API/gtk/tests/TestInspector.cpp: Include the Vector header.
1259         * UIProcess/API/gtk/tests/TestResources.cpp: Ditto.
1260
1261 2013-08-24  Darin Adler  <darin@apple.com>
1262
1263         Frame::tree should return a reference instead of a pointer
1264         https://bugs.webkit.org/show_bug.cgi?id=120259
1265
1266         Reviewed by Andreas Kling.
1267
1268         * WebProcess/Plugins/PluginView.cpp:
1269         (WebKit::PluginView::performJavaScriptURLRequest):
1270         * WebProcess/Storage/StorageAreaMap.cpp:
1271         (WebKit::StorageAreaMap::dispatchSessionStorageEvent):
1272         (WebKit::StorageAreaMap::dispatchLocalStorageEvent):
1273         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1274         (WebKit::WebFrameLoaderClient::createFrame):
1275         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
1276         (WebKit::WebContextMenuClient::searchWithSpotlight):
1277         * WebProcess/WebPage/FindController.cpp:
1278         (WebKit::frameWithSelection):
1279         (WebKit::FindController::rectsForTextMatches):
1280         * WebProcess/WebPage/WebFrame.cpp:
1281         (WebKit::WebFrame::init):
1282         (WebKit::WebFrame::contentsAsString):
1283         (WebKit::WebFrame::name):
1284         (WebKit::WebFrame::childFrames):
1285         * WebProcess/WebPage/WebPage.cpp:
1286         (WebKit::WebPage::clearMainFrameName):
1287         (WebKit::WebPage::setDrawsBackground):
1288         (WebKit::WebPage::setDrawsTransparentBackground):
1289         (WebKit::WebPage::setWindowResizerSize):
1290         (WebKit::frameWithSelection):
1291         (WebKit::WebPage::unmarkAllMisspellings):
1292         (WebKit::WebPage::unmarkAllBadGrammar):
1293         (WebKit::pageContainsAnyHorizontalScrollbars):
1294         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1295         (WebKit::TiledCoreAnimationDrawingArea::forceRepaint):
1296         Use tree(). instead of tree()->.
1297
1298 2013-08-24  Commit Queue  <commit-queue@webkit.org>
1299
1300         Unreviewed, rolling out r154545.
1301         http://trac.webkit.org/changeset/154545
1302         https://bugs.webkit.org/show_bug.cgi?id=120252
1303
1304         Broke WebKit2 API tests (Requested by andersca on #webkit).
1305
1306         * GNUmakefile.list.am:
1307         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
1308         * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
1309         (beforeAll):
1310         * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
1311         (methodCallCallback):
1312         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
1313         (webkit_frame_get_javascript_global_context):
1314         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
1315         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Removed.
1316         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Removed.
1317         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Removed.
1318         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1319         (webkitWebPageCreate):
1320         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1321
1322 2013-08-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1323
1324         [GTK] Add WebKit2 API for isolated worlds
1325         https://bugs.webkit.org/show_bug.cgi?id=103377
1326
1327         Reviewed by Anders Carlsson.
1328
1329         * GNUmakefile.list.am: Add new files to compilation.
1330         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
1331         * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
1332         (testWebExtensionWindowObjectCleared):
1333         (scriptDialogCallback):
1334         (runJavaScriptInIsolatedWorldFinishedCallback):
1335         (testWebExtensionIsolatedWorld):
1336         (beforeAll):
1337         * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
1338         (echoCallback):
1339         (windowObjectCleared):
1340         (getWebPage):
1341         (methodCallCallback):
1342         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
1343         (webkit_frame_get_javascript_context_for_script_world): New public
1344         method to tget the JavaScript execution context for a given script
1345         world.
1346         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
1347         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
1348         (scriptWorlds): Global WebKitScriptWorld map.
1349         (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
1350         (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
1351         given injected bundle script world.
1352         (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
1353         bundle script world wrapped by the given WebKitScriptWorld.
1354         (webkitScriptWorldWindowObjectCleared): Emit
1355         WebKitScriptWorld::window-object-cleared signal.
1356         (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
1357         the given injected bundle script world.
1358         (createDefaultScriptWorld): Create the default WebKitScriptWorld
1359         wrapping the normal world.
1360         (webkit_script_world_get_default): Return the default WebKitScriptWorld.
1361         (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
1362         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
1363         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
1364         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1365         (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
1366         (webkitWebPageCreate): Add implementation for callback
1367         didClearWindowObjectForFrame in injected bundle loader client.
1368         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1369         Include WebKitScriptWorld.h.
1370
1371 2013-08-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1372
1373         [GTK] Expose WebKitFrame in WebKit2GTK+ web extensions API
1374         https://bugs.webkit.org/show_bug.cgi?id=119743
1375
1376         Reviewed by Anders Carlsson.
1377
1378         * GNUmakefile.list.am: Add new files to compilation.
1379         * Shared/APIClientTraits.cpp: Update for new interface version.
1380         * Shared/APIClientTraits.h: Ditto.
1381         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add WebKitFrame
1382         section.
1383         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new public
1384         symbols.
1385         * UIProcess/API/gtk/docs/webkit2gtk.types: Add
1386         webkit_frame_get_type.
1387         * UIProcess/API/gtk/tests/FrameTest.cpp: Added.
1388         (WebKitFrameTest::create):
1389         (WebKitFrameTest::webPageFromArgs):
1390         (WebKitFrameTest::testMainFrame):
1391         (WebKitFrameTest::testURI):
1392         (WebKitFrameTest::testJavaScriptContext):
1393         (WebKitFrameTest::runTest):
1394         (registerTests):
1395         * UIProcess/API/gtk/tests/GNUmakefile.am: Add new test files.
1396         * UIProcess/API/gtk/tests/TestFrame.cpp: Added.
1397         (webkitFrameTestRun):
1398         (testWebKitFrameMainFrame):
1399         (testWebKitFrameURI):
1400         (testWebKitFrameJavaScriptContext):
1401         (beforeAll):
1402         (afterAll):
1403         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add
1404         willDestroyFrame callback to the injected bundle loader client, to
1405         notify the client when a frame is about to be destroyed.
1406         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp: Added.
1407         (webkit_frame_class_init):
1408         (webkitFrameCreate):
1409         (webkit_frame_is_main_frame):
1410         (webkit_frame_get_uri):
1411         (webkit_frame_get_javascript_global_context):
1412         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h: Added.
1413         * WebProcess/InjectedBundle/API/gtk/WebKitFramePrivate.h: Added.
1414         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1415         (webkitFrameGetOrCreate): Helper function to create a WebKitFrame
1416         wrapping the given WebFrame or returning the wrapper if it already
1417         exists.
1418         (willDestroyFrame): Remove the WebKitFrame wrapping the given
1419         WebFrame if it exists.
1420         (webkitWebPageCreate): Add willDestroyFrame implementation to
1421         injected bundle loader client.
1422         (webkit_web_page_get_main_frame): Return the main frame of the
1423         page.
1424         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
1425         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1426         Include WebKitFrame.h.
1427         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1428         (WebKit::InjectedBundlePageLoaderClient::willDestroyFrame): New
1429         callback to be called when a frame is about to be destroyed.
1430         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1431         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1432         (WebKit::WebFrameLoaderClient::frameLoaderDestroyed): Call
1433         willDestroyFrame callback of injected bundle loader client.
1434         * WebProcess/qt/QtBuiltinBundlePage.cpp:
1435         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage): Add
1436         willDestroyFrame callback.
1437
1438 2013-08-24  Antti Koivisto  <antti@apple.com>
1439
1440         Revert accidental change.
1441         
1442         Not reviewed.
1443
1444         * WebProcess/com.apple.WebProcess.sb.in:
1445
1446 2013-08-23  Beth Dakin  <bdakin@apple.com>
1447
1448         REGRESSION (r132545): Some PDFs generated by WebKit are blank when viewed in 
1449         Adobe Reader
1450         https://bugs.webkit.org/show_bug.cgi?id=120240
1451         -and corresponding-
1452         <rdar://problem/14634453>
1453
1454         Reviewed by Anders Carlsson.
1455
1456         Hook up new WebSystemInterface API to find out if the current context is the PDF 
1457         context. 
1458
1459         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1460         (InitWebCoreSystemInterface):
1461
1462 2013-08-23  Alexey Proskuryakov  <ap@apple.com>
1463
1464         [WK2] Assertion failures when loading XSL stylesheets with NetworkProcess
1465         https://bugs.webkit.org/show_bug.cgi?id=120186
1466         <rdar://problem/14080273>
1467
1468         Reviewed by Brady Eidson.
1469
1470         Covered by many existing tests.
1471
1472         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1473         (WebKit::WebPlatformStrategies::loadResourceSynchronously): Pass frame ID and page ID.
1474         They are mostly needed for authentication, which is not supported with sync requests,
1475         but it will be supported some day.
1476
1477         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
1478         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1479         (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
1480         Added a way to get frame loader client from WebKit NetworkingContext subclass.
1481
1482 2013-08-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1483
1484         [GTK] Wrong interface version used in WebKitWebPage for loader client
1485         https://bugs.webkit.org/show_bug.cgi?id=120199
1486
1487         Reviewed by Gustavo Noronha Silva.
1488
1489         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1490         (webkitWebPageCreate): Use kWKBundlePageLoaderClientCurrentVersion
1491         instead of kWKBundlePageResourceLoadClientCurrentVersion in loader
1492         client initialization.
1493
1494 2013-08-22  Simon Cooper  <scooper@apple.com>
1495
1496         Need to disable FakeSYSVSHM when sandboxing is not enabled
1497         https://bugs.webkit.org/show_bug.cgi?id=120182
1498         <rdar://problem/14814461>
1499
1500         Reviewed by Alexey Proskuryakov.
1501
1502         When not in a sandbox do not enable the FakeSYSVSHIM. This
1503         allows LocalConnection to work when Flash Player is run in
1504         "Unsafe Mode".
1505
1506         * PluginProcess/mac/PluginProcessShim.mm:
1507         (WebKit::shim_disabled):
1508
1509 2013-08-22  Andy Estes  <aestes@apple.com>
1510
1511         <https://webkit.org/b/120180> Fix issues with OTHER_LDFLAGS in various .xcconfig files
1512
1513         Reviewed by David Kilzer.
1514
1515         Adding ld flags for ASAN overwrote the unexported symbol flags we were
1516         previously specifying. Since the unexported symbol ld flags are only
1517         needed for the framework target, move them to WebKit2.xcconfig where we
1518         can add them to OTHER_LDFLAGS along with the ASAN values inherited from
1519         DebugRelease.xcconfig (and other values).
1520
1521         * Configurations/Base.xcconfig: Removed the unexported symbol ld flags.
1522         * Configurations/WebKit2.xcconfig: ... and moved them here.
1523
1524 2013-08-21  Tim Horton  <timothy_horton@apple.com>
1525
1526         Another null-deref under WebDragClient::startDrag
1527         https://bugs.webkit.org/show_bug.cgi?id=120145
1528         <rdar://problem/14650652>
1529
1530         Reviewed by Simon Fraser.
1531
1532         convertImageToBitmap can legitimately return null, so don't dereference it.
1533
1534         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
1535         (WebKit::WebDragClient::startDrag):
1536
1537 2013-08-21  Beth Dakin  <bdakin@apple.com>
1538
1539         <https://webkit.org/b/120140> Clients expect didFirstLayout-related calls to 
1540         happen before didLayout
1541
1542         Reviewed by Anders Carlsson.
1543
1544         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1545         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
1546
1547 2013-08-21  Alexey Proskuryakov  <ap@apple.com>
1548
1549         REGRESSION (r145458?): WebProcess doesn't respect UI process localization
1550         https://bugs.webkit.org/show_bug.cgi?id=120096
1551
1552         Reviewed by Darin Adler.
1553
1554         We used to get into a situation where CFBundle thought that we had no good localization,
1555         and used one passed as default. This is never the case with mixed localizations,
1556         so default is just ignored now.
1557
1558         I think that the previous behavior was a bit of a hack. As WebProcess is not localized,
1559         it's more honest to say that we want mixed localizations, and force the language
1560         to match UI process localization.
1561
1562         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
1563         (WebKit::ChildProcessMain): Don't set default localization, it's not taken into
1564         consideration unless all other attempts to compute bundle localization fail.
1565
1566         * UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::createProcess): Pass
1567         UI process localization as -AppleLanguages argument, so that Core Foundation uses
1568         that instead of actual user languages. We want to match UI process localization.
1569
1570 2013-08-20  Gavin Barraclough  <barraclough@apple.com>
1571
1572         https://bugs.webkit.org/show_bug.cgi?id=120093
1573         Remove getOwnPropertyDescriptor trap
1574
1575         Reviewed by Geoff Garen.
1576
1577         All implementations of this method are now called via the method table, and equivalent in behaviour.
1578         Remove all duplicate implementations (and the method table trap), and add a single member function implementation on JSObject.
1579
1580         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1581         * WebProcess/Plugins/Netscape/JSNPObject.h:
1582             - remove getOwnPropertyDescriptor
1583
1584 2013-08-20  Pratik Solanki  <psolanki@apple.com>
1585
1586         <https://webkit.org/b/120029> Document::markers() should return a reference
1587
1588         Reviewed by Andreas Kling.
1589
1590         Document::m_markers is never NULL so return a reference from Document::markers(). Also mark
1591         m_markers as const and initialize it in member initialization.
1592
1593         * WebProcess/WebPage/FindController.cpp:
1594         (WebKit::FindController::rectsForTextMatches):
1595         * WebProcess/WebPage/WebPage.cpp:
1596         (WebKit::WebPage::unmarkAllMisspellings):
1597         (WebKit::WebPage::unmarkAllBadGrammar):
1598
1599 2013-08-20  Gavin Barraclough  <barraclough@apple.com>
1600
1601         https://bugs.webkit.org/show_bug.cgi?id=120053
1602         Remove custom getOwnPropertyDescriptor for JSNPObject
1603
1604         Reviewed by Oliver Hunt.
1605
1606         Think this is the last one!
1607
1608         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1609             - Remove custom getOwnPropertyDescriptor implementation.
1610
1611 2013-08-20  Anton Obzhirov  <a.obzhirov@samsung.com>
1612
1613         <https://webkit.org/b/119487> [Gtk] Cancel authentication on load failed
1614
1615         Reviewed by Martin Robinson.
1616
1617         Added callback to handle load-failed event in default authentication dialog.
1618         Authentication request gets cancelled and the dialog widget gets destroyed.
1619
1620         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
1621         (pageLoadFailed):
1622         (webkitAuthenticationDialogInitialize):
1623         (webkitAuthenticationDialogDispose):
1624         (webkit_authentication_dialog_class_init):
1625         (webkitAuthenticationDialogNew):
1626         * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
1627         * UIProcess/API/gtk/WebKitWebView.cpp:
1628         (webkitWebViewAuthenticate):
1629
1630 2013-08-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1631
1632         [Qt][WK2] Doesn't build without Plugin-process
1633         https://bugs.webkit.org/show_bug.cgi?id=120060
1634
1635         Reviewed by Jocelyn Turcotte.
1636
1637         Disable netscape plugin api in WebKit2 when the plugin architecture is unsupported for WebKit2.
1638
1639         * Target.pri:
1640
1641 2013-08-19  Ryosuke Niwa  <rniwa@webkit.org>
1642
1643         <https://webkit.org/b/120049> Delete code for Snow Leopard
1644
1645         Reviewed by Benjamin Poulain.
1646
1647         * NetworkProcess/mac/NetworkProcessMac.mm:
1648         (WebKit::overrideSystemProxies):
1649         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
1650         * WebKit2Prefix.h:
1651
1652 2013-08-19  Beth Dakin  <bdakin@apple.com>
1653
1654         <https://webkit.org/b/120027> AXObjectCache's 
1655         accessibilityEnhancedUserInterfaceEnabled should be initialized on process 
1656         creation
1657
1658         Reviewed by Sam Weinig.
1659
1660         Right now we only call AXObjectCache::setEnhancedAccessibility() when AppKit sends 
1661         us a notification indicating that the value has changed. We should not have to 
1662         rely on that to properly initialize this value. It should be done with the 
1663         WebProcessCreationParamters. 
1664
1665         * Shared/WebProcessCreationParameters.cpp:
1666         (WebKit::WebProcessCreationParameters::encode):
1667         (WebKit::WebProcessCreationParameters::decode):
1668         * Shared/WebProcessCreationParameters.h:
1669         * UIProcess/mac/WebContextMac.mm:
1670         (WebKit::WebContext::platformInitializeWebProcess):
1671         * WebProcess/mac/WebProcessMac.mm:
1672         (WebKit::WebProcess::platformInitializeWebProcess):
1673
1674 2013-08-19  Pratik Solanki  <psolanki@apple.com>
1675
1676         <https://webkit.org/b/119918> Frame::selection() should return a reference
1677
1678         Reviewed by Darin Adler.
1679
1680         m_selection is never NULL so return a reference from Frame::selection(). Also removed some
1681         unnecessary null checks and assert diff ts exposed as a result.
1682
1683         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1684         (WebKit::WebEditorClient::updateGlobalSelection):
1685         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
1686         (WebKit::collapseSelection):
1687         (WebKit::WebEditorClient::updateGlobalSelection):
1688         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
1689         (WebKit::WebContextMenuClient::lookUpInDictionary):
1690         (WebKit::WebContextMenuClient::searchWithSpotlight):
1691         * WebProcess/WebPage/FindController.cpp:
1692         (WebKit::frameWithSelection):
1693         (WebKit::FindController::updateFindUIAfterPageScroll):
1694         (WebKit::FindController::getFindIndicatorBitmapAndRect):
1695         (WebKit::FindController::getImageForFindMatch):
1696         (WebKit::FindController::selectFindMatch):
1697         (WebKit::FindController::updateFindIndicator):
1698         (WebKit::FindController::drawRect):
1699         * WebProcess/WebPage/WebPage.cpp:
1700         (WebKit::WebPage::editorState):
1701         (WebKit::WebPage::scaledSnapshotWithOptions):
1702         (WebKit::WebPage::centerSelectionInVisibleArea):
1703         (WebKit::frameWithSelection):
1704         (WebKit::WebPage::clearSelection):
1705         (WebKit::WebPage::confirmComposition):
1706         (WebKit::WebPage::setComposition):
1707         (WebKit::WebPage::currentSelectionAsRange):
1708         * WebProcess/WebPage/mac/WebPageMac.mm:
1709         (WebKit::WebPage::setComposition):
1710         (WebKit::WebPage::insertText):
1711         (WebKit::WebPage::insertDictatedText):
1712         (WebKit::WebPage::getMarkedRange):
1713         (WebKit::WebPage::getSelectedRange):
1714         (WebKit::WebPage::getAttributedSubstringFromRange):
1715         (WebKit::WebPage::characterIndexForPoint):
1716         (WebKit::convertToRange):
1717         (WebKit::WebPage::performDictionaryLookupAtLocation):
1718         (WebKit::WebPage::readSelectionFromPasteboard):
1719         (WebKit::WebPage::getStringSelectionForPasteboard):
1720         (WebKit::WebPage::getDataSelectionForPasteboard):
1721
1722 2013-08-18  Darin Adler  <darin@apple.com>
1723
1724         <https://webkit.org/b/119989> Make use of Node::ownerDocument a compile time error
1725
1726         Reviewed by Sam Weinig.
1727
1728         * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
1729         (WebKit::PDFPluginChoiceAnnotation::createAnnotationElement): Use document instead of
1730         ownerDocument.
1731         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
1732         (WebKit::PDFPluginTextAnnotation::createAnnotationElement): Ditto.
1733
1734 2013-08-18  Dan Bernstein  <mitz@apple.com>
1735
1736         Fix clean engineering builds after r154251.
1737
1738         * WebKit2.xcodeproj/project.pbxproj: Removed references to the OfflineStorage XPC services
1739         from the “Copy XPC services for engineering builds” build phase.
1740
1741 2013-08-18  Gavin Barraclough  <barraclough@apple.com>
1742
1743         https://bugs.webkit.org/show_bug.cgi?id=119972
1744         Add attributes field to PropertySlot
1745
1746         Reviewed by Geoff Garen.
1747
1748         For all JSC types, this makes getOwnPropertyDescriptor redundant.
1749         There will be a bit more hacking required in WebCore to remove GOPD whilst maintaining current behaviour.
1750         (Current behaviour is in many ways broken, particularly in that GOPD & GOPS are inconsistent, but we should fix incrementally).
1751
1752         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1753         (WebKit::JSNPObject::getOwnPropertySlot):
1754         (WebKit::JSNPObject::getOwnPropertyDescriptor):
1755             - Pass attributes to PropertySlot::set* methods.
1756
1757 2013-08-16  Sam Weinig  <sam@webkit.org>
1758
1759         <https://webkit.org/b/119911> Remove the unused OfflineStorageProcess
1760
1761         Reviewed by Darin Adler.
1762
1763         * Configurations/OfflineStorageProcess.xcconfig: Removed.
1764         * Configurations/OfflineStorageService.Development.xcconfig: Removed.
1765         * Configurations/OfflineStorageService.xcconfig: Removed.
1766         * DerivedSources.make:
1767         * OfflineStorageProcess: Removed.
1768         * OfflineStorageProcess/EntryPoint: Removed.
1769         * OfflineStorageProcess/EntryPoint/mac: Removed.
1770         * OfflineStorageProcess/EntryPoint/mac/LegacyProcess: Removed.
1771         * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed.
1772         * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/OfflineStorageProcessMain.mm: Removed.
1773         * OfflineStorageProcess/EntryPoint/mac/XPCService: Removed.
1774         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService: Removed.
1775         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development: Removed.
1776         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development/Info.plist: Removed.
1777         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService/Info.plist: Removed.
1778         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageServiceEntryPoint.mm: Removed.
1779         * OfflineStorageProcess/OfflineStorageProcess.cpp: Removed.
1780         * OfflineStorageProcess/OfflineStorageProcess.h: Removed.
1781         * OfflineStorageProcess/OfflineStorageProcess.messages.in: Removed.
1782         * OfflineStorageProcess/mac: Removed.
1783         * OfflineStorageProcess/mac/OfflineStorageProcessMac.mm: Removed.
1784         * OfflineStorageProcess/mac/com.apple.WebKit.OfflineStorage.sb: Removed.
1785         * Scripts/webkit2/messages.py:
1786         * Shared/OfflineStorage: Removed.
1787         * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.cpp: Removed.
1788         * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.h: Removed.
1789         * WebKit2.xcodeproj/project.pbxproj:
1790         Remove.
1791
1792 2013-08-17  Darin Adler  <darin@apple.com>
1793
1794         <https://webkit.org/b/119941> Make Page::dragController return a reference
1795
1796         Reviewed by Andreas Kling.
1797
1798         * WebProcess/WebPage/WebPage.cpp:
1799         (WebKit::WebPage::performDragControllerAction):
1800         (WebKit::WebPage::dragEnded):
1801         Updated call sites.
1802
1803 2013-08-17  David Kilzer  <ddkilzer@apple.com>
1804
1805         WebKit2 fails to build with trunk clang: error: 'WebPluginSiteDataManagerh' is used as a header guard here, followed by #define of a different macro [-Werror,-Wheader-guard]
1806         <http://webkit.org/b/119935>
1807         <rdar://problem/14764131>
1808
1809         Reviewed by Darin Adler.
1810
1811         * UIProcess/Plugins/WebPluginSiteDataManager.h: Fix typo
1812         introduced in r78647.
1813
1814 2013-08-16  Pratik Solanki  <psolanki@apple.com>
1815
1816         <https://webkit.org/b/119852> Frame::scriptController() should return a reference
1817
1818         Reviewed by Andreas Kling.
1819
1820         m_script is never NULL so we can just return a reference. Also remove some pointless null
1821         checks as a result of doing this.
1822
1823         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1824         (WebKit::NPRuntimeObjectMap::globalObject):
1825         * WebProcess/Plugins/PluginView.cpp:
1826         (WebKit::PluginView::performJavaScriptURLRequest):
1827         (WebKit::PluginView::windowScriptNPObject):
1828         (WebKit::PluginView::pluginElementNPObject):
1829         * WebProcess/WebPage/WebFrame.cpp:
1830         (WebKit::WebFrame::jsContext):
1831         (WebKit::WebFrame::jsContextForWorld):
1832         (WebKit::WebFrame::jsWrapperForWorld):
1833         * WebProcess/WebPage/WebInspector.cpp:
1834         (WebKit::WebInspector::didSave):
1835         (WebKit::WebInspector::didAppend):
1836         * WebProcess/WebPage/WebPage.cpp:
1837         (WebKit::WebPage::runJavaScriptInMainFrame):
1838
1839 2013-08-16  Brady Eidson  <beidson@apple.com>
1840
1841         (NetworkProcess)  Sync XHRs should load using async ResourceHandles, not ResourceHandle::loadResourceSynchronously
1842         https://bugs.webkit.org/show_bug.cgi?id=119493
1843
1844         Reviewed by Alexey Proskuryakov.
1845
1846         This patch does the following:
1847           - Consolidates SchedulableLoader and NetworkResourceLoader into one class.
1848           - Removes SyncNetworkResourceLoader.
1849           - Adds a NetworkLoaderClient interface that customizes certain behaviors of the NetworkResourceLoader.
1850           - Implements a SynchronousNetworkLoaderClient and AsynchronousNetworkLoaderClient for the two different types of loads.
1851
1852         The AsynchronousNetworkLoaderClient results in messaging back progress to the WebProcess as the load progresses.
1853         The SynchronousNetworkLoaderClient accumulates the response, data, and error to be communicated back to the WebProcess
1854         only when the load is complete.
1855
1856         Update small swaths of code to reflect that NetworkResourceLoader is the One True Loader (tm):
1857         * NetworkProcess/HostRecord.cpp:
1858         (WebKit::HostRecord::scheduleResourceLoader):
1859         (WebKit::HostRecord::addLoaderInProgress):
1860         (WebKit::removeLoaderFromQueue):
1861         (WebKit::HostRecord::removeLoader):
1862         (WebKit::HostRecord::servePendingRequestsForQueue):
1863         (WebKit::HostRecord::limitsRequests):
1864         * NetworkProcess/HostRecord.h:
1865
1866         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1867         (WebKit::NetworkConnectionToWebProcess::didClose):
1868         (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
1869         (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier):
1870         * NetworkProcess/NetworkConnectionToWebProcess.h:
1871
1872         * NetworkProcess/NetworkProcess.cpp:
1873         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1874         (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
1875         (WebKit::NetworkResourceLoadScheduler::removeLoader):
1876         (WebKit::NetworkResourceLoadScheduler::receivedRedirect):
1877         (WebKit::NetworkResourceLoadScheduler::removeScheduledLoaders):
1878         (WebKit::NetworkResourceLoadScheduler::scheduleRemoveLoader):
1879         * NetworkProcess/NetworkResourceLoadScheduler.h:
1880
1881         Combine ScheduleableLoader and NetworkResourceLoader into NetworkResourceLoader:
1882         * NetworkProcess/NetworkResourceLoader.cpp:
1883         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
1884         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
1885         (WebKit::NetworkResourceLoader::isSynchronous):
1886         (WebKit::NetworkResourceLoader::start):
1887         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
1888         (WebKit::NetworkResourceLoader::didReceiveBuffer):
1889         (WebKit::NetworkResourceLoader::didFinishLoading):
1890         (WebKit::NetworkResourceLoader::didFail):
1891         (WebKit::NetworkResourceLoader::willSendRequestAsync):
1892         (WebKit::NetworkResourceLoader::continueWillSendRequest):
1893         (WebKit::NetworkResourceLoader::didSendData):
1894         (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
1895         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
1896         (WebKit::NetworkResourceLoader::consumeSandboxExtensions):
1897         (WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
1898         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
1899         * NetworkProcess/NetworkResourceLoader.h:
1900         (WebKit::NetworkResourceLoader::create):
1901         (WebKit::NetworkResourceLoader::connectionToWebProcess):
1902         (WebKit::NetworkResourceLoader::priority):
1903         (WebKit::NetworkResourceLoader::request):
1904         (WebKit::NetworkResourceLoader::isLoadingMainResource):
1905         (WebKit::NetworkResourceLoader::setHostRecord):
1906         (WebKit::NetworkResourceLoader::hostRecord):
1907         (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
1908
1909         Add an abstract NetworkLoaderClient to adapt a load to be either synchronous or asynchronous:
1910         * NetworkProcess/NetworkLoaderClient.h:
1911         (WebKit::NetworkLoaderClient::~NetworkLoaderClient):
1912         (WebKit::NetworkLoaderClient::isSynchronous):
1913         (WebKit::NetworkLoaderClient::NetworkLoaderClient):
1914
1915         The asynchronous loader client, primarily to message progress back to the WebProcess as it happens:
1916         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp: Added.
1917         (WebKit::AsynchronousNetworkLoaderClient::AsynchronousNetworkLoaderClient):
1918         (WebKit::AsynchronousNetworkLoaderClient::willSendRequest):
1919         (WebKit::AsynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1920         (WebKit::AsynchronousNetworkLoaderClient::didReceiveResponse):
1921         (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
1922         (WebKit::AsynchronousNetworkLoaderClient::didSendData):
1923         (WebKit::AsynchronousNetworkLoaderClient::didFinishLoading):
1924         (WebKit::AsynchronousNetworkLoaderClient::didFail):
1925         * NetworkProcess/AsynchronousNetworkLoaderClient.h:
1926         (WebKit::AsynchronousNetworkLoaderClient::create):
1927
1928         The synchronous loader client, primarily to accumulate results of the load to send back to the WebProcess all at once:
1929         * NetworkProcess/SynchronousNetworkLoaderClient.cpp: Added.
1930         (WebKit::SynchronousNetworkLoaderClient::SynchronousNetworkLoaderClient):
1931         (WebKit::SynchronousNetworkLoaderClient::~SynchronousNetworkLoaderClient):
1932         (WebKit::SynchronousNetworkLoaderClient::willSendRequest):
1933         (WebKit::SynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1934         (WebKit::SynchronousNetworkLoaderClient::didReceiveResponse):
1935         (WebKit::SynchronousNetworkLoaderClient::didReceiveBuffer):
1936         (WebKit::SynchronousNetworkLoaderClient::didFinishLoading):
1937         (WebKit::SynchronousNetworkLoaderClient::didFail):
1938         (WebKit::SynchronousNetworkLoaderClient::sendDelayedReply):
1939         * NetworkProcess/SynchronousNetworkLoaderClient.h: Added.
1940         (WebKit::SynchronousNetworkLoaderClient::create):
1941
1942         * NetworkProcess/SchedulableLoader.cpp: Removed.
1943         * NetworkProcess/SchedulableLoader.h: Removed.
1944         * NetworkProcess/SyncNetworkResourceLoader.cpp: Removed.
1945         * NetworkProcess/SyncNetworkResourceLoader.h: Removed.
1946
1947         * WebKit2.xcodeproj/project.pbxproj:
1948
1949 2013-08-16  Gabor Rapcsanyi  <rgabor@webkit.org>
1950
1951         [Qt][ARM] Unreviewed buildfix after 154127.
1952
1953         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Add missing header.
1954
1955 2013-08-15  Ryuan Choi  <ryuan.choi@samsung.com>
1956
1957         [EFL] Unreviewed build fix after r154142 and r154144.
1958
1959         * UIProcess/WebContext.cpp:
1960         (WebKit::WebContext::useTestingNetworkSession):
1961         Fixed build break when NETWORK_PROCESS is disabled after r154144.
1962
1963 2013-08-15  Chris Fleizach  <cfleizach@apple.com>
1964
1965         <https://webkit.org/b/119858> AX: Crash: com.apple.WebKit.WebContent at com.apple.WebKit2: WebKit::WebPage::accessibilityObjectForMainFramePlugin + 8
1966
1967         Reviewed by Tim Horton.
1968
1969         Ensure that the page is available before accessing it.
1970
1971         * WebProcess/WebPage/mac/WebPageMac.mm:
1972         (WebKit::WebPage::accessibilityObjectForMainFramePlugin):
1973
1974 2013-08-15  Alexey Proskuryakov  <ap@apple.com>
1975
1976         [WK2] NetworkProcess should use a temporary storage session for test
1977         https://bugs.webkit.org/show_bug.cgi?id=119855
1978
1979         Reviewed by Darin Adler.
1980
1981         We used to have a bundle API for WebKitTestRunner to do this in injected bundle, but
1982         NetworkProcess has no injected bundle.
1983
1984         Added a WKContext API, sending the information to NetworkProcess with initialization
1985         parameters. Reworked WebProcess path to do the same for consistency - bundle API
1986         is better per se, but not when we also need to have another one.
1987
1988         * NetworkProcess/NetworkProcess.cpp:
1989         (WebKit::NetworkProcess::initializeNetworkProcess):
1990         * Shared/Network/NetworkProcessCreationParameters.cpp:
1991         (WebKit::NetworkProcessCreationParameters::encode):
1992         (WebKit::NetworkProcessCreationParameters::decode):
1993         * Shared/Network/NetworkProcessCreationParameters.h:
1994         * Shared/WebProcessCreationParameters.cpp:
1995         (WebKit::WebProcessCreationParameters::encode):
1996         (WebKit::WebProcessCreationParameters::decode):
1997         * Shared/WebProcessCreationParameters.h:
1998         * UIProcess/API/C/WKContext.cpp:
1999         (WKContextUseTestingNetworkSession):
2000         * UIProcess/API/C/WKContextPrivate.h:
2001         * UIProcess/WebContext.cpp:
2002         (WebKit::WebContext::WebContext):
2003         (WebKit::WebContext::ensureNetworkProcess):
2004         (WebKit::WebContext::createNewWebProcess):
2005         (WebKit::WebContext::useTestingNetworkSession):
2006         * UIProcess/WebContext.h:
2007         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
2008         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
2009         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2010         * WebProcess/InjectedBundle/InjectedBundle.h:
2011         * WebProcess/WebProcess.cpp:
2012         (WebKit::WebProcess::initializeWebProcess):
2013
2014 2013-08-15  Anders Carlsson  <andersca@apple.com>
2015
2016         <https://webkit.org/b/119859> Frame::loader() should return a reference
2017
2018         Reviewed by Andreas Kling.
2019
2020         * Shared/WebRenderLayer.cpp:
2021         (WebKit::WebRenderLayer::create):
2022         * Shared/WebRenderObject.cpp:
2023         (WebKit::WebRenderObject::create):
2024         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
2025         (WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):
2026         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
2027         (WKBundleFrameGetFrameLoadState):
2028         (WKBundleFrameClearOpener):
2029         (WKBundleFrameCallShouldCloseOnWebView):
2030         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
2031         (WebKit::InjectedBundleNodeHandle::documentFrame):
2032         (WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
2033         (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
2034         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2035         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
2036         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
2037         (WebKit::InjectedBundleDOMWindowExtension::frame):
2038         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
2039         (WebKit::InjectedBundleHitTestResult::frame):
2040         (WebKit::InjectedBundleHitTestResult::targetFrame):
2041         * WebProcess/Plugins/PDF/PDFPlugin.mm:
2042         (WebKit::PDFPlugin::clickedLink):
2043         * WebProcess/Plugins/PluginView.cpp:
2044         (WebKit::webPage):
2045         (WebKit::PluginView::didFailToInitializePlugin):
2046         (WebKit::PluginView::performFrameLoadURLRequest):
2047         (WebKit::PluginView::userAgent):
2048         (WebKit::PluginView::loadURL):
2049         (WebKit::PluginView::cancelManualStreamLoad):
2050         (WebKit::PluginView::proxiesForURL):
2051         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2052         (WebKit::WebChromeClient::focusedElementChanged):
2053         (WebKit::WebChromeClient::focusedFrameChanged):
2054         (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
2055         (WebKit::WebChromeClient::closeWindowSoon):
2056         (WebKit::WebChromeClient::runJavaScriptAlert):
2057         (WebKit::WebChromeClient::runJavaScriptConfirm):
2058         (WebKit::WebChromeClient::runJavaScriptPrompt):
2059         (WebKit::WebChromeClient::unavailablePluginButtonClicked):
2060         (WebKit::WebChromeClient::print):
2061         (WebKit::WebChromeClient::exceededDatabaseQuota):
2062         (WebKit::WebChromeClient::runOpenPanel):
2063         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
2064         (WebKit::WebContextMenuClient::searchWithGoogle):
2065         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2066         (WebKit::WebEditorClient::textFieldDidBeginEditing):
2067         (WebKit::WebEditorClient::textFieldDidEndEditing):
2068         (WebKit::WebEditorClient::textDidChangeInTextField):
2069         (WebKit::WebEditorClient::textDidChangeInTextArea):
2070         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
2071         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
2072         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2073         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
2074         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
2075         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
2076         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
2077         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2078         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2079         (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
2080         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
2081         (WebKit::WebFrameLoaderClient::updateGlobalHistory):
2082         (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
2083         (WebKit::WebFrameLoaderClient::restoreViewState):
2084         (WebKit::WebFrameLoaderClient::createFrame):
2085         (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
2086         (WebKit::WebFrameLoaderClient::objectContentType):
2087         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2088         (WebKit::WebPlatformStrategies::getPluginInfo):
2089         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
2090         (WebKit::WebFrameNetworkingContext::blockedError):
2091         * WebProcess/WebPage/WebFrame.cpp:
2092         (WebKit::WebFrame::didReceivePolicyDecision):
2093         (WebKit::WebFrame::startDownload):
2094         (WebKit::WebFrame::source):
2095         (WebKit::WebFrame::contentsAsString):
2096         (WebKit::WebFrame::url):
2097         (WebKit::WebFrame::parentFrame):
2098         (WebKit::WebFrame::childFrames):
2099         (WebKit::WebFrame::stopLoading):
2100         (WebKit::WebFrame::frameForContext):
2101         (WebKit::WebFrame::provisionalURL):
2102         (WebKit::WebFrame::suggestedFilenameForResourceWithURL):
2103         (WebKit::WebFrame::mimeTypeForResourceWithURL):
2104         (WebKit::WebFrameFilter::shouldIncludeSubframe):
2105         * WebProcess/WebPage/WebPage.cpp:
2106         (WebKit::WebPage::createPlugin):
2107         (WebKit::WebPage::close):
2108         (WebKit::WebPage::tryClose):
2109         (WebKit::WebPage::loadURLRequest):
2110         (WebKit::WebPage::loadDataImpl):
2111         (WebKit::WebPage::linkClicked):
2112         (WebKit::WebPage::stopLoadingFrame):
2113         (WebKit::WebPage::stopLoading):
2114         (WebKit::WebPage::reload):
2115         (WebKit::WebPage::tryRestoreScrollPosition):
2116         (WebKit::WebPage::getMainResourceDataOfFrame):
2117         (WebKit::resourceDataForFrame):
2118         (WebKit::shouldReuseCommittedSandboxExtension):
2119         (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
2120         (WebKit::WebPage::hasLocalDataForURL):
2121         (WebKit::WebPage::setCustomTextEncodingName):
2122         (WebKit::WebPage::canPluginHandleResponse):
2123         (WebKit::WebPage::canShowMIMEType):
2124         (WebKit::WebPage::didCommitLoad):
2125         * WebProcess/WebPage/mac/WebPageMac.mm:
2126         (WebKit::WebPage::platformHasLocalDataForURL):
2127         (WebKit::cachedResponseForURL):
2128         * WebProcess/WebProcess.cpp:
2129         (WebKit::WebProcess::downloadRequest):
2130
2131 2013-08-14  Filip Pizlo  <fpizlo@apple.com>
2132
2133         Typed arrays should be rewritten
2134         https://bugs.webkit.org/show_bug.cgi?id=119064
2135
2136         Reviewed by Oliver Hunt.
2137         
2138         You don't need to include JSUint8Array anymore if you just want to
2139         unwrap one; JSDOMBinding gives you all of the things you need.
2140
2141         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2142
2143 2013-08-15  Eric Carlson  <eric.carlson@apple.com>
2144
2145         [Mac] Remove "legacy" media UI
2146         https://bugs.webkit.org/show_bug.cgi?id=119752
2147
2148         Reviewed by Jer Noble.
2149
2150         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2151         (InitWebCoreSystemInterface): Remove MediaControllerThemeAvailable.
2152
2153 2013-08-14  Dean Jackson  <dino@apple.com>
2154
2155         <https://webkit.org/b/119827> Allow primary plug-in detection to run more than once if necessary
2156
2157         Reviewed by Tim Horton.
2158
2159         We occasionally see cases where the primary plug-in detection runs before the plugins have been added
2160         to the page, especially if they do so in response to a load event. Tweak the algorithm so that it can
2161         run an arbitrary number of times if it fails.
2162
2163         While here, also have the detection run if there has ever been a plugin in the page as opposed to any
2164         current views. We may have snapshotted a plugin by now and deleted its view.
2165
2166         * WebProcess/WebPage/WebPage.cpp:
2167         (WebKit::WebPage::WebPage): initialise new members.
2168         (WebKit::WebPage::addPluginView): Mark that we've seen a plugin.
2169         (WebKit::WebPage::resetPrimarySnapshottedPlugIn): Reset new members.
2170         (WebKit::WebPage::determinePrimarySnapshottedPlugIn): Exit early if we've never
2171         seen a plugin, rather than if we don't have any active views. Also, if we didn't find anything set
2172         a timer to run again (maximum of two attempts at the moment).
2173         * WebProcess/WebPage/WebPage.h: New members - m_numberOfPrimarySnapshotDetectionAttempts
2174         and m_hasSeenPlugin.
2175
2176 2013-08-14  Dean Jackson  <dino@apple.com>
2177
2178         <https://webkit.org/b/119820> Add pluginView-related logging to WebPage
2179
2180         Reviewed by Tim Horton.
2181
2182         Add some more diagnostic output to help track down bugs.
2183
2184         * WebProcess/WebPage/WebPage.cpp:
2185         (WebKit::WebPage::addPluginView): More logging.
2186         (WebKit::WebPage::removePluginView): Ditto.
2187
2188 2013-08-14  Alexey Proskuryakov  <ap@apple.com>
2189
2190         [WK2] Sync messages with with non-default timeout sent from secondary threads always time out
2191         https://bugs.webkit.org/show_bug.cgi?id=119767
2192
2193         Fix by Justin Bur.
2194         Reviewed by Darin Adler.
2195
2196         * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
2197         The argument to wait() is absolute time, not a delta. This calculation matches one
2198         in Connection::waitForMessage().
2199
2200 2013-08-14  Tim Horton  <timothy_horton@apple.com>
2201
2202         REGRESSION (r153877): Plugin scanning slows creation of WebViews
2203         https://bugs.webkit.org/show_bug.cgi?id=119665
2204         <rdar://problem/14716549>
2205
2206         Reviewed by Darin Adler.
2207
2208         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2209         (WebKit::WebPlatformStrategies::refreshPlugins):
2210         Don't repopulate the plugin cache in refreshPlugins, just invalidate it.
2211         It will be repopulated the next time something tries to use it.
2212
2213 2013-08-12  Dan Bernstein  <mitz@apple.com>
2214
2215         Fixed an off-by-(sizeof(char*) - 1) bug.
2216
2217         Reviewed by Sam Weinig.
2218
2219         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2220         (WebKit::XPCServiceEventHandler): Allocate a sufficiently large buffer.
2221
2222 2013-08-12  Beth Dakin  <bdakin@apple.com>
2223
2224         Remove didNewFirstVisuallyNonEmptyLayout from WebKit2
2225         https://bugs.webkit.org/show_bug.cgi?id=119658
2226
2227         Reviewed by Darin Adler.
2228
2229         Removing this function entirely will change some functionality in the Nightlies, 
2230         but we think that is an acceptable difference for the Nightlies. If is does cause 
2231         a problem though, we can roll out this patch and deprecate the function instead.
2232
2233         * UIProcess/API/C/WKPage.h:
2234         * UIProcess/WebLoaderClient.cpp:
2235         * UIProcess/WebLoaderClient.h:
2236         * UIProcess/WebPageProxy.cpp:
2237         (WebKit::WebPageProxy::initializeLoaderClient):
2238         * UIProcess/WebPageProxy.h:
2239         * UIProcess/WebPageProxy.messages.in:
2240         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2241         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
2242         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
2243         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2244         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
2245         * WebProcess/WebPage/WebPage.cpp:
2246         (WebKit::WebPage::initializeInjectedBundleLoaderClient):
2247
2248 2013-08-12  Arunprasad Rajkumar  <arurajku@cisco.com>
2249
2250         [Qt] [WebKit2] Remove duplicate RAM Size calculation and reuse WTF::ramSize()
2251         https://bugs.webkit.org/show_bug.cgi?id=119663
2252
2253         Reviewed by Sam Weinig.
2254
2255         * WebProcess/qt/WebProcessQt.cpp:
2256         (WebKit::WebProcess::platformSetCacheModel):
2257
2258 2013-08-12  Anton Obzhirov  <a.obzhirov@samsung.com>
2259
2260         [GTK] Don't load GAIL when using GTK 3.2 or greater
2261         https://bugs.webkit.org/show_bug.cgi?id=72735
2262
2263         Reviewed by Carlos Garcia Campos.
2264
2265         * UIProcess/API/gtk/tests/AccessibilityTestServer.cpp:
2266         (main):
2267
2268 2013-08-09  Beth Dakin  <bdakin@apple.com>
2269
2270         AX: Not able to use arrow keys to read text in a WK2 app
2271         https://bugs.webkit.org/show_bug.cgi?id=119605
2272         -and corresponding-
2273         <rdar://problem/14281275>
2274
2275         Reviewed by Darin Adler.
2276
2277         Make all of these scrolling functions actually return the WebCore bools that 
2278         indicate whether or not scrolling happened. 
2279         * WebProcess/WebPage/WebPage.cpp:
2280         (WebKit::WebPage::scroll):
2281         (WebKit::WebPage::logicalScroll):
2282         (WebKit::WebPage::scrollBy):
2283         * WebProcess/WebPage/WebPage.h:
2284         * WebProcess/WebPage/mac/WebPageMac.mm:
2285         (WebKit::WebPage::executeKeypressCommandsInternal):
2286
2287         This function now gives accessibility a chance to handle the event too. And it 
2288         also actually tracks whether or not the event was handled by scrolling instead of 
2289         assuming that it was and universally returning true.
2290         (WebKit::WebPage::performNonEditingBehaviorForSelector):
2291
2292 2013-08-09  Brian Holt  <brian.holt@samsung.com>
2293
2294         [GTK] [WebKit2] Add an 'authenticate' signal to WebKitWebView
2295         https://bugs.webkit.org/show_bug.cgi?id=99352
2296
2297         Reviewed by Carlos Garcia Campos.
2298
2299         Add a new public class to the API, WebKitAuthenticationRequest, to be
2300         emitted along with a new WebKitWebView::authenticate signal to
2301         let client applications to provide their own authentication
2302         when the user is challenged with HTTP authentication. The
2303         credential is exposed through a new class WebKitCredential.
2304
2305         * GNUmakefile.list.am:
2306         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
2307         (okButtonClicked): Use new API for authentication.
2308         (cancelButtonClicked): Ditto.
2309         (webkitAuthenticationDialogInitialize):Get
2310         authenticationChallenge from request object.
2311         (webkitAuthenticationDialogNew): Ditto.
2312         * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
2313         * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp: Added new
2314         class representing a HTTP authentication request.
2315         (webkitAuthenticationRequestDispose):
2316         (webkit_authentication_request_class_init):
2317         (webkitAuthenticationRequestCreate):
2318         (webkitAuthenticationRequestGetAuthenticationChallenge):
2319         (webkit_authentication_request_can_save_credentials):
2320         (webkit_authentication_request_get_proposed_credential):
2321         (webkit_authentication_request_get_host):
2322         (webkit_authentication_request_get_port):
2323         (webkit_authentication_request_get_realm):
2324         (webkit_authentication_request_get_scheme):
2325         (webkit_authentication_request_is_for_proxy):
2326         (webkit_authentication_request_is_retry):
2327         (webkit_authentication_request_authenticate):
2328         (webkit_authentication_request_cancel):
2329         * UIProcess/API/gtk/WebKitAuthenticationRequest.h: Added.
2330         * UIProcess/API/gtk/WebKitAuthenticationRequestPrivate.h: Added.
2331         * UIProcess/API/gtk/WebKitCredential.cpp: Added new class to
2332         support credentials for HTTP authentication.
2333         (_WebKitCredential::_WebKitCredential):
2334         (webkitCredentialCreate):
2335         (webkitCredentialGetCredential):
2336         (webkit_credential_new):
2337         (webkit_credential_copy):
2338         (webkit_credential_free):
2339         (webkit_credential_get_username):
2340         (webkit_credential_get_password):
2341         (webkit_credential_has_password):
2342         (webkit_credential_get_persistence):
2343         * UIProcess/API/gtk/WebKitCredential.h: Added.
2344         * UIProcess/API/gtk/WebKitCredentialPrivate.h: Added.
2345         * UIProcess/API/gtk/WebKitWebView.cpp: Added authenticate signal.
2346         (webkitWebViewAuthenticate): Default signal handler for authenticate.
2347         (webkit_web_view_class_init): Ditto.
2348         (webkitWebViewHandleAuthenticationChallenge): Create an
2349         authentication request and emit it with authenticate signal.
2350         * UIProcess/API/gtk/WebKitWebView.h: Replaced reserved function
2351         pointer slot with for WebViewClass with function pointer to
2352         authenticate signal handler.
2353         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Added new section for
2354         the authentication request.
2355         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
2356         * UIProcess/API/gtk/docs/webkit2gtk.types: Added authentication
2357         request and credential types.
2358         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Created a new
2359         unit test for HTTP authentication. A libsoup server callback
2360         handler is installed that creates soup messages with appropriate
2361         headers and body to test HTTP authentication.
2362         (testWebViewAuthenticationRequest): Test the authentication
2363         request and credential API.
2364         (testWebViewAuthenticationCancel): Test cancelled authentication.
2365         (testWebViewAuthenticationFailure): Test repeated authentication failures.
2366         (testWebViewAuthenticationNoCredential): Test continue without
2367         credentials.
2368         (testWebViewAuthenticationStorage): Test credential storage.
2369         (testWebViewAuthenticationSuccess): Test successful authentication.
2370         (beforeAll): Added tests.
2371         * UIProcess/API/gtk/webkit2.h: Added WebKitAuthenticationRequest and
2372         WebKitCredential headers.
2373
2374 2013-08-09  Tim Horton  <timothy_horton@apple.com>
2375
2376         PDFPlugin is disabled by default in nightlies on Mac accidentally
2377         https://bugs.webkit.org/show_bug.cgi?id=119615
2378
2379         Rubber-stamped by Andreas Kling.
2380
2381         Enable PDFPlugin by default on Mac at the WebKit2 level.
2382
2383         * Shared/WebPreferencesStore.h:
2384         * UIProcess/API/C/WKPreferencesPrivate.h:
2385
2386 2013-08-08  Tim Horton  <timothy_horton@apple.com>
2387
2388         navigator.plugins has plugins in it when plugins are disabled
2389         https://bugs.webkit.org/show_bug.cgi?id=119607
2390         <rdar://problem/14678030>
2391
2392         Reviewed by Anders Carlsson.
2393
2394         * UIProcess/WebProcessProxy.cpp:
2395         (WebKit::WebProcessProxy::getPlugins):
2396         Return a list of all plugins, and a list of only application plugins.
2397
2398         * UIProcess/WebProcessProxy.h:
2399         * UIProcess/WebProcessProxy.messages.in:
2400         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2401         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2402         (WebKit::WebPlatformStrategies::getPluginInfo):
2403         Add applicationPlugin parameter to getPlugins, and storage for the returned list.
2404
2405         (WebKit::WebPlatformStrategies::populatePluginCache):
2406         If plugins are disabled for the given page, give WebCore the list that
2407         only includes application plugins. Otherwise, give it the whole list
2408         as we are doing currently.
2409
2410 2013-08-08  Gavin Barraclough  <barraclough@apple.com>
2411
2412         Disable suppression of plugin process for Java
2413         https://bugs.webkit.org/show_bug.cgi?id=119604
2414
2415         Reviewed by Sam Weinig.
2416
2417         Workaround, the Java plugin doesn't like this.
2418
2419         * PluginProcess/mac/PluginProcessMac.mm:
2420         (WebKit::PluginProcess::platformInitializeProcess):
2421             - +1 active task count on the java plugin, to inhibit supression.
2422
2423 2013-08-08  Dean Jackson  <dino@apple.com>
2424
2425         Add logging to the primary plugin detection
2426         https://bugs.webkit.org/show_bug.cgi?id=119594
2427
2428         Reviewed by Tim Horton.
2429
2430         Add some simple logging to our primary plug-in detection.
2431
2432         * WebProcess/WebPage/WebPage.cpp:
2433         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
2434
2435 2013-08-08  Alexey Proskuryakov  <ap@apple.com>
2436
2437         WKBundleFrameCopyProvisionalURL crashes when there is no provisional loader
2438         https://bugs.webkit.org/show_bug.cgi?id=119587
2439
2440         Reviewed by Darin Adler.
2441
2442         * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::provisionalURL): Added a null
2443         check, like we already have in WebFrame::url().
2444
2445 2013-08-07  Antti Koivisto  <antti@apple.com>
2446
2447         Try to fix EFL build.
2448         
2449         Not reviewed.
2450
2451         * CMakeLists.txt:
2452
2453 2013-08-06  Jer Noble  <jer.noble@apple.com>
2454
2455         Crash when entering fullscreen video playback from a WebView using WebKit2
2456         https://bugs.webkit.org/show_bug.cgi?id=119531
2457
2458         Reviewed by Tim Horton.
2459
2460         Initialize wkWindowSetScaledFrame and wkWindowSetAlpha when initializing WebCoreSystemInterface.
2461
2462         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2463         (InitWebCoreSystemInterface):
2464
2465 2013-08-06  Stephanie Lewis  <slewis@apple.com>
2466
2467         Update Order Files for Safari
2468         <rdar://problem/14517392>
2469
2470         Unreviewed.
2471
2472         * mac/WebKit2.order:
2473
2474 2013-08-04  Sam Weinig  <sam@webkit.org>
2475
2476         Remove support for HTML5 MicroData
2477         https://bugs.webkit.org/show_bug.cgi?id=119480
2478
2479         Reviewed by Anders Carlsson.
2480
2481         * Configurations/FeatureDefines.xcconfig:
2482
2483 2013-08-06  Eunmi Lee  <eunmi15.lee@samsung.com>
2484
2485         [EFL][WK2] Implement gesture recognizer.
2486         https://bugs.webkit.org/show_bug.cgi?id=102643
2487
2488         Reviewed by Gyuyoung Kim.
2489
2490         Recognize tap, pan and pinch gestures using touch events.
2491         The tap gesture is separated into single tap, double tap and
2492         'tap and hold'.
2493
2494         This patch references the webkit NIX port.
2495         https://github.com/WebKitNix/webkitnix
2496
2497         * PlatformEfl.cmake:
2498         * UIProcess/API/efl/EwkView.cpp:
2499         (EwkView::EwkView):
2500         (EwkView::doneWithTouchEvent):
2501         * UIProcess/API/efl/EwkView.h:
2502         * UIProcess/API/efl/GestureRecognizer.cpp: Added.
2503         (WebKit::GestureHandler::create):
2504         (WebKit::GestureHandler::GestureHandler):
2505         (WebKit::GestureHandler::handleSingleTap):
2506         (WebKit::GestureHandler::handleDoubleTap):
2507         (WebKit::GestureHandler::handleTapAndHold):
2508         (WebKit::GestureHandler::handlePanStarted):
2509         (WebKit::GestureHandler::handlePan):
2510         (WebKit::GestureHandler::handlePanFinished):
2511         (WebKit::GestureHandler::handlePinchStarted):
2512         (WebKit::GestureHandler::handlePinch):
2513         (WebKit::GestureHandler::handlePinchFinished):
2514         (WebKit::GestureRecognizer::GestureRecognizer):
2515         (WebKit::GestureRecognizer::~GestureRecognizer):
2516         (WebKit::GestureRecognizer::processTouchEvent):
2517         (WebKit::GestureRecognizer::doubleTapTimerCallback):
2518         (WebKit::GestureRecognizer::tapAndHoldTimerCallback):
2519         (WebKit::GestureRecognizer::exceedsPanThreshold):
2520         (WebKit::GestureRecognizer::exceedsDoubleTapThreshold):
2521         (WebKit::getPointAtIndex):
2522         (WebKit::createVectorWithWKArray):
2523         (WebKit::GestureRecognizer::noGesture):
2524         (WebKit::GestureRecognizer::singleTapGesture):
2525         (WebKit::GestureRecognizer::doubleTapGesture):
2526         (WebKit::GestureRecognizer::panGesture):
2527         (WebKit::GestureRecognizer::pinchGesture):
2528         (WebKit::GestureRecognizer::reset):
2529         (WebKit::GestureRecognizer::stopTapTimers):
2530         * UIProcess/API/efl/GestureRecognizer.h: Added.
2531         (WebKit::GestureRecognizer::create):
2532
2533 2013-07-23  David Farler  <dfarler@apple.com>
2534
2535         Provide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building with ASAN
2536         https://bugs.webkit.org/show_bug.cgi?id=117762
2537
2538         Reviewed by Mark Rowe.
2539
2540         * Configurations/DebugRelease.xcconfig:
2541         Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
2542         * Configurations/WebContentProcess.xcconfig:
2543         Add ASAN_OTHER_LDFLAGS.
2544         * Configurations/WebKit2.xcconfig:
2545         Add ASAN_OTHER_LDFLAGS.
2546
2547 2013-08-06  Andreas Kling  <akling@apple.com>
2548
2549         REGRESSION(r151403): Resizing is extremely laggy on many sites when plugins are disallowed.
2550         <http://webkit.org/b/119516>
2551         <rdar://problem/14648086>
2552
2553         Reviewed by Simon Fraser.
2554
2555         The web process relies on the WindowAndViewFramesChanged mechanism for caching a copy
2556         of the window rect for fast access from DOMWindow APIs.
2557
2558         We retain part of the optimization introduced in r151403, namely not computing the
2559         viewFrameInWindowCoordinates and accessibilityPosition unless the web process needs them.
2560
2561         * UIProcess/API/mac/WKView.mm:
2562         (-[WKView _updateWindowAndViewFrames]):
2563
2564 2013-07-26  Mark Rowe  <mrowe@apple.com>
2565
2566         Logging should be configurable using human-readable channel names rather than crazy bitmasks
2567         <http://webkit.org/b/119031>
2568
2569         Implement shared logic for initializing logging channels based on human-readable channel names in WTF,
2570         and rework the WebCore, WebKit and WebKit2 logging initialization on top of it.
2571
2572         Logging channels may now be enabled by providing a comma-separated list of channel names, with the special
2573         "all" name enabling all channels. Channel names prefixed with a leading "-" will result in the named channel
2574         being disabled. For instance, specifying "all,-history,-loading" will result in all logging channels except
2575         for history and loading being enabled.
2576
2577         For OS X developers, this also changes the name of the user defaults used to enable logging. This is done to allow
2578         the old user defaults to remain set for those people that need to switch between version of WebKit before and
2579         after this change. Where the old user default keys were WebCoreLogLevel, WebKitLogLevel and WebKit2LogLevel,
2580         the new user default keys are WebCoreLogging, WebKitLogging and WebKit2Logging.
2581
2582         For GTK developers, this changes the separator used in the WEBKIT_DEBUG environment variable to a comma for
2583         consistency with the other platforms and to enable more code sharing.
2584
2585         While doing this work I've also taken the opportunity to eliminate the need to touch multiple files when
2586         adding a new logging channel. Now only the header in the relevant project needs to be updated.
2587
2588         Reviewed by Sam Weinig.
2589
2590         * NetworkProcess/NetworkProcess.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2591         * Platform/Logging.cpp: Use WEBKIT2_LOG_CHANNELS to define all of the channels.
2592         (WebKit::initializeLogChannelsIfNecessary): Pass the channels and the log level string to the new WTF function
2593         that handles the initialization.
2594         (WebKit::logChannelByName): Renamed to match our naming conventions. Calls through to the new WTF function
2595         to find a log channel rather than repeating the names of the log channels a further two times each.
2596         (WebKit::logLevelString): Provide a no-op implementation.
2597         * Platform/Logging.h: Declare a WEBKIT2_LOG_CHANNELS macro that can be used to apply a preprocessor macro
2598         across the set of all logging channels. Use this macro to declare the logging channels.
2599         * Platform/efl/LoggingEfl.cpp:
2600         (WebKit::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable.
2601         * Platform/gtk/LoggingGtk.cpp:
2602         (WebKit::logLevelString): Ditto.
2603         * Platform/mac/Logging.mac.mm:
2604         (WebKit::logLevelString): Pull the value out of the WebKit2Logging user default key.
2605         * Platform/qt/LoggingQt.cpp:
2606         (WebKit::logLevelString): Pull the value out of the QT_WEBKIT_LOG environment variable.
2607         * Shared/WebKit2Initialize.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2608         * UIProcess/WebContext.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2609
2610 2013-08-05  Anders Carlsson  <andersca@apple.com>
2611
2612         Ignore the Apple Java placeholder plug-in
2613         https://bugs.webkit.org/show_bug.cgi?id=119494
2614         <rdar://problem/14610818>
2615
2616         Reviewed by Beth Dakin.
2617
2618         Never attempt to load the Java placeholder plug-in.
2619
2620         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2621         (WebKit::PluginInfoStore::shouldUsePlugin):
2622
2623 2013-08-03  Tim Horton  <timothy_horton@apple.com>
2624
2625         Unreviewed, build and style fix for r153693.
2626
2627         * UIProcess/WebProcessProxy.cpp:
2628         * WebProcess/Plugins/PDF/PDFPlugin.h:
2629         * WebProcess/WebPage/WebPage.cpp:
2630
2631 2013-08-03  Tim Horton  <timothy_horton@apple.com>
2632
2633         Remove SimplePDFPlugin
2634         https://bugs.webkit.org/show_bug.cgi?id=119437
2635
2636         Reviewed by Alexey Proskuryakov.
2637
2638         * UIProcess/WebProcessProxy.cpp:
2639         (WebKit::WebProcessProxy::getPlugins):
2640         * WebProcess/WebPage/WebPage.cpp:
2641         (WebKit::WebPage::createPlugin):
2642         Don't add SimplePDFPlugin, nor try to instantiate it.
2643
2644         * WebProcess/Plugins/PDF/PDFPlugin.h:
2645         * WebProcess/Plugins/PDF/PDFPlugin.mm:
2646         Merge previously inherited behavior in from SimplePDFPlugin.
2647
2648         * WebKit2.xcodeproj/project.pbxproj:
2649         * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Removed.
2650         * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Removed.
2651         Remove SimplePDFPlugin.
2652
2653 2013-08-03  Tim Horton  <timothy_horton@apple.com>
2654
2655         Remove pageOverlayShouldApplyFadeWhenPainting() and adopt composited fade for the Mac port
2656         https://bugs.webkit.org/show_bug.cgi?id=119411
2657
2658         Reviewed by Simon Fraser.
2659
2660         Mac is the only holdout that performs non-composited fades of page
2661         overlays. We should adopt that mechanism (as a precursor to doing a
2662         CA-accelerated fade) and remove the now-unnecessary property.
2663
2664         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
2665         (WKBundlePageOverlayFractionFadedIn):
2666         Always return 1 (fully-faded-in) so that clients who attempt to use this
2667         to bake the fade opacity into their painting will paint at full opacity,
2668         allowing us to do the composited fade separately.
2669
2670         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2671         * WebProcess/WebPage/DrawingArea.h:
2672         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2673         * WebProcess/WebPage/DrawingAreaImpl.h:
2674         * WebProcess/WebPage/LayerTreeHost.h:
2675         * WebProcess/WebPage/PageOverlay.cpp:
2676         (WebKit::PageOverlay::PageOverlay):
2677         (WebKit::PageOverlay::setPage):
2678         (WebKit::PageOverlay::setNeedsDisplay):
2679         (WebKit::PageOverlay::fadeAnimationTimerFired):
2680         * WebProcess/WebPage/PageOverlay.h:
2681         Remove pageOverlayShouldApplyFadeWhenPainting and fractionFadedIn().
2682
2683         * WebProcess/WebPage/FindController.cpp:
2684         (WebKit::FindController::drawRect):
2685         Draw the find overlay without taking the PageOverlay's fade into account.
2686
2687         * WebProcess/WebPage/TapHighlightController.cpp:
2688         (WebKit::TapHighlightController::drawRect):
2689         Remove pageOverlayShouldApplyFadeWhenPainting. Since it's always
2690         "false" for all ports now, take the second path here.
2691
2692         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
2693         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
2694         (WebKit::LayerTreeHostMac::setPageOverlayOpacity):
2695         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2696         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2697         (WebKit::TiledCoreAnimationDrawingArea::setPageOverlayOpacity):
2698         Implement setPageOverlayOpacity for DrawingAreaImpl
2699         and TiledCoreAnimationDrawingArea.
2700
2701 2013-08-02  Gavin Barraclough  <barraclough@apple.com>
2702
2703         Remove no-arguments constructor to PropertySlot
2704         https://bugs.webkit.org/show_bug.cgi?id=119460
2705
2706         Reviewed by Geoff Garen.
2707
2708         This constructor was unsafe if getValue is subsequently called,
2709         and the property is a getter. Simplest to just remove it.
2710
2711         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2712         (WebKit::JSNPObject::getOwnPropertyDescriptor):
2713
2714 2013-08-02  Ruth Fong  <ruth_fong@apple.com>
2715
2716         [Forms: color] WebColorPickerMac deconstructor shouldn't assert a variable
2717         <rdar://problem/14627633> and https://bugs.webkit.org/show_bug.cgi?id=119419
2718
2719         Reviewed by Tim Horton.
2720
2721         * UIProcess/mac/WebColorPickerMac.mm:
2722         (WebKit::WebColorPickerMac::~WebColorPickerMac): If the m_colorPickerUI variable
2723           is not null, then properly destroy it first before destroying WebColorPickerMac object.
2724
2725 2013-08-02  Ruth Fong  <ruth_fong@apple.com>
2726
2727         [Forms: color] The positioning of the popover color well is inverted
2728         <rdar://problem/14635621> and https://bugs.webkit.org/show_bug.cgi?id=119455
2729
2730         Reviewed by Tim Horton.
2731
2732         This patch converts the coordinates of the <input type='color'> element to
2733         the window's base coordinate system.
2734
2735         * UIProcess/mac/WebColorPickerMac.mm:
2736         (-[WKColorPopoverMac initWithFrame:inView:]):
2737
2738 2013-08-01  Ruth Fong  <ruth_fong@apple.com>
2739
2740         [Forms: color] <input type='color'> popover color well implementation
2741         <rdar://problem/14411008> and https://bugs.webkit.org/show_bug.cgi?id=119356
2742
2743         Reviewed by Benjamin Poulain.
2744
2745         This patch adds an popover implementation of <input type='color'>.
2746
2747         * Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.
2748
2749         * UIProcess/API/mac/PageClientImpl.mm:
2750         (WebKit::PageClientImpl::createColorPicker): Updated to pass the 
2751           coordinates of the <input type='color'> element and the WKView 
2752           object for the window.
2753
2754         * UIProcess/WebPageProxy.cpp:
2755         (WebKit::WebPageProxy::viewWillStartLiveResize): Close popover color 
2756           picker when the view is resized.
2757         (WebKit::WebPageProxy::viewInWindowStateDidChange): Close popover color
2758           picker when the view is no longer in the window.
2759         (WebKit::WebPageProxy::showColorPicker): Updated to show either a color panel
2760           or a popover color picker depending on whether INPUT_TYPE_COLOR_POPOVER is enabled.
2761
2762         * UIProcess/mac/WebColorPickerMac.h:
2763         * UIProcess/mac/WebColorPickerMac.mm:
2764         (WebKit::WebColorPickerMac::create):
2765         (WebKit::WebColorPickerMac::~WebColorPickerMac):
2766         (WebKit::WebColorPickerMac::WebColorPickerMac):
2767         (WebKit::WebColorPickerMac::endPicker):
2768         (WebKit::WebColorPickerMac::setSelectedColor):
2769         (WebKit::WebColorPickerMac::showColorPicker):
2770         Methods updated to handle both the color panel implementation and 
2771           the popover implementation; also renamed m_panel to m_colorPickerUI. 
2772
2773         (-[WKColorPopoverMac initWithFrame:WebCore::inView:]):
2774         (-[WKColorPopoverMac setAndShowPicker:WebKit::withColor:]):
2775         (-[WKColorPopoverMac dealloc]):
2776         (-[WKColorPopoverMac invalidate]):
2777         (-[WKColorPopoverMac windowWillClose:]):
2778         (-[WKColorPopoverMac didChooseColor:]):
2779         (-[WKColorPopoverMac setColor:]):
2780         WKColorPopoverMac provides the popover implementation of <input type='color'>.
2781
2782         (-[WKColorPanelMac didChooseColor:]): Updated to match the interface of 
2783           WKColorPickerMac::didChooseColor.
2784
2785 2013-08-01  Anders Carlsson  <andersca@apple.com>
2786
2787         Lots of leaks under WebContext::pluginInfoStoreDidLoadPlugins()
2788         https://bugs.webkit.org/show_bug.cgi?id=119412
2789
2790         Reviewed by Simon Fraser.
2791
2792         For some sick reason, the WKContextClient plugInInformationBecameAvailable callback function
2793         expects a +1 reference to the plug-in array. Isolate that hack to WebContextClient so that
2794         we don't leak the array if there is no WKContextClient.
2795         
2796         * UIProcess/WebContext.cpp:
2797         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
2798         * UIProcess/WebContextClient.cpp:
2799         (WebKit::WebContextClient::plugInInformationBecameAvailable):
2800
2801 2013-08-01  Kwang Yul Seo  <skyul@company100.net>
2802
2803         Remove return statement in void function
2804         https://bugs.webkit.org/show_bug.cgi?id=119379
2805
2806         Reviewed by Darin Adler.
2807
2808         It does not make sense to return a value in void function.
2809
2810         * WebProcess/WebProcess.cpp:
2811         (WebKit::addCaseFoldedCharacters):
2812
2813 2013-08-01  Kwang Yul Seo  <skyul@company100.net>
2814
2815         [WK2] Add USE(SOUP) guard in WebProcess::destroyPrivateBrowsingSession
2816         https://bugs.webkit.org/show_bug.cgi?id=119381
2817
2818         Reviewed by Darin Adler.
2819
2820         The is a followup to r153355. I missed to add USE(SOUP) guard in
2821         WebProcess::destroyPrivateBrowsingSession.
2822
2823         * WebProcess/WebProcess.cpp:
2824         (WebKit::WebProcess::destroyPrivateBrowsingSession):
2825
2826 2013-08-01  Milian Wolff  <milian.wolff@kdab.com>
2827
2828         [Qt] Enable QML handling of crashed/unresponsive QtWebProcess
2829         https://bugs.webkit.org/show_bug.cgi?id=108474
2830
2831         Forward the processDidCrash, didRelaunchProcess, processDidBecomeUnresponsive
2832         and processDidBecomeResponsive signals to QML's WebView.experimental.
2833
2834         Reviewed by Jocelyn Turcotte.
2835
2836         * UIProcess/API/qt/qquickwebview.cpp:
2837         (QQuickWebViewPrivate::processDidCrash):
2838         (QQuickWebViewPrivate::didRelaunchProcess):
2839         (QQuickWebViewPrivate::processDidBecomeUnresponsive):
2840         (QQuickWebViewPrivate::processDidBecomeResponsive):
2841         * UIProcess/API/qt/qquickwebview_p.h:
2842         * UIProcess/API/qt/qquickwebview_p_p.h:
2843         (QQuickWebViewPrivate):
2844
2845 2013-07-31  Kwang Yul Seo  <skyul@company100.net>
2846
2847         Use emptyString instead of String("")
2848         https://bugs.webkit.org/show_bug.cgi?id=119335
2849
2850         Reviewed by Darin Adler.
2851
2852         Use emptyString() instead of String("") because it is better style and
2853         faster. This is a followup to r116908, removing all occurrences of
2854         String("") from WebKit.
2855
2856         * Shared/mac/WebEventFactory.mm:
2857         (WebKit::textFromEvent):
2858         (WebKit::unmodifiedTextFromEvent):
2859
2860 2013-07-31  Ruth Fong  <ruth_fong@apple.com>
2861
2862         <input type=color> Mac UI behaviour
2863         <rdar://problem/10269922> and https://bugs.webkit.org/show_bug.cgi?id=61276
2864
2865         Implemented <input type='color'> on Mac using the native color picker. 
2866
2867         Reviewed by Brady Eidson.
2868
2869         Code for WebColorPickerMac is derived from Chromium's color_chooser_mac.mm:
2870         https://code.google.com/p/chromium/codesearch#chromium/src/chrome/browser/ui/cocoa/color_chooser_mac.mm
2871
2872         * Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
2873
2874         * UIProcess/API/mac/PageClientImpl.mm:
2875         (WebKit::PageClientImpl::createColorPicker): Replaced stub implementation
2876           and return a WebColorPickerMac object.
2877
2878         * UIProcess/WebColorPicker.cpp:
2879         (WebKit::WebColorPicker::invalidate): Updated to call endChooser().
2880         (WebKit::WebColorPicker::showColorPicker): Added stub implementation.
2881         * UIProcess/WebColorPicker.h:
2882
2883         * UIProcess/WebPageProxy.cpp:
2884         (WebKit::WebPageProxy::close): Removed invalidation of removed color picker objects.
2885         (WebKit::WebPageProxy::showColorPicker): Updated so that it works for
2886           multiple <input type='color'> elements on a page.
2887         (WebKit::WebPageProxy::didEndColorPicker): Removed cleanup of removed color picker objects.
2888         (WebKit::WebPageProxy::resetStateAfterProcessExited): Removed cleanup of removed color picker objects.
2889
2890         * UIProcess/mac/WebColorPickerMac.h: Added.
2891         * UIProcess/mac/WebColorPickerMac.mm: Added.
2892         (WebKit::WebColorPickerMac::create):
2893         (WebKit::WebColorPickerMac::~WebColorPickerMac):
2894         (WebKit::WebColorPickerMac::WebColorPickerMac):
2895         (WebKit::WebColorPickerMac::endPicker):
2896         (WebKit::WebColorPickerMac::setSelectedColor):
2897         (WebKit::WebColorPickerMac::didChooseColor):
2898         (WebKit::WebColorPickerMac::showColorPicker):
2899         WebColorPickerMac contains a reference to a WKColorPanelMac object
2900           and is responsible for maintaining the color picker UI.
2901
2902         (-[WKColorPanelMac setAndShowPicker:withColor:]):
2903         (-[WKColorPanelMac invalidate]):
2904         (-[WKColorPanelMac windowWillClose:]):
2905         (-[WKColorPanelMac didChooseColor:]):
2906         (-[WKColorPanelMac setColor:]):
2907         WKColorPanelMac is a wrapper for a NSColorPanel object and 
2908           is responsible for the color picker UI.
2909
2910         * WebKit2.xcodeproj/project.pbxproj:
2911
2912         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2913         (WebKit::WebChromeClient::createColorChooser): Updated to always create a 
2914           WebColorChooser object.
2915
2916         * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2917         (WebKit::WebColorChooser::reattachColorChooser): Sets the page's 
2918           active color chooser to the current object and pings the UIProcess
2919           to show the color picker.
2920         (WebKit::WebColorChooser::setSelectedColor): Only sets the color in the
2921           color picker if the WebColorChooser object is the active color element.
2922         * WebProcess/WebCoreSupport/WebColorChooser.h:
2923
2924 2013-07-30  Gavin Barraclough  <barraclough@apple.com>
2925
2926         Some cleanup in JSValue::get
2927         https://bugs.webkit.org/show_bug.cgi?id=119343
2928
2929         Reviewed by Geoff Garen.
2930
2931         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2932         (WebKit::JSNPObject::getOwnPropertySlot):
2933         * WebProcess/Plugins/Netscape/JSNPObject.h:
2934             - getOwnPropertySlot, JSCell -> JSObject
2935
2936 2013-07-31  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2937
2938         [Qt] Build WebKit with C++11
2939         https://bugs.webkit.org/show_bug.cgi?id=119337
2940
2941         Reviewed by Csaba Osztrogonác.
2942
2943         We no longer need to enable C++11 specifically for WebKit2.
2944
2945         * WebKit2.pri:
2946
2947 2013-07-30  Tim Horton  <timothy_horton@apple.com>
2948
2949         DHTML drag can result in a null-deref under WebDragClient::startDrag
2950         https://bugs.webkit.org/show_bug.cgi?id=119297
2951         <rdar://problem/14213012>
2952
2953         Reviewed by Simon Fraser.
2954
2955         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
2956         (WebKit::convertImageToBitmap):
2957         ShareableBitmap::createShareable can return null, but shouldn't dereference that.
2958
2959 2013-07-30  Ruth Fong  <ruth_fong@apple.com>
2960
2961         Rename <input type='color'> functions in WebPageProxy, WebColorPicker
2962         <rdar://problem/14549771> and https://bugs.webkit.org/show_bug.cgi?id=119097
2963
2964         Reviewed by Tim Horton.
2965
2966         In bug 119025, WebColorChooserProxy was renamed WebColorPicker. This patch makes the UIProcess consistent
2967         by renaming UIProcess INPUT_TYPE_COLOR functions from ...colorChooser to ...colorPicker.
2968
2969         * UIProcess/WebColorPicker.cpp:
2970         (WebKit::WebColorPicker::endPicker):
2971         * UIProcess/WebColorPicker.h:
2972         * UIProcess/WebColorPickerResultListenerProxy.cpp:
2973         (WebKit::WebColorPickerResultListenerProxy::setColor):
2974         * UIProcess/WebPageProxy.cpp:
2975         (WebKit::WebPageProxy::showColorPicker):
2976         (WebKit::WebPageProxy::setColorPickerColor):
2977         (WebKit::WebPageProxy::endColorPicker):
2978         (WebKit::WebPageProxy::didEndColorPicker):
2979         * UIProcess/WebPageProxy.h:
2980         * UIProcess/WebPageProxy.messages.in:
2981         * UIProcess/qt/WebColorPickerQt.cpp:
2982         (WebKit::WebColorPickerQt::createItem):
2983         (WebKit::WebColorPickerQt::notifyColorSelected):
2984         (WebKit::WebColorPickerQt::endPicker):
2985         * UIProcess/qt/WebColorPickerQt.h:
2986         * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2987         (WebKit::WebColorChooser::WebColorChooser):
2988         (WebKit::WebColorChooser::setSelectedColor):
2989         (WebKit::WebColorChooser::endChooser):
2990         * WebProcess/WebPage/WebPage.cpp:
2991         (WebKit::WebPage::didEndColorPicker):
2992         * WebProcess/WebPage/WebPage.h:
2993         * WebProcess/WebPage/WebPage.messages.in:
2994
2995 2013-07-30  Anders Carlsson  <andersca@apple.com>
2996
2997         Speculative fix for crash due to string access on multiple threads
2998         https://bugs.webkit.org/show_bug.cgi?id=119279
2999         <rdar://problem/14267833>
3000
3001         Reviewed by Darin Adler.
3002
3003         We can't use String::isolatedCopy for passing the local storage directory to the storage thread since
3004         that returns a String that's copied and then destroyed after the call to bind returns, leaving a small window
3005         where the refcount can be accessed simultaneously from two threads.
3006
3007         Work around this by passing a PassRefPtr<StringImpl> to bind instead; the act of copying the PassRefPtr will
3008         clear out the original and so when the original is destroyed the underlying StringImpl pointer will be null.
3009
3010         * UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
3011         (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectory):
3012         (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectoryInternal):
3013         * UIProcess/Storage/LocalStorageDatabaseTracker.h:
3014
3015 2013-07-30  Tim Horton  <timothy_horton@apple.com>
3016
3017         Fix typo in enum name ("SelectionInSnaphot" -> "SelectionInSnapshot")
3018         https://bugs.webkit.org/show_bug.cgi?id=119275
3019
3020         Reviewed by Simon Fraser.
3021
3022         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
3023         (WebKit::imageForRect):
3024         * WebProcess/WebPage/WebPage.cpp:
3025         (WebKit::WebPage::scaledSnapshotWithOptions):
3026         Fix typo.
3027
3028 2013-07-30  Anders Carlsson  <andersca@apple.com>
3029
3030         Plug-in process crashes if plug-in is destroyed as a result of sending NPObjectMessageReceiver::Deallocate
3031         https://bugs.webkit.org/show_bug.cgi?id=119270
3032         <rdar://problem/13368226>
3033
3034         Reviewed by Darin Adler.
3035
3036         Normally we use the PluginDestructionProtector RAII object to prevent plug-ins from being destroyed while
3037         they're executing code. However, in the case of the NPObjectMessageReceiver::Deallocate message, we can't do this
3038         since we don't know the plug-in or connection. 
3039         
3040         Instead, add a counter to Connection that keeps track of whether sendSync is currently called and defer plug-in
3041         destruction if it is. (This approach is actually more robust and we should investigate getting rid of the destruction protector).
3042
3043         * Platform/CoreIPC/Connection.cpp:
3044         (CoreIPC::Connection::Connection):
3045         (CoreIPC::Connection::sendSyncMessage):
3046         * Platform/CoreIPC/Connection.h:
3047         (CoreIPC::Connection::inSendSync):
3048         * PluginProcess/PluginControllerProxy.cpp:
3049         (WebKit::PluginControllerProxy::destroy):
3050
3051 2013-07-30  Tim Horton  <timothy_horton@apple.com>
3052
3053         Null deref under WebPage::scaledSnapshotWithOptions
3054         https://bugs.webkit.org/show_bug.cgi?id=119243
3055         <rdar://problem/14502050>
3056
3057         Reviewed by Darin Adler.
3058
3059         * WebProcess/WebPage/WebPage.cpp:
3060         (WebKit::WebPage::scaledSnapshotWithOptions):
3061         WebFrame::coreFrame() can be null (if the Frame is already torn down),
3062         so we should check it.
3063
3064 2013-07-30  Tim Horton  <timothy_horton@apple.com>
3065
3066         Null deref under PluginView::handlesPageScaleFactor()
3067         https://bugs.webkit.org/show_bug.cgi?id=119231
3068         <rdar://problem/14440207>
3069
3070         Reviewed by Darin Adler.
3071
3072         Null-check the PluginView in the caller as well.
3073
3074         * WebProcess/WebPage/WebFrame.cpp:
3075         (WebKit::WebFrame::handlesPageScaleGesture):
3076
3077 2013-07-30  Patrick Gansterer  <paroga@webkit.org>
3078
3079         Remove unused Download*.cpp files
3080         https://bugs.webkit.org/show_bug.cgi?id=119248
3081
3082         Reviewed by Anders Carlsson.
3083
3084         * Shared/Downloads/cfnet/DownloadCFNet.cpp: Removed.
3085         * Shared/Downloads/curl/DownloadCurl.cpp: Removed.
3086
3087 2013-07-30  Jeff Miller  <jeffm@apple.com>
3088
3089         Page for WKPageLoaderClient processDidCrash callback always reports a process identifier of 0
3090         https://bugs.webkit.org/show_bug.cgi?id=119269
3091         <rdar://problem/14582393>
3092
3093         Reviewed by Anders Carlsson.
3094
3095         * UIProcess/WebPageProxy.cpp:
3096         (WebKit::WebPageProxy::processIdentifier):
3097         Return 0 if the page is closed instead of requiring isValid().
3098
3099 2013-07-30  Kwang Yul Seo  <skyul@company100.net>
3100
3101         [WK2] Move the implementation of WebEditorClient::checkTextOfParagraph to WebEditorClient.cpp
3102         https://bugs.webkit.org/show_bug.cgi?id=119034
3103
3104         Reviewed by Anders Carlsson.
3105
3106         The Mac and EFL ports use the same implementation of
3107         WebEditorClient::checkTextOfParagraph and GTK will use the same
3108         implementation too. So rather than duplicating the same code in
3109         platform specific files, move the implementation to platform agnostic
3110         WebProcess/WebCoreSupport/WebEditorClient.cpp.
3111
3112         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
3113         (WebKit::WebEditorClient::checkTextOfParagraph):
3114         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
3115         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
3116
3117 2013-07-30  Brian Holt  <brian.holt@samsung.com>
3118
3119         [WebKit2] [Gtk] WebKitResponsePolicyDecision URI response property incorrect
3120         https://bugs.webkit.org/show_bug.cgi?id=119258
3121
3122         Reviewed by Martin Robinson.
3123
3124         Corrected the installed URI response property from PROP_REQUEST to
3125         PROP_RESPONSE and type from WEBKIT_TYPE_URI_REQUEST to
3126         WEBKIT_TYPE_URI_RESPONSE.
3127
3128         * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
3129         (webkit_response_policy_decision_class_init):
3130
3131 2013-07-29  Carlos Garcia Campos  <cgarcia@igalia.com>
3132
3133         Unreviewed. Fix make distcheck.
3134
3135         * GNUmakefile.list.am: Add missing header file to compilation.
3136
3137 2013-07-29  Tim Horton  <timothy_horton@apple.com>
3138
3139         [wk2] Flush the WebProcess’ implicit transaction when using endDeferringViewInWindowChangesSync
3140         https://bugs.webkit.org/show_bug.cgi?id=119225
3141         <rdar://problem/14568841>
3142
3143         Reviewed by Simon Fraser.
3144
3145         Tell CoreAnimation to flush the implicit transaction before replying
3146         when using endDeferringViewInWindowChangesSync, as that method's contract
3147         is that the WebProcess is totally ready to be in-window when it returns.
3148
3149         * UIProcess/API/mac/WKView.mm:
3150         (-[WKView endDeferringViewInWindowChanges]):
3151         Adopt viewInWindowStateDidChange.
3152
3153         (-[WKView endDeferringViewInWindowChangesSync]):
3154         Adopt viewInWindowStateDidChange, asking it to send a reply only if we're going to wait for one.
3155
3156         * UIProcess/WebPageProxy.cpp:
3157         (WebKit::WebPageProxy::viewInWindowStateDidChange):
3158         (WebKit::WebPageProxy::viewStateDidChange):
3159         Pull viewInWindowStateDidChange out of viewStateDidChange.
3160         Request a reply from SetIsInWindow if we're told to.
3161
3162         * UIProcess/WebPageProxy.h: Add WantsReplyOrNot and viewInWindowStateDidChange.
3163         * WebProcess/WebPage/WebPage.cpp:
3164         (WebKit::WebPage::didUpdateInWindowStateTimerFired):
3165         Don't build this version on Mac, we'll have a WebPageMac version.
3166
3167         (WebKit::WebPage::setIsInWindow):
3168         Only start the timer to send the didUpdateInWindowState reply if we're asked to.
3169
3170         * WebProcess/WebPage/WebPage.h:
3171         * WebProcess/WebPage/WebPage.messages.in:
3172         Add an argument to the SetIsInWindow message for whether the WebProcess
3173         should inform the UIProcess when SetIsInWindow completes or not.
3174
3175         * WebProcess/WebPage/mac/WebPageMac.mm:
3176         (WebKit::WebPage::didUpdateInWindowStateTimerFired):
3177         Tell CA to flush the implicit transaction before telling the UIProcess that
3178         we're finished moving in-window.
3179
3180 2013-07-29  Tim Horton  <timothy_horton@apple.com>
3181
3182         Null deref under PluginView::handlesPageScaleFactor()
3183         https://bugs.webkit.org/show_bug.cgi?id=119231
3184         <rdar://problem/14440207>
3185
3186         Reviewed by Simon Fraser.
3187
3188         * WebProcess/Plugins/PluginView.cpp:
3189         (WebKit::PluginView::handlesPageScaleFactor):
3190         * WebProcess/Plugins/PluginView.h:
3191         Null-check m_plugin and check m_isInitialized.
3192         Make pageScaleFactor() and handlesPageScaleFactor const.
3193
3194 2013-07-29  Anders Carlsson  <andersca@apple.com>
3195
3196         Remove setUnderlayPage() and associated code
3197         https://bugs.webkit.org/show_bug.cgi?id=119220
3198         <rdar://problem/14392426>
3199
3200         Reviewed by Jessie Berlin.
3201
3202         This is dead code, get rid of it.
3203
3204         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
3205         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
3206         * WebProcess/WebPage/WebPage.cpp:
3207         (WebKit::WebPage::close):
3208         (WebKit::WebPage::layoutIfNeeded):
3209         (WebKit::WebPage::drawRect):
3210         * WebProcess/WebPage/WebPage.h:
3211
3212 2013-07-29  Sergio Correia  <sergio.correia@openbossa.org>
3213
3214         CoordinatedGraphics: Add API to get and set the active state of a WebView
3215         https://bugs.webkit.org/show_bug.cgi?id=119067
3216
3217         Reviewed by Noam Rosenthal.
3218
3219         A view being in the "active" state generally means that it is not in the
3220         "background", although this definition can vary depending on the platform
3221         under consideration.
3222
3223         This patch adds the following APIs to WKView:
3224         - bool WKViewIsActive(WKViewRef)
3225         This API accepts a WKViewRef as parameter and returns a boolean indicating
3226         whether the given view is active.
3227
3228         - void WKViewSetIsActive(WKViewRef, bool)
3229         This API accepts a WKViewRef and a boolean as parameteres, and it sets the
3230         active state of the given view to the given boolean argument.
3231
3232         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
3233         (WKViewIsActive): API added.
3234         (WKViewSetIsActive): Ditto.
3235         * UIProcess/API/C/CoordinatedGraphics/WKView.h: Export aforementioned API.
3236         * UIProcess/CoordinatedGraphics/WebView.cpp:
3237         (WebKit::WebView::initialize): Use new setActive method.
3238         (WebKit::WebView::setActive): Added method to set the active state of the
3239         view.
3240         (WebKit::WebView::isActive): Added method to return the active state of
3241         view.
3242         (WebKit::WebView::enterAcceleratedCompositingMode): Use new setActive
3243         method.
3244         (WebKit::WebView::exitAcceleratedCompositingMode): Ditto.
3245         * UIProcess/CoordinatedGraphics/WebView.h: Added declarations of isActive
3246         and setActive.
3247
3248 2013-07-29  Jae Hyun Park  <jae.park@company100.net>
3249
3250         Remove duplicated LayerTreeHost::supportsAcceleratedCompositing
3251         https://bugs.webkit.org/show_bug.cgi?id=118949
3252
3253         Reviewed by Noam Rosenthal.
3254
3255         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
3256         * WebProcess/WebPage/LayerTreeHost.h:
3257         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
3258
3259 2013-07-29  Zan Dobersek  <zdobersek@igalia.com>
3260
3261         [Automake] Remove references to non-existent *_CFLAGS and *_LIBS variables
3262         https://bugs.webkit.org/show_bug.cgi?id=119212
3263
3264         Reviewed by Carlos Garcia Campos.
3265
3266         * GNUmakefile.am: Remove references to GLOBALDEPS_(CFLAGS|LIBS) and CLUTTER_(CFLAGS|LIBS)
3267         variables that are not defined during the configuration process.
3268
3269 2013-07-28  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
3270
3271         [EFL][WK2] Simplify context_menu_spelling_items_availability unit test
3272         https://bugs.webkit.org/show_bug.cgi?id=119085
3273
3274         Reviewed by Gyuyoung Kim.
3275
3276         Use findContextMenuItem method to check whether the item
3277         appears in context menu.
3278
3279         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
3280         (EWK2TextCheckerTest::findContextMenuItem):
3281         Do not report failure inside the method.
3282         It doesn't allow to test the negative test cases.
3283
3284         (EWK2TextCheckerTest::checkCorrectnessOfSpellingItems):
3285         Use findContextMenuItem method.
3286
3287         (EWK2TextCheckerTest::toogleCheckSpellingWhileTyping):
3288         (EWK2TextCheckerTest::selectLearnSpelling):
3289         (EWK2TextCheckerTest::selectIgnoreSpelling):
3290         Verify the return value of findContextMenuItem.
3291
3292         (TEST_F):
3293         Reset wasContextMenuShown variable, it's needed after r152153.
3294         Use waitUntilTrue method.
3295
3296 2013-07-27  Jacky Jiang  <zhajiang@blackberry.com>
3297
3298         Replace all uses of GraphicsLayer::create function with the one that takes a GraphicsLayerFactory
3299         https://bugs.webkit.org/show_bug.cgi?id=119186
3300
3301         Reviewed by Anders Carlsson.
3302
3303         * UIProcess/mac/RemoteLayerTreeHost.mm:
3304         (WebKit::RemoteLayerTreeHost::getOrCreateLayer):
3305
3306 2013-07-27  Chris Fleizach  <cfleizach@apple.com>
3307
3308         AX: VoiceOver not working with data detection page overlays
3309         https://bugs.webkit.org/show_bug.cgi?id=118680
3310
3311         Reviewed by Sam Weinig.
3312
3313         Expose API in BundlePageOverlay so that accessibility attributes can be retrieved through the overlay.
3314         This requires two methods in a new callback struct. One to copy the attribute names, and the other to 
3315         copy the attribute values. I've folded both parameterized and non-parameterized attribute names into one method
3316         with a boolean to determine which one should be used. The non-parameterized attributes are not used or passed to the
3317         overlay at this time as there are no clients with such a need.
3318
3319         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
3320         (PageOverlayClientImpl::setAccessibilityClient):
3321         (PageOverlayClientImpl::PageOverlayClientImpl):
3322         (PageOverlayClientImpl::copyAccessibilityAttributeValue):
3323         (PageOverlayClientImpl::copyAccessibilityAttributeNames):
3324         (WKBundlePageOverlaySetAccessibilityClient):
3325         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
3326         * WebProcess/WebPage/PageOverlay.cpp:
3327         (WebKit::PageOverlay::copyAccessibilityAttributeValue):
3328         (WebKit::PageOverlay::copyAccessibilityAttributeNames):
3329         * WebProcess/WebPage/PageOverlay.h:
3330         (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
3331         (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
3332         (WebKit::PageOverlay::client):
3333         * WebProcess/WebPage/WebPage.cpp:
3334         (WebKit::WebPage::pageOverlayCopyAccessibilityAttributeValue):
3335         (WebKit::WebPage::pageOverlayCopyAccessibilityAttributesNames):
3336         * WebProcess/WebPage/WebPage.h:
3337         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
3338         (-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
3339         (-[WKAccessibilityWebPageObject _convertScreenPointToWindow:]):
3340         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
3341
3342 2013-07-27  Simon Fraser  <simon.fraser@apple.com>
3343
3344         If entering fullscreen for a window fails, don't leave things in a bad state
3345         https://bugs.webkit.org/show_bug.cgi?id=119179
3346
3347         Reviewed by Sam Weinig.
3348         
3349         On Lion, attempting to take a video fullscreen when the Safari window is already
3350         fullscreen can sometimes fail, and AppKit informs us via windowDidFailToEnterFullScreen:
3351         
3352         When this happens we have to undo the work done when entering fullscreen, to
3353         avoid leaving things in a bad state.
3354
3355         * UIProcess/mac/WKFullScreenWindowController.mm:
3356         (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
3357
3358 2013-07-26  Tim Horton  <timothy_horton@apple.com>
3359
3360         Add a mode where autosizing fixes the FrameView height to at least the WKView height
3361         https://bugs.webkit.org/show_bug.cgi?id=119104
3362         <rdar://problem/14549021>
3363
3364         Reviewed by Anders Carlsson.
3365
3366         * Shared/WebPageCreationParameters.cpp:
3367         (WebKit::WebPageCreationParameters::encode):
3368         (WebKit::WebPageCreationParameters::decode):
3369         * Shared/WebPageCreationParameters.h:
3370         Add autoSizingShouldExpandToViewHeight parameter.
3371
3372         * UIProcess/API/mac/WKView.mm:
3373         (-[WKView minimumWidthForAutoLayout]):
3374         (-[WKView setMinimumWidthForAutoLayout:]):
3375         Un-deprecate these as they're still useful if not sending a height.
3376
3377         (-[WKView shouldExpandToViewHeightForAutoLayout]):
3378         (-[WKView setShouldExpandToViewHeightForAutoLayout:]):
3379         * UIProcess/API/mac/WKViewPrivate.h:
3380         New property, forward to WebPageProxy.
3381
3382         * UIProcess/WebPageProxy.cpp:
3383         (WebKit::WebPageProxy::WebPageProxy):
3384         (WebKit::WebPageProxy::creationParameters):
3385         (WebKit::WebPageProxy::setAutoSizingShouldExpandToViewHeight):
3386         * UIProcess/WebPageProxy.h:
3387         (WebKit::WebPageProxy::autoSizingShouldExpandToViewHeight):
3388         New property, forward to WebPage.
3389
3390         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3391         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3392         If enabled, update the FrameView's autoSizeFixedMinimumHeight.
3393
3394         * WebProcess/WebPage/WebPage.cpp:
3395         (WebKit::WebPage::WebPage):
3396         (WebKit::WebPage::setAutoSizingShouldExpandToViewHeight):
3397         * WebProcess/WebPage/WebPage.h:
3398         (WebKit::WebPage::autoSizingShouldExpandToViewHeight):
3399         New property; if enabled, set FrameView's autoSizeFixedMinimumHeight,
3400         otherwise reset it to 0.
3401
3402         * WebProcess/WebPage/WebPage.messages.in:
3403         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3404         (WebKit::TiledCoreAnimationDrawingArea::updateIntrinsicContentSizeTimerFired):
3405         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
3406         Retrieve intrinsic content size explicitly from the FrameView, as
3407         it may not have used it as its final contentsSize if
3408         autoSizeFixedMinimumHeight is set.
3409
3410         Set the WebPage's size in case the load is committed so that the
3411         WebFrameLoaderClient doesn't reset us to the wrong size.
3412
3413         Update autoSizeFixedMinimumHeight if enabled when the view size changes.
3414
3415 2013-07-25  Andreas Kling  <akling@apple.com>
3416
3417         ChromeClient::focusedNodeChanged() should be focusedElementChanged().
3418         <http://webkit.org/b/119110>
3419
3420         Reviewed by Anders Carlsson.
3421
3422         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3423         (WebKit::WebChromeClient::focusedElementChanged):
3424         * WebProcess/WebCoreSupport/WebChromeClient.h:
3425
3426 2013-07-25  Kwang Yul Seo  <skyul@company100.net>
3427
3428         [WK2][Soup] Add private browsing support
3429         https://bugs.webkit.org/show_bug.cgi?id=118657
3430
3431         Reviewed by Gustavo Noronha Silva.
3432
3433         Support private browsing in WK2 by implementing private browsing
3434         related methods in WebFrameNetworkingContext.
3435
3436         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3437         (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
3438         Add USE(SOUP) guard.
3439
3440         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
3441         Add private browsing support methods. Copied from the Mac port.
3442         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
3443         (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
3444         (WebKit::WebFrameNetworkingContext::storageSession):
3445         Check if the frame enables private browsing and return the private
3446         browsing session.
3447         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
3448
3449         * WebProcess/WebProcess.cpp:
3450         (WebKit::WebProcess::ensurePrivateBrowsingSession):
3451         Add USE(SOUP) guard.
3452
3453 2013-07-25  Kwang Yul Seo  <skyul@company100.net>
3454
3455         Build fix: use of long long in CoreIPC::ArgumentEncoder and CoreIPC::ArgumentDecoder
3456         https://bugs.webkit.org/show_bug.cgi?id=118228
3457
3458         Reviewed by Anders Carlsson.
3459
3460         Build fails on some platforms where int64_t and long long are different types.
3461
3462         * Shared/FileAPI/BlobRegistrationData.cpp:
3463         (WebKit::BlobRegistrationData::encode):
3464         Add explicit casts to int64_t.
3465         (WebKit::BlobRegistrationData::decode):
3466         Use int64_t instead of long long.
3467
3468 2013-07-25  Anders Carlsson  <andersca@apple.com>
3469
3470         Remove lastModifiedDate from ResourceResponse
3471         https://bugs.webkit.org/show_bug.cgi?id=119092
3472
3473         Reviewed by Andreas Kling.
3474
3475         Update for WebCore changes.
3476
3477         * WebProcess/Plugins/PluginView.cpp:
3478         (WebKit::lastModifiedDate):
3479         Use ResourceResponse::lastModified() to get the last modified date.
3480
3481         (WebKit::PluginView::Stream::didReceiveResponse):
3482         Call the static lastModified function.
3483
3484         (WebKit::PluginView::manualLoadDidReceiveResponse):
3485         Ditto.
3486
3487 2013-07-25  Carlos Garcia Campos  <cgarcia@igalia.com>
3488
3489         [GTK] Add support for running unit tests in the web process
3490         https://bugs.webkit.org/show_bug.cgi?id=118427
3491
3492         Reviewed by Gustavo Noronha Silva.
3493
3494         Some tests, like GObject DOM bindings API tests, run entirely in
3495         the WebProcess, so we just need to start the test from the UI
3496         process and wait until the test finishes running in the
3497         WebProcess. Tests are split in two files, one containing the
3498         actual test that runs in the WebProcess and another one to add the
3499         tests to the glib test system that works as a
3500         proxy. WebProcessTestRunner class starts a private DBus session
3501         bus and starts the tests sending a message to the WebExtension
3502         waiting until it finishes or fails. WebProcess tests are created
3503         by defining a class derived from WebProcessTest class and
3504         implementing the static create method and the virtual runTest
3505         method. The macro REGISTER_TEST is used by the web process tests
3506         to register their test cases. This patch includes the migration