[WebKit2] [GTK] Add API for controlling the user agent
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2012-09-17  Martin Robinson  <mrobinson@igalia.com>
2
3         [WebKit2] [GTK] Add API for controlling the user agent
4         https://bugs.webkit.org/show_bug.cgi?id=95697
5
6         Reviewed by Carlos Garcia Campos.
7
8         Add API for changing the user agent in WebKit2. This adds two styles of
9         setting the user agent: complete override and a method that just inserts
10         the application name and version, but preserves the carefully crafted user agent
11         in the library.
12
13         * UIProcess/API/gtk/WebKitSettings.cpp:
14         (_WebKitSettingsPrivate): Added a new field to store the user agent.
15         This is stored in the private data structure, because we can only
16         set the user agent when attaching the settings to the page.
17         (webKitSettingsSetProperty): Add hooks for the new user agent property.
18         (webKitSettingsGetProperty): Ditto.
19         (webkit_settings_class_init): Ditto.
20         (webkitSettingsAttachSettingsToPage): Ditto.
21         (webkit_settings_get_user_agent): Added.
22         (webkit_settings_set_user_agent): Added.
23         (webkit_settings_set_user_agent_with_application_name): Added.
24         * UIProcess/API/gtk/WebKitSettings.h: Added new methods.
25         * UIProcess/API/gtk/WebKitWebView.cpp: Update the glue for the settings
26         when attaching and detaching from WebViews.
27         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added new methods to
28         the documentation.
29         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp: Test the new user agent
30         property.
31         (testWebKitSettingsUserAgent): Ditto.
32         (beforeAll): Ditto.
33         * UIProcess/gtk/WebPageProxyGtk.cpp:
34         (WebKit::WebPageProxy::standardUserAgent): Now use the shared WebCore
35         code when setting the user agent.
36
37 2012-09-18  Ryuan Choi  <ryuan.choi@samsung.com>
38
39         [EFL][WK2] Implement PageClientImpl::isViewFocused.
40         https://bugs.webkit.org/show_bug.cgi?id=97015
41
42         Reviewed by Gyuyoung Kim.
43
44         WebKit2/Efl always returns true for PageClientImpl::isViewFocused.
45         So window.onblur events will not be generated when webview lost focus.
46
47         This patch implements isViewFocused to return the current focus of webview.
48
49         * UIProcess/API/efl/PageClientImpl.cpp:
50         (WebKit::PageClientImpl::isViewFocused):
51
52 2012-09-18  Byungwoo Lee  <bw80.lee@samsung.com>
53
54         Title string should be changed when document.title is set to ''.
55         https://bugs.webkit.org/show_bug.cgi?id=96793
56
57         Reviewed by Kenneth Rohde Christiansen.
58
59         Added unit test for setting document.title and checking the title
60         string with title,changed signal and ewk_view_title_get() function.
61
62         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
63         (TEST_F):
64
65 2012-09-18  Anders Carlsson  <andersca@apple.com>
66
67         Division by zero crash in BackingStore::scroll
68         https://bugs.webkit.org/show_bug.cgi?id=97046
69         <rdar://problem/11722564>
70
71         Reviewed by Dan Bernstein.
72
73         It appears that DrawingAreaImpl::scroll can be called with an empty scroll rect. Do nothing
74         if that's the case. Also, assert that the scrolling rect in BackingStoreMac is never empty.
75
76         * UIProcess/mac/BackingStoreMac.mm:
77         (WebKit::BackingStore::scroll):
78         * WebProcess/WebPage/DrawingAreaImpl.cpp:
79         (WebKit::DrawingAreaImpl::scroll):
80
81 2012-09-18  Bo Liu  <boliu@chromium.org>
82
83         Revert 128780, 128676, 128645
84         https://bugs.webkit.org/show_bug.cgi?id=97022
85
86         Reviewed by Adam Barth.
87
88         I made these revisions to add in-place reload behavior to ImagesEnabled setting.
89         Reverting this for now due to them causing performance regression in
90         chromium, possibly caused by increased calls to
91         PermissionClient::imageAllowed.
92
93         * win/WebKit2.def:
94
95 2012-09-18  Martin Robinson  <mrobinson@igalia.com>
96
97         [GTK] [WebKit2] Use XComposite window for accelerated compositing
98         https://bugs.webkit.org/show_bug.cgi?id=94417
99
100         Reviewed by Carlos Garcia Campos.
101
102         Instead of rendering directly to the widget's native window, render to an
103         offscreen window redirected to a Pixmap with XComposite.
104
105         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
106         (_WebKitWebViewBasePrivate): Added a few members necessary to track the 
107         offscreen window.
108         (webkit_web_view_base_init):
109         (renderAcceleratedCompositingResults): Added this helper functions which renders
110         the results of the accelerated compositing operations during the GTK+ draw loop.
111         (webkitWebViewBaseDraw): Call renderAcceleratedCompositingResults when appropriate.
112         (resizeWebKitWebViewBaseFromAllocation): Resize the offscreen window when appropriate.
113         (webkitWebViewBaseSizeAllocate): Do not call resizeWebKitWebViewBaseFromAllocation when
114         the actual size of the widget does not change. This prevents destroying and recreating
115         the offscreen window pixmap when it isn't necessary.
116         (webkitWebViewBaseMap): We no longer send the window id during map, instead it's sent
117         as soon as there is WebPageProxy.
118         (webkitWebViewBaseCreateWebPage): Send the window id of the redirected window to
119         the WebProcess.
120         (queueAnotherDrawOfAcceleratedCompositingResults): Added this helper which works
121         around the issue of slow updates of the pixmap backing the redirected XComposite window.
122         (webkitWebViewBaseQueueDrawOfAcceleratedCompositingResults): Added this method which
123         is what the WebProcess uses to force a redraw on the UIProcess side.
124         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Added new method to the list of private methods.
125         * UIProcess/DrawingAreaProxyImpl.h:
126         (DrawingAreaProxyImpl):
127         (WebKit::DrawingAreaProxyImpl::isInAcceleratedCompositingMode): Exposed this method publically
128         so that it can be used from WebKitWebViewBase.
129         * UIProcess/WebPageProxy.h:
130         (WebPageProxy): Renamed widgetMapped to setAcceleratedCompositingWindowId.
131         * UIProcess/WebPageProxy.messages.in: Ditto.
132         * UIProcess/gtk/WebPageProxyGtk.cpp: Ditto.
133         (WebKit::WebPageProxy::setAcceleratedCompositingWindowId):
134         * WebProcess/WebPage/WebPage.h:
135         (WebPage): Ditto.
136         * WebProcess/WebPage/WebPage.messages.in: Ditto.
137         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
138         (WebKit::LayerTreeHostGtk::sizeDidChange): Force a composite to the resized window right
139         away so that the new window pixmap is updated before the first draw.
140         (WebKit::LayerTreeHostGtk::compositeLayersToContext): If the composition is for a resize,
141         first clear the entire GL context so that we don't see black artifacts during resize.
142         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
143         (LayerTreeHostGtk): Update the signature of  compositeLayersToContext.
144         * WebProcess/WebPage/gtk/WebPageGtk.cpp:
145         (WebKit::WebPage::setAcceleratedCompositingWindowId): Added.
146
147 2012-09-18  Sheriff Bot  <webkit.review.bot@gmail.com>
148
149         Unreviewed, rolling out r128849.
150         http://trac.webkit.org/changeset/128849
151         https://bugs.webkit.org/show_bug.cgi?id=97007
152
153         Causes test_ewk2_view to time out. (Requested by rakuco on
154         #webkit).
155
156         * UIProcess/API/efl/ewk_view.cpp:
157         (ewk_view_webprocess_crashed):
158         * UIProcess/API/efl/ewk_view.h:
159         * UIProcess/API/efl/ewk_view_private.h:
160         * UIProcess/API/efl/ewk_view_ui_client.cpp:
161         (ewk_view_ui_client_attach):
162         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
163         (TEST_F):
164
165 2012-09-18  Carlos Garcia Campos  <cgarcia@igalia.com>
166
167         [GTK] Set the area of tooltips in WebKit2
168         https://bugs.webkit.org/show_bug.cgi?id=96618
169
170         Reviewed by Martin Robinson.
171
172         In GTK+ tooltips are associated to a widget, if the mouse is moved
173         inside the widget area, the tooltip position doesn't change even
174         if the tooltip text changes. To support multiple tooltips for the
175         same widget, we need to set the area of the widget for every
176         tooltip.
177
178         * Shared/WebHitTestResult.cpp:
179         (WebKit::WebHitTestResult::Data::encode): Encode elementBoundingBox.
180         (WebKit::WebHitTestResult::Data::decode): Decode elementBoundingBox.
181         * Shared/WebHitTestResult.h:
182         (Data): Add elementBoundingBox to WebHitTestResult::Data.
183         (WebKit::WebHitTestResult::Data::elementBoundingBoxInWindowCoordinates):
184         Get the bounding box of the inner non shared node of the hit test
185         result in window coordinates.
186         (WebKit::WebHitTestResult::Data::Data):
187         (WebKit::WebHitTestResult::elementBoundingBox):
188         (WebHitTestResult):
189         * UIProcess/API/gtk/WebKitWebView.cpp:
190         (webkitWebViewMouseTargetChanged): Call webkitWebViewBaseSetTooltipArea.
191         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
192         (webkitWebViewBaseQueryTooltip): Use the tooltipArea if it's not empty.
193         (webkitWebViewBaseSetTooltipArea): Set the tooltipArea.
194         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
195
196 2012-09-18  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
197
198         [Qt] Fix build without the QtQuick module
199
200         Reviewed by Simon Hausmann.
201
202         * Target.pri:
203
204 2012-09-17  Eunmi Lee  <eunmi15.lee@samsung.com>
205
206         [EFL][WK2] Add NativeWebTouchEvent and handle the Touch event.
207         https://bugs.webkit.org/show_bug.cgi?id=90662
208
209         Reviewed by Gyuyoung Kim.
210
211         Implement codes to handle touch event for WebKit2 EFL port.
212         Additionally, types and structure for touch event are defined because
213         they are not in the Evas.
214
215         * PlatformEfl.cmake:
216         * Shared/NativeWebTouchEvent.h:
217         (NativeWebTouchEvent):
218         * Shared/efl/NativeWebTouchEventEfl.cpp: Added.
219         (WebKit):
220         (WebKit::NativeWebTouchEvent::NativeWebTouchEvent):
221         * Shared/efl/WebEventFactory.cpp:
222         (WebKit):
223         (WebKit::typeForTouchEvent):
224         (WebKit::WebEventFactory::createWebTouchEvent):
225         * Shared/efl/WebEventFactory.h:
226         (WebEventFactory):
227         * UIProcess/API/efl/ewk_touch.h: Added.
228
229 2012-09-17  Csaba Osztrogonác  <ossy@webkit.org>
230
231         Unreviewed, rolling out r128826 and r128813.
232
233         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
234         (WebKit):
235         (WebKit::JSNPObject::JSNPObject):
236         * WebProcess/Plugins/Netscape/JSNPObject.h:
237         (JSNPObject):
238
239 2012-09-17  Kent Tamura  <tkent@chromium.org>
240
241         Export RuntimeEnabledFeatures::isLangAttributeAwareFormControlUIEnabled correctly
242         https://bugs.webkit.org/show_bug.cgi?id=96855
243
244         Reviewed by Hajime Morita.
245
246         * win/WebKit2.def: Remove a symbol
247         * win/WebKit2CFLite.def: ditto.
248
249 2012-09-17  Byungwoo Lee  <bw80.lee@samsung.com>
250
251         [EFL][WK2] Add javascript popup API.
252         https://bugs.webkit.org/show_bug.cgi?id=95672
253
254         Reviewed by Gyuyoung Kim.
255
256         Add smart class member function for javascript alert(), confirm() and prompt().
257
258         * UIProcess/API/efl/ewk_view.cpp:
259         (ewk_view_run_javascript_alert):
260         (ewk_view_run_javascript_confirm):
261         (ewk_view_run_javascript_prompt):
262         * UIProcess/API/efl/ewk_view.h:
263         * UIProcess/API/efl/ewk_view_private.h:
264         * UIProcess/API/efl/ewk_view_ui_client.cpp:
265         (runJavaScriptAlert):
266         (runJavaScriptConfirm):
267         (runJavaScriptPrompt):
268         (ewk_view_ui_client_attach):
269         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
270         Added unit test for javascript popup smart class member function.
271         (checkAlert):
272         (TEST_F):
273         (checkConfirm):
274         (checkPrompt):
275
276 2012-09-17  Regina Chung  <heejin.r.chung@samsung.com>
277
278         [EFL][WK2] Regression (r128163)
279         https://bugs.webkit.org/show_bug.cgi?id=96610
280
281         Reviewed by Gyuyoung Kim.
282
283         While removing compile warnings r128163 changed the logic of code for entering 
284         accelerated compositing mode, resulting in never being able to enter it.
285         Changed back to the correct code and fixed the compile warning by using an
286         appropriate EINA macro.
287
288         * UIProcess/API/efl/ewk_view.cpp:
289         (ewk_view_accelerated_compositing_mode_enter): Changed EINA_SAFETY_ON_NULL_RETURN_VAL to *if* condition statement.
290
291 2012-09-17  Sam Weinig  <sam@webkit.org>
292
293         Fix the Snow Leopard build.
294
295         * PluginProcess/mac/PluginProcessMac.mm:
296         (WebKit::PluginProcess::platformInitialize):
297
298 2012-09-17  Sam Weinig  <sam@webkit.org>
299
300         Add experimental code to enter a sandbox for a plug-in.
301         Based on a patch by Ivan Krstić.
302         <rdar://problem/11823151>
303
304         Reviewed by Anders Carlsson.
305
306         Enter a sandbox for a plug-in if a sandbox profile is found in /usr/share/sandbox/ that
307         has the plug-ins bundle identifier for a name.
308
309         * PluginProcess/mac/PluginProcessMac.mm:
310         (WebKit::initializeSandbox):
311         (WebKit::PluginProcess::platformInitialize):
312         Enter the sandbox provided if a profile can be found.
313
314         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.h:
315         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
316         (enterSandbox):
317         Factor out the core sandbox entering logic (so if can be used above) and make sure
318         that Remote Save Panel is enabled.
319
320 2012-09-17  Mark Hahnenberg  <mhahnenberg@apple.com>
321
322         Fixing the build after http://trac.webkit.org/changeset/128813
323
324         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
325         (WebKit):
326         (WebKit::JSNPObject::JSNPObject):
327         * WebProcess/Plugins/Netscape/JSNPObject.h:
328         (JSNPObject):
329
330 2012-09-17  Anders Carlsson  <andersca@apple.com>
331
332         Crash if we fail to allocate memory for the argument encoder buffer.
333         https://bugs.webkit.org/show_bug.cgi?id=88367
334
335         Reviewed by Andreas Kling.
336         <rdar://problem/11488239>
337
338         Since there's no way to recover from malloc returning null here, just crash.
339
340         * Platform/CoreIPC/ArgumentEncoder.cpp:
341         (CoreIPC::ArgumentEncoder::grow):
342
343 2012-09-17  Beth Dakin  <bdakin@apple.com>
344
345         https://bugs.webkit.org/show_bug.cgi?id=96936
346         Opt into layers for fixed positioned elements for TiledDrawingArea
347
348         Reviewed by Tim Horton.
349
350         This code already exists in DrawingAreaImpl, and we need it for 
351         TiledCoreAnimationDrawingArea as well.
352         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
353         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
354
355 2012-09-17  Anders Carlsson  <andersca@apple.com>
356
357         Don't load a blocked plug-in if a non-blocked version of the same plug-in exists
358         https://bugs.webkit.org/show_bug.cgi?id=96933
359         <rdar://problem/12206720>
360
361         Reviewed by Andreas Kling.
362
363         If a plug-in with the same bundle identifier already exists and it's blocked, remove it and replace it
364         with the other version.
365
366         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
367         (WebKit::PluginInfoStore::shouldUsePlugin):
368
369 2012-09-17  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
370
371         [Qt] Remove 'using namespace WebCore' from header file
372
373         Broke the build on Mac OS X by causing clashes between Fixed from
374         /usr/include/MacTypes.h and Source/WebCore/platform/Length.h.
375
376         Reviewed by Simon Hausmann..
377
378         * UIProcess/PageViewportController.cpp:
379         * UIProcess/PageViewportController.h:
380         (PageViewportController):
381         (WebKit::PageViewportController::contentsLayoutSize):
382         (WebKit):
383         * UIProcess/qt/PageViewportControllerClientQt.cpp:
384         * UIProcess/qt/PageViewportControllerClientQt.h:
385         (PageViewportControllerClientQt):
386
387 2012-09-15  Vivek Galatage  <vivekgalatage@gmail.com>
388
389         WinCairo build fix due to missing symbols for setImagesEnabled and setStorageBlockingPolicy
390         https://bugs.webkit.org/show_bug.cgi?id=96866
391
392         Reviewed by Kentaro Hara.
393
394         Adding missing symbol defines in the def file to fix the build break
395         for WinCairo
396
397         * win/WebKit2CFLite.def:
398
399 2012-09-15  Jinwoo Song  <jinwoo7.song@samsung.com>
400
401         [EFL][WK2] Provide implementation for PageClientImpl::processDidCrash()
402         https://bugs.webkit.org/show_bug.cgi?id=96197
403
404         Reviewed by Gyuyoung Kim.
405
406         WebKit2 EFL does not have an implementation for PageClientImpl::processDidCrash().
407         So when WebProcess has crashed, UI process does nothing and is left alone as it is.
408
409         This patch checks if loading was ongoing, if so, set the load progress as 1.
410         Then send a signal callback "webprocess,crashed" for an application to handle it.
411         If the application does not handle the crash event, show an Eina Log warning message
412         with a url at web process exit and load an error page.
413
414         * UIProcess/API/efl/PageClientImpl.cpp:
415         (WebKit::PageClientImpl::processDidCrash):
416         * UIProcess/API/efl/ewk_private.h:
417         * UIProcess/API/efl/ewk_view.cpp:
418         (ewk_view_webprocess_crashed):
419         * UIProcess/API/efl/ewk_view.h:
420         * UIProcess/API/efl/ewk_view_private.h:
421
422 2012-09-15  Pierre Rossi  <pierre.rossi@gmail.com>
423
424         [Qt] QDoc fixes for Qt 5 documentation
425         https://bugs.webkit.org/show_bug.cgi?id=96796
426
427         Reviewed by Simon Hausmann.
428
429         Fixup miscellaneous qdoc commands syntax.
430
431         * UIProcess/API/qt/qquickwebview.cpp:
432         * UIProcess/API/qt/qwebloadrequest.cpp:
433
434 2012-09-14  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
435
436         Add *explicit* keyword to constructors to WebKit2/UIProcess
437         https://bugs.webkit.org/show_bug.cgi?id=96732
438
439         Reviewed by Kentaro Hara.
440
441         As a step of *explicit* cleanup for constructors which have only one parameter,
442         *explicit* is added to WebKit2/UIProcess in order to avoid implicit type conversion.
443
444         * UIProcess/Authentication/AuthenticationDecisionListener.h:
445         (AuthenticationDecisionListener):
446         * UIProcess/Authentication/WebCredential.h:
447         (WebCredential):
448         * UIProcess/Authentication/WebProtectionSpace.h:
449         (WebProtectionSpace):
450         * UIProcess/GenericCallback.h:
451         (WebKit::CallbackBase::CallbackBase):
452         * UIProcess/InspectorServer/WebSocketServer.h:
453         * UIProcess/ResponsivenessTimer.h:
454         (ResponsivenessTimer):
455         * UIProcess/WebApplicationCacheManagerProxy.h:
456         (WebApplicationCacheManagerProxy):
457         * UIProcess/WebBackForwardList.h:
458         (WebBackForwardList):
459         * UIProcess/WebContextUserMessageCoders.h:
460         (WebKit::WebContextUserMessageEncoder::WebContextUserMessageEncoder):
461         * UIProcess/WebFullScreenManagerProxy.h:
462         (WebFullScreenManagerProxy):
463         * UIProcess/WebGrammarDetail.h:
464         (WebGrammarDetail):
465         * UIProcess/WebInspectorProxy.h:
466         (WebInspectorProxy):
467         * UIProcess/WebKeyValueStorageManagerProxy.h:
468         (WebKeyValueStorageManagerProxy):
469         * UIProcess/WebMediaCacheManagerProxy.h:
470         (WebMediaCacheManagerProxy):
471         * UIProcess/WebNavigationData.h:
472         (WebNavigationData):
473         * UIProcess/WebOpenPanelResultListenerProxy.h:
474         (WebOpenPanelResultListenerProxy):
475         * UIProcess/WebPopupMenuProxy.h:
476         (WebKit::WebPopupMenuProxy::WebPopupMenuProxy):
477         * UIProcess/WebPreferences.h:
478         (WebPreferences):
479
480 2012-09-14  Beth Dakin  <bdakin@apple.com>
481
482         https://bugs.webkit.org/show_bug.cgi?id=96846
483         Tests failing on WK2 bots after giving fixed positioning its own 
484         stacking context
485
486         Reviewed by Geoffrey Garen.
487
488         Tests are failing because I checked in updated results that expect 
489         fixed positioning to create a stacking context. However, 
490         WebKitTestRunner does not enable ScrollingCoordinator, so the code 
491         that I added to enable stacking contexts for fixedPos is never 
492         actually running. This patch moves that code to a place where it will 
493         run for the testing tools, which matches the patch for WK1.
494         * WebProcess/WebPage/DrawingAreaImpl.cpp:
495         (WebKit::DrawingAreaImpl::updatePreferences):
496         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
497         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
498
499 2012-09-14  Julien Chaffraix  <jchaffraix@webkit.org>
500
501         Revert r127457 and following fixes due to several hit-testing regressions
502         https://bugs.webkit.org/show_bug.cgi?id=96830
503
504         Reviewed by Antonio Gomes.
505
506         This change reverts r127457, r127863 and r128505.
507
508         * win/WebKit2.def:
509         * win/WebKit2CFLite.def:
510
511 2012-09-14  Adam Barth  <abarth@webkit.org>
512
513         Remove webkitPostMessage
514         https://bugs.webkit.org/show_bug.cgi?id=96577
515
516         Reviewed by Ojan Vafai.
517
518         Add ENABLE_LEGACY_VENDOR_PREFIXES flag.
519
520         * Configurations/FeatureDefines.xcconfig:
521
522 2012-09-14  Jeffrey Pfau  <jpfau@apple.com>
523
524         Allow third-party storage blocking setting to change while a page is loaded
525         https://bugs.webkit.org/show_bug.cgi?id=95790
526
527         Reviewed by Brady Eidson.
528
529         Inform plugins about changes to the storage blocking policy by way of the private browsing feature.
530
531         * PluginProcess/PluginControllerProxy.cpp:
532         (WebKit::PluginControllerProxy::storageBlockingStateChanged):
533         (WebKit):
534         * PluginProcess/PluginControllerProxy.h:
535         (PluginControllerProxy):
536         * PluginProcess/PluginControllerProxy.messages.in: Add WK2 message for storageBlockingStateChanged.
537         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
538         (WebKit::NetscapePlugin::storageBlockingStateChanged):
539         (WebKit):
540         (WebKit::NetscapePlugin::privateBrowsingStateChanged):
541         (WebKit::NetscapePlugin::updateNPNPrivateMode): Set plugin's private browsing if either private browsing or storage blocking is enabled.
542         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
543         (NetscapePlugin):
544         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
545         (BuiltInPDFView):
546         * WebProcess/Plugins/PDF/BuiltInPDFView.mm: Treat storageBlockingStateChanged as a no-op.
547         (WebKit::BuiltInPDFView::storageBlockingStateChanged):
548         (WebKit):
549         * WebProcess/Plugins/Plugin.h: Add pure virtual storageBlockingStateChanged method.
550         (Plugin):
551         * WebProcess/Plugins/PluginProxy.cpp:
552         (WebKit::PluginProxy::storageBlockingStateChanged):
553         (WebKit):
554         * WebProcess/Plugins/PluginProxy.h:
555         (PluginProxy):
556         * WebProcess/Plugins/PluginView.cpp:
557         (WebKit::PluginView::storageBlockingStateChanged):
558         (WebKit):
559         * WebProcess/Plugins/PluginView.h:
560         (PluginView):
561         * win/WebKit2.def:
562
563 2012-09-14  Beth Dakin  <bdakin@apple.com>
564
565         https://bugs.webkit.org/show_bug.cgi?id=96688
566         Put position:fixed elements in their own layers and allow them to 
567         create a stacking context
568         -and corresponding-
569         <rdar://problem/11467961>
570
571         Reviewed by Simon Fraser.
572
573         Soon we want pages with fixed positioned elements to be able to be 
574         scrolled by the ScrollingCoordinator. As a part of that work, we have 
575         to composite fixed position elements, and we have to allow those
576         elements to create a stacking context.
577         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
578         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
579
580 2012-09-14  Bo Liu  <boliu@chromium.org>
581
582         Add in-place reload behavior to ImagesEnabled setting
583         https://bugs.webkit.org/show_bug.cgi?id=95478
584
585         Reviewed by Adam Barth.
586
587         Export WebCore::Settings::setImagesEnabled symbol.
588
589         * win/WebKit2.def:
590
591 2012-09-14  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
592
593         [EFL] RefPtr<Evas_Object> unit tests fails
594         https://bugs.webkit.org/show_bug.cgi?id=96809
595
596         Reviewed by Kenneth Rohde Christiansen.
597
598         Added missing return.
599
600         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
601         (EWK2UnitTest::EWK2UnitTestBase::canvas):
602
603 2012-09-14  Christophe Dumez  <christophe.dumez@intel.com>
604
605         WebKitTestRunner needs layoutTestController.dumpDatabaseCallbacks
606         https://bugs.webkit.org/show_bug.cgi?id=57570
607
608         Reviewed by Kenneth Rohde Christiansen.
609
610         Add new didExceedDatabaseQuota callback to WKBundlePageUIClient
611         and call it from WebChromeClient::exceededDatabaseQuota().
612         This is needed by WebKitTestRunner to dump information about
613         database callbacks.
614
615         * Shared/APIClientTraits.h:
616         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
617         * WebProcess/InjectedBundle/InjectedBundle.cpp:
618         (WebKit::InjectedBundle::setDatabaseQuota): Call WebDatabaseManager::setQuotaForOrigin()
619         with "file__0" instead of "file:///" as origin identifier. WebDatabaseManager expects
620         a database identifier, not a string representation of the security origin. "file__0" is
621         the string that is used as databaseIdentifier of local files. This bug was causing the
622         database quota not to be set. The test cases would therefore fail due to the quota being
623         0 instead of the value explicitly set.
624         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
625         (WebKit::InjectedBundlePageUIClient::didExceedDatabaseQuota):
626         (WebKit):
627         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
628         (InjectedBundlePageUIClient):
629         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
630         (WebKit::WebChromeClient::exceededDatabaseQuota):
631
632 2012-09-14  Christophe Dumez  <christophe.dumez@intel.com>
633
634         WebKitTestRunner needs layoutTestController.setStopProvisionalFrameLoads
635         https://bugs.webkit.org/show_bug.cgi?id=42691
636
637         Reviewed by Kenneth Rohde Christiansen.
638
639         Add WKBundleFrame private API to stop loading of a frame.
640         This is needed by WebKitTestRunner to implement
641         testrunner.setStopProvisionalFrameLoads.
642
643         Original patch by Alexey Proskuryakov.
644
645         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
646         (WKBundleFrameStopLoading):
647         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
648         * WebProcess/WebPage/WebFrame.cpp:
649         (WebKit::WebFrame::stopLoading):
650         (WebKit):
651         * WebProcess/WebPage/WebFrame.h:
652         (WebFrame):
653
654 2012-09-14  Kenneth Rohde Christiansen  <kenneth@webkit.org>
655
656         [EFL] Add unit test for RefPtr<Evas_Object>
657         https://bugs.webkit.org/show_bug.cgi?id=96776
658
659         Reviewed by Simon Hausmann.
660
661         Basic testing of the new EFL specific RefPtr type.
662
663         * PlatformEfl.cmake:
664         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
665         (EWK2UnitTest::EWK2UnitTestBase::backingStore):
666         (EWK2UnitTest::EWK2UnitTestBase::canvas):
667
668             Add some new accessors for Ecore_Evas and Evas*.
669
670         * UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp: Added.
671         (TEST_F):
672
673 2012-09-14  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
674
675         [Qt] Move .mm file to OBJECTIVE_SOURCES
676
677         Reviewed by Simon Hausmann.
678
679         * Target.pri:
680
681 2012-09-14  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
682
683         WebKitTestRunner needs layoutTestController.setTabKeyCyclesThroughElements
684         https://bugs.webkit.org/show_bug.cgi?id=42687
685
686         Reviewed by Kenneth Rohde Christiansen.
687
688         Implement testRunner.setTabKeyCyclesThroughElements for
689         WebKitTestRunner.
690
691         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
692         (WKBundleSetTabKeyCyclesThroughElements):
693         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
694         * WebProcess/InjectedBundle/InjectedBundle.cpp:
695         (WebKit::InjectedBundle::setTabKeyCyclesThroughElements):
696         (WebKit):
697         * WebProcess/InjectedBundle/InjectedBundle.h:
698         (InjectedBundle):
699
700 2012-09-14  Keishi Hattori  <keishi@webkit.org>
701
702         Add runtime flag that enables lang attribute for form controls in LayoutTests
703         https://bugs.webkit.org/show_bug.cgi?id=96636
704
705         Reviewed by Kent Tamura.
706
707         * win/WebKit2.def:
708         * win/WebKit2CFLite.def:
709
710 2012-09-14  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
711
712         Add method to get the list of all available dictionaries
713         https://bugs.webkit.org/show_bug.cgi?id=96518
714
715         Reviewed by Carlos Garcia Campos.
716
717         * UIProcess/API/gtk/WebKitTextChecker.cpp:
718         (WebKitTextChecker::getSpellCheckingLanguages):
719         Update the method name that is called inside getSpellCheckingLanguages.
720         This replace doesn't affect any on API changes.
721
722 2012-09-13  KwangYong Choi  <ky0.choi@samsung.com>
723
724         [WK2] Add color picker API support for WebKit2
725         https://bugs.webkit.org/show_bug.cgi?id=95058
726
727         Reviewed by Gyuyoung Kim.
728
729         Add support for color picker API to WebKit2.
730
731         * CMakeLists.txt:
732         * GNUmakefile.list.am:
733         * Shared/API/c/WKBase.h:
734         * Shared/APIClientTraits.cpp:
735         (WebKit):
736         * Shared/APIClientTraits.h:
737         * Shared/APIObject.h:
738         * Target.pri:
739         * UIProcess/API/C/WKAPICast.h:
740         (WebKit):
741         * UIProcess/API/C/WKColorPickerResultListener.cpp: Added.
742         (WKColorPickerResultListenerGetTypeID):
743         (WKColorPickerResultListenerColorSet):
744         * UIProcess/API/C/WKColorPickerResultListener.h: Added.
745         * UIProcess/API/C/WKPage.h:
746         * UIProcess/API/gtk/WebKitUIClient.cpp:
747         (attachUIClientToView):
748         * UIProcess/WebColorChooserProxy.cpp: Added.
749         (WebKit):
750         (WebKit::WebColorChooserProxy::WebColorChooserProxy):
751         (WebKit::WebColorChooserProxy::~WebColorChooserProxy):
752         (WebKit::WebColorChooserProxy::endChooser):
753         (WebKit::WebColorChooserProxy::setSelectedColor):
754         * UIProcess/WebColorChooserProxy.h:
755         (WebColorChooserProxy):
756         (WebKit::WebColorChooserProxy::create):
757         * UIProcess/WebColorPickerResultListenerProxy.cpp: Added.
758         (WebKit):
759         (WebKit::WebColorPickerResultListenerProxy::WebColorPickerResultListenerProxy):
760         (WebKit::WebColorPickerResultListenerProxy::~WebColorPickerResultListenerProxy):
761         (WebKit::WebColorPickerResultListenerProxy::invalidate):
762         (WebKit::WebColorPickerResultListenerProxy::setColor):
763         * UIProcess/WebColorPickerResultListenerProxy.h: Added.
764         (WebKit):
765         (WebColorPickerResultListenerProxy):
766         (WebKit::WebColorPickerResultListenerProxy::create):
767         (WebKit::WebColorPickerResultListenerProxy::type):
768         * UIProcess/WebPageProxy.cpp:
769         (WebKit::WebPageProxy::close):
770         (WebKit::WebPageProxy::showColorChooser):
771         (WebKit::WebPageProxy::didEndColorChooser):
772         (WebKit::WebPageProxy::processDidCrash):
773         * UIProcess/WebPageProxy.h:
774         (WebKit):
775         (WebPageProxy):
776         * UIProcess/WebUIClient.cpp:
777         (WebKit):
778         (WebKit::WebUIClient::showColorPicker):
779         (WebKit::WebUIClient::hideColorPicker):
780         * UIProcess/WebUIClient.h:
781         (WebKit):
782         (WebUIClient):
783         * WebKit2.xcodeproj/project.pbxproj:
784         * win/WebKit2.vcproj:
785         * win/WebKit2Generated.make:
786
787 2012-09-13  KwangYong Choi  <ky0.choi@samsung.com>
788
789         [EFL][WK2] Implement missing initializeLogChannel function
790         https://bugs.webkit.org/show_bug.cgi?id=96478
791
792         Reviewed by Gyuyoung Kim.
793
794         Implemented log channel initialization function for EFL platform in WebKit2.
795
796         * Platform/Logging.cpp:
797         (WebKit):
798         * Platform/Logging.h:
799         (WebKit):
800         * Platform/efl/LoggingEfl.cpp: Added.
801         (WebKit):
802         (WebKit::initializeLogChannel): Channel is initialized if its name is found in WEBKIT_DEBUG.
803         * PlatformEfl.cmake:
804
805 2012-09-13  Mark Rowe  <mrowe@apple.com>
806
807         <rdar://problem/12283706> WebKit looks for some files on the system even when building against an SDK.
808
809         Reviewed by David Kilzer.
810
811         If an SDK is being used, pass it through to our custom invocations of the preprocessor.
812
813         * DerivedSources.make:
814
815 2012-09-13  Brent Fulgham  <bfulgham@webkit.org>
816
817         [WinCairo] Unreviewed build fix for export declarations.
818
819         New entries were added to the standard Windows export definition
820         file, but were not added to the WinCairo version, breaking the build.
821
822         * win/WebKit2CFLite.def: Incoproate changes from WebKit2.def file.
823
824 2012-09-13  Tim Horton  <timothy_horton@apple.com>
825
826         Add optional debug logging when we fall into/out of threaded scrolling
827         https://bugs.webkit.org/show_bug.cgi?id=93898
828         <rdar://problem/12089098>
829
830         Reviewed by Simon Fraser.
831
832         Update the scrolling tree's scrollingPerformanceLoggingEnabled preference
833         before the early-return if we don't have layer debugging borders on.
834
835         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
836         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
837
838 2012-09-13  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
839
840         [WK2][WTR] WebKitTestRunner needs testRunner.callShouldCloseOnWebView
841         https://bugs.webkit.org/show_bug.cgi?id=96366
842
843         Reviewed by Anders Carlsson.
844
845         Implement testRunner.callShouldCloseOnWebView for WebKitTestRunner
846         by calling shouldClose() on the FrameLoader.
847
848         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
849         (WKBundleFrameCallShouldCloseOnWebView):
850         * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
851
852 2012-09-13  Thiago Marcos P. Santos  <thiago.santos@intel.com>
853
854         [EFL] Assertion reached on RenderThemeEFL when setting a theme to an invalid path
855         https://bugs.webkit.org/show_bug.cgi?id=96649
856
857         Reviewed by Kenneth Rohde Christiansen.
858
859         Updated the alternative test theme file. It is basically
860         the default theme with extra padding on the button widget as
861         specified by the comments on the test case.
862
863         * UIProcess/API/efl/tests/resources/big_button_theme.edj:
864
865 2012-09-13  Balazs Kelemen  <kbalazs@webkit.org>
866
867         [WK2] LayerTreeCoordinator should release unused UpdatedAtlases
868         https://bugs.webkit.org/show_bug.cgi?id=95072
869
870         Reviewed by Jocelyn Turcotte.
871
872         Release graphic buffers that haven't been used for a while in order to save memory.
873         This way we can give back memory to the system when no user interaction happens
874         after a period of time, for example when we are in the background.
875
876         * Shared/ShareableBitmap.h:
877         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
878         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
879         (WebKit::LayerTreeCoordinator::beginContentUpdate):
880         (WebKit):
881         (WebKit::LayerTreeCoordinator::scheduleReleaseInactiveAtlases):
882         (WebKit::LayerTreeCoordinator::releaseInactiveAtlasesTimerFired):
883         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
884         (LayerTreeCoordinator):
885         * WebProcess/WebPage/UpdateAtlas.cpp:
886         (WebKit::UpdateAtlas::UpdateAtlas):
887         (WebKit::UpdateAtlas::didSwapBuffers):
888         Don't call buildLayoutIfNeeded here. It's enought to call it in beginPaintingOnAvailableBuffer
889         and this way we can track whether this atlas is used with m_areaAllocator.
890         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
891         * WebProcess/WebPage/UpdateAtlas.h:
892         (WebKit::UpdateAtlas::addTimeInactive):
893         (WebKit::UpdateAtlas::isInactive):
894         (WebKit::UpdateAtlas::isInUse):
895         (UpdateAtlas):
896
897 2012-09-13  Lauro Neto  <lauro.neto@openbossa.org>
898
899         [Qt][WK2] fast/forms/access-key-for-all-elements.html fails
900         https://bugs.webkit.org/show_bug.cgi?id=73917
901
902         Reviewed by Simon Hausmann.
903
904         Access-key tests were failing due to hardcoded Mac OS X in the
905         Qt WK2 user agent string. This commit moves the WK1 implementation
906         to a shared one to be used by both versions.
907
908         Use the shared implementation instead of hardcoding the user agent.
909
910         * UIProcess/qt/WebPageProxyQt.cpp:
911         (WebKit::WebPageProxy::standardUserAgent):
912
913 2012-09-13  Simon Hausmann  <simon.hausmann@nokia.com>
914
915         [Qt] Fix build of WTR and the QML2 plugin on Windows
916         https://bugs.webkit.org/show_bug.cgi?id=96652
917
918         Reviewed by Tor Arne Vestbø.
919
920         Some components that we build such as WTR or the QML2 plugin include
921         WebKit2 header files as well as WebKit2's config.h. Only the include
922         paths of WebKit2 are required for that at the moment (WEBKIT +=
923         webkit2). Only on Windows WebKit2's config.h also includes
924         WebCore/config.h, which in turn requires to have WebCore/platform in
925         your include search path. That in turn means that any component that
926         wants to use WebKit2 headers also needs the WebCore headers, but only
927         one Windows. It turns out that for the Qt build we don't need it, so
928         skip it in our configuration and make the include path requirement
929         the same across all the platforms we build.
930
931         * config.h:
932
933 2012-09-13  Andras Becsi  <andras.becsi@nokia.com>
934
935         [Qt][WK2] REGRESSION(r128245): It made zillion API tests fail
936         https://bugs.webkit.org/show_bug.cgi?id=96531
937
938         Reviewed by Jocelyn Turcotte.
939
940         Preferences have to be updated after the drawing area was created
941         for compositing mode to be set.
942
943         * WebProcess/WebPage/WebPage.cpp:
944         (WebKit::WebPage::WebPage):
945
946 2012-09-13  Simon Hausmann  <simon.hausmann@nokia.com>
947
948         [Qt] Fix UIProcess build with Qt on Windows
949         https://bugs.webkit.org/show_bug.cgi?id=96635
950
951         Reviewed by Csaba Osztrogonác.
952
953         Enabling setShouldCloseConnectionOnProcessTermination on the connection
954         is something that is only implemented in ConnectionUnix, not
955         ConnectionWin.cpp, where appears to be built-in functionality.
956
957         * UIProcess/WebConnectionToWebProcess.cpp:
958         (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
959
960 2012-09-13  Oswald Buddenhagen  <oswald.buddenhagen@nokia.com>
961
962         [Qt] Fix build against namespaced Qt
963
964         Reviewed by Tor Arne Vestbø.
965
966         * UIProcess/qt/PageViewportControllerClientQt.h:
967
968 2012-09-13  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
969
970         [EFL][Qt][WK2] Implement shared undo controller for EFL and Qt port.
971         https://bugs.webkit.org/show_bug.cgi?id=92504
972
973         Reviewed by Kenneth Rohde Christiansen.
974
975         EFL port needs an undo controller similiar to one from Qt port. Instead of
976         duplicating the code existing class was renamed and moved to UIProcess
977         directory.
978
979         * PlatformEfl.cmake:
980         * Target.pri:
981         * UIProcess/API/efl/PageClientImpl.cpp:
982         (WebKit::PageClientImpl::registerEditCommand):
983         (WebKit::PageClientImpl::clearAllEditCommands):
984         (WebKit::PageClientImpl::canUndoRedo):
985         (WebKit::PageClientImpl::executeUndoRedo):
986         * UIProcess/API/efl/PageClientImpl.h:
987         (PageClientImpl):
988         * UIProcess/API/qt/qquickwebview_p_p.h:
989         (QQuickWebViewPrivate):
990         * UIProcess/DefaultUndoController.cpp: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoController.cpp.
991         (WebKit):
992         (WebKit::DefaultUndoController::registerEditCommand):
993         (WebKit::DefaultUndoController::clearAllEditCommands):
994         (WebKit::DefaultUndoController::canUndoRedo):
995         (WebKit::DefaultUndoController::executeUndoRedo):
996         * UIProcess/DefaultUndoController.h: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoController.h.
997         (WebKit):
998         (DefaultUndoController):
999         * UIProcess/qt/QtPageClient.cpp:
1000         (WebKit::QtPageClient::initialize):
1001         * UIProcess/qt/QtPageClient.h:
1002         (WebKit):
1003         (QtPageClient):
1004
1005 2012-09-13  Christophe Dumez  <christophe.dumez@intel.com>
1006
1007         [EFL][WK2] Make _ref() functions return the object
1008         https://bugs.webkit.org/show_bug.cgi?id=96604
1009
1010         Reviewed by Gyuyoung Kim.
1011
1012         Make _ref() functions return the ref'd object to
1013         make them more convenient to use. Also fix their
1014         usage to make use of the newly returned value.
1015
1016         This change is consistent with eina_stringshare_ref()
1017         in EFL and g_object_ref() in glib.
1018
1019         * UIProcess/API/efl/ewk_back_forward_list.cpp:
1020         (createEinaList):
1021         * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
1022         (ewk_back_forward_list_item_ref):
1023         * UIProcess/API/efl/ewk_back_forward_list_item.h:
1024         * UIProcess/API/efl/ewk_context.cpp:
1025         (ewk_context_download_job_add):
1026         * UIProcess/API/efl/ewk_download_job.cpp:
1027         (ewk_download_job_ref):
1028         (ewk_download_job_response_set):
1029         * UIProcess/API/efl/ewk_download_job.h:
1030         * UIProcess/API/efl/ewk_form_submission_request.cpp:
1031         (ewk_form_submission_request_ref):
1032         * UIProcess/API/efl/ewk_form_submission_request.h:
1033         * UIProcess/API/efl/ewk_intent.cpp:
1034         (ewk_intent_ref):
1035         * UIProcess/API/efl/ewk_intent.h:
1036         * UIProcess/API/efl/ewk_intent_service.cpp:
1037         (ewk_intent_service_ref):
1038         * UIProcess/API/efl/ewk_intent_service.h:
1039         * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
1040         (ewk_navigation_policy_decision_ref):
1041         * UIProcess/API/efl/ewk_navigation_policy_decision.h:
1042         * UIProcess/API/efl/ewk_url_request.cpp:
1043         (ewk_url_request_ref):
1044         * UIProcess/API/efl/ewk_url_request.h:
1045         * UIProcess/API/efl/ewk_url_response.cpp:
1046         (ewk_url_response_ref):
1047         * UIProcess/API/efl/ewk_url_response.h:
1048         * UIProcess/API/efl/ewk_url_scheme_request.cpp:
1049         (ewk_url_scheme_request_ref):
1050         * UIProcess/API/efl/ewk_url_scheme_request.h:
1051         * UIProcess/API/efl/ewk_view.cpp:
1052         (ewk_view_resource_load_initiated):
1053         * UIProcess/API/efl/ewk_web_resource.cpp:
1054         (ewk_web_resource_ref):
1055         * UIProcess/API/efl/ewk_web_resource.h:
1056
1057 2012-09-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1058
1059         Unreviewed, rolling out r127876.
1060         http://trac.webkit.org/changeset/127876
1061         https://bugs.webkit.org/show_bug.cgi?id=96600
1062
1063         mouse click doesn't work for spin button if spin button in
1064         iframe (Requested by yosin on #webkit).
1065
1066         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
1067         (WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
1068         * WebProcess/WebPage/WebPage.cpp:
1069         (WebKit::handleContextMenuEvent):
1070         (WebKit::WebPage::highlightPotentialActivation):
1071         (WebKit::WebPage::findZoomableAreaForPoint):
1072         * WebProcess/WebPage/mac/WebPageMac.mm:
1073         (WebKit::WebPage::characterIndexForPoint):
1074         (WebKit::WebPage::performDictionaryLookupAtLocation):
1075         (WebKit::WebPage::shouldDelayWindowOrderingEvent):
1076         (WebKit::WebPage::acceptsFirstMouse):
1077         * win/WebKit2.def:
1078         * win/WebKit2CFLite.def:
1079
1080 2012-09-12  Brady Eidson  <beidson@apple.com>
1081
1082         Assert in NetscapePlugin::destroy() with async plugin init
1083         <rdar://problem/12277595> and https://bugs.webkit.org/show_bug.cgi?id=96576
1084
1085         Reviewed by Anders Carlsson.
1086
1087         Most of the NPN_* API calls have a plug-in protector during the calls.
1088         NPN_Invoke and NPN_InvokeDefault do not.
1089
1090         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
1091         (WebKit::NPN_Invoke): Protect the plug-in during this call.
1092         (WebKit::NPN_InvokeDefault): Ditto.
1093
1094 2012-09-11  Alexey Proskuryakov  <ap@apple.com>
1095
1096         <rdar://problem/12275537> REGRESSION(r127384): Non-existent directories are no longer created for sandbox paths
1097         https://bugs.webkit.org/show_bug.cgi?id=96442
1098
1099         Reviewed by Darin Adler.
1100
1101         * Shared/SandboxExtension.h:
1102         (WebKit::SandboxExtension::createHandleForReadWriteDirectory):
1103         * Shared/mac/SandboxExtensionMac.mm:
1104         (WebKit::SandboxExtension::createHandleForReadWriteDirectory):
1105         Added a function for read-write configuration directories. It matches
1106         appendReadwriteSandboxDirectory() function behavior from WebProcessMac.mm.
1107
1108         * UIProcess/WebContext.cpp:
1109         (WebKit::WebContext::createNewWebProcess):
1110         * UIProcess/mac/WebContextMac.mm:
1111         (WebKit::WebContext::platformInitializeWebProcess):
1112         Use the new function for directories that need to be created if they don't exist.
1113
1114 2012-09-12  Christophe Dumez  <christophe.dumez@intel.com>
1115
1116         [WK2][WKTR] TestRunner needs to implement originsWithApplicationCache
1117         https://bugs.webkit.org/show_bug.cgi?id=96496
1118
1119         Reviewed by Kenneth Rohde Christiansen.
1120
1121         Add Bundle C API to retrieve security origins with
1122         an application cache. This is needed by WebKitTestRunner
1123         to support originsWithApplicationCache.
1124
1125         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1126         (WKBundleCopyOriginsWithApplicationCache):
1127         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1128         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1129         (WebKit::InjectedBundle::originsWithApplicationCache):
1130         (WebKit):
1131         * WebProcess/InjectedBundle/InjectedBundle.h:
1132         (InjectedBundle):
1133
1134 2012-09-12  Christophe Dumez  <christophe.dumez@intel.com>
1135
1136         [WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
1137         https://bugs.webkit.org/show_bug.cgi?id=96374
1138
1139         Reviewed by Kenneth Rohde Christiansen.
1140
1141         Add Bundle C API to reset the application cache quota
1142         for a given origin.
1143
1144         Add new reachedApplicationCacheOriginQuota callback
1145         to WKBundlePageUIClient which is called from
1146         WebChromeClient::reachedApplicationCacheOriginQuota().
1147
1148         Those are needed by WebKitTestRunner to dump
1149         information about the application cache callbacks
1150         if instructed to.
1151
1152         * Shared/APIClientTraits.cpp:
1153         (WebKit):
1154         * Shared/APIClientTraits.h:
1155         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1156         (WKBundleSetApplicationCacheOriginQuota):
1157         (WKBundleResetApplicationCacheOriginQuota):
1158         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1159         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1160         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1161         (WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
1162         (WebKit):
1163         * WebProcess/InjectedBundle/InjectedBundle.h:
1164         (InjectedBundle):
1165         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1166         (WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
1167         (WebKit):
1168         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
1169         (WebKit):
1170         (InjectedBundlePageUIClient):
1171         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1172         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
1173         * win/WebKit2.def:
1174         * win/WebKit2CFLite.def:
1175
1176 2012-09-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1177
1178         Unreviewed, rolling out r128280.
1179         http://trac.webkit.org/changeset/128280
1180         https://bugs.webkit.org/show_bug.cgi?id=96498
1181
1182         it broke compilation on windows debug bot (Requested by loislo
1183         on #webkit).
1184
1185         * Shared/APIClientTraits.cpp:
1186         (WebKit):
1187         * Shared/APIClientTraits.h:
1188         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1189         (WKBundleSetApplicationCacheOriginQuota):
1190         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1191         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1192         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1193         * WebProcess/InjectedBundle/InjectedBundle.h:
1194         (InjectedBundle):
1195         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1196         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
1197         (WebKit):
1198         (InjectedBundlePageUIClient):
1199         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1200         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
1201
1202 2012-09-12  Byungwoo Lee  <bw80.lee@samsung.com>
1203
1204         [EFL][WK2] WorkQueue::dispatchAfterDelay() doesn't work properly.
1205         https://bugs.webkit.org/show_bug.cgi?id=91179
1206
1207         Reviewed by Gyuyoung Kim.
1208
1209         When UI Process is crashed and WebProcess's ecore main loop is very
1210         busy or lockup also, watchdocCallback() function in the
1211         ChildProcess.cpp doesn't triggered. And this is because of that
1212         WorkQueue::dispatchAfterDelay() function uses ecore timer for getting
1213         timer event.
1214
1215         For removing the dependency between the dispatchAfterDelay() and ecore
1216         main loop, new timer event mechanism is added to WorkQueue main loop.
1217
1218         * Platform/WorkQueue.h:
1219         (TimerWorkItem):
1220         (WorkQueue::TimerWorkItem::dispatch):
1221         (WorkQueue::TimerWorkItem::expireTime):
1222         (WorkQueue::TimerWorkItem::expired):
1223         (WorkQueue):
1224         * Platform/efl/WorkQueueEfl.cpp:
1225         (WorkQueue::TimerWorkItem::create):
1226         (WorkQueue::TimerWorkItem::TimerWorkItem):
1227         (WorkQueue::performFileDescriptorWork):
1228         (WorkQueue::getCurrentTime):
1229         (WorkQueue::getNextTimeOut):
1230         (WorkQueue::performTimerWork):
1231         (WorkQueue::workQueueThread):
1232         (WorkQueue::dispatchAfterDelay):
1233
1234 2012-09-12  Christophe Dumez  <christophe.dumez@intel.com>
1235
1236         [WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
1237         https://bugs.webkit.org/show_bug.cgi?id=96374
1238
1239         Reviewed by Kenneth Rohde Christiansen.
1240
1241         Add Bundle C API to reset the application cache quota
1242         for a given origin.
1243
1244         Add new reachedApplicationCacheOriginQuota callback
1245         to WKBundlePageUIClient which is called from
1246         WebChromeClient::reachedApplicationCacheOriginQuota().
1247
1248         Those are needed by WebKitTestRunner to dump
1249         information about the application cache callbacks
1250         if instructed to.
1251
1252         * Shared/APIClientTraits.cpp:
1253         (WebKit):
1254         * Shared/APIClientTraits.h:
1255         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1256         (WKBundleSetApplicationCacheOriginQuota):
1257         (WKBundleResetApplicationCacheOriginQuota):
1258         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1259         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1260         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1261         (WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
1262         (WebKit):
1263         * WebProcess/InjectedBundle/InjectedBundle.h:
1264         (InjectedBundle):
1265         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1266         (WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
1267         (WebKit):
1268         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
1269         (WebKit):
1270         (InjectedBundlePageUIClient):
1271         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1272         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
1273
1274 2012-09-12  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1275
1276         [WK2] [WTR] WebKitTestRunner needs TestRunner.workerThreadCount
1277         https://bugs.webkit.org/show_bug.cgi?id=96388
1278
1279         Reviewed by Kenneth Rohde Christiansen.
1280
1281         Added WKBundleGetWorkerThreadCount() function to Injected Bundle private API.
1282
1283         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1284         (WKBundleGetWorkerThreadCount):
1285         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1286         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1287         (WebKit::InjectedBundle::workerThreadCount): Returns count of worker threads.
1288         (WebKit):
1289         * WebProcess/InjectedBundle/InjectedBundle.h:
1290         (InjectedBundle):
1291
1292 2012-09-12  Darin Adler  <darin@apple.com>
1293
1294         Make NetscapePlugin::m_timers use HashMap<OwnPtr> instead of deleteAllValues
1295         https://bugs.webkit.org/show_bug.cgi?id=96469
1296
1297         Reviewed by Dan Bernstein.
1298
1299         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1300         (WebKit::NetscapePlugin::scheduleTimer): Call release rather than leakPtr when
1301         entering a timer into the map.
1302         (WebKit::NetscapePlugin::unscheduleTimer): Take an existing timer from the map
1303         with the take function rather than the roundabout code needed before.
1304         (WebKit::NetscapePlugin::destroy): Remove now-unneeded call to deleteAllValues.
1305         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Change the value type for
1306         TimerMap to OwnPtr<Timer> rather than Timer*.
1307
1308 2012-09-11  Anders Carlsson  <andersca@apple.com>
1309
1310         Accelerated compositing should always be forced when using the tiled drawing area
1311         https://bugs.webkit.org/show_bug.cgi?id=96449
1312
1313         Reviewed by Andy Estes.
1314
1315         There's code in WebPage::updatePreferences that will turn off accelerated compositing unless accelerated drawing is enabled.
1316         This should only be done in the non-tiled model, so move the code to DrawingAreaImpl::updatePreferences.
1317
1318         * WebProcess/WebPage/DrawingArea.h:
1319         (WebKit::DrawingArea::updatePreferences):
1320         This now takes a WebPreferencesStore.
1321
1322         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1323         (WebKit::DrawingAreaImpl::updatePreferences):
1324         Move code here from WebPage::updatePreferences.
1325
1326         * WebProcess/WebPage/WebPage.cpp:
1327         (WebKit::WebPage::updatePreferences):
1328         Pass the WebPreferencesStore to DrawingArea::updatePreferences.
1329
1330         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
1331         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1332         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
1333         Remove call to updatePreferences, it's going to be called by the WebPage object later.
1334
1335         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
1336         This now takes a WebPreferencesStore.
1337
1338 2012-09-11  Brady Eidson  <beidson@apple.com>
1339
1340         Get rid of the PluginProcessShim for 64-bit plug-ins
1341         <rdar://problem/12068560> and https://bugs.webkit.org/show_bug.cgi?id=96415
1342
1343         Reviewed by Anders Carlsson.
1344
1345         * PluginProcess/PluginProcess.h:
1346         (PluginProcess):
1347
1348         * PluginProcess/mac/PluginProcessMac.mm:
1349         (WebKit::getCurrentEventButtonState):
1350         (WebKit):
1351         (WebKit::beginModal): Moved from the shim, to be shared with shimmed processes.
1352         (WebKit::endModal): Ditto.
1353         (WebKit::replacedRunModalForWindow): Only used by Cocoa overrides.
1354         (WebKit::PluginProcess::initializeShim):
1355         (WebKit::PluginProcess::initializeCocoaOverrides): 
1356
1357         * PluginProcess/mac/PluginProcessMainMac.mm:
1358         (WebKit::PluginProcessMain): Only call initializeShim for 32-bit processes, always call initializeCocoaOverrides
1359
1360         * PluginProcess/mac/PluginProcessShim.h:
1361         (PluginProcessShimCallbacks):
1362         * PluginProcess/mac/PluginProcessShim.mm:
1363         (WebKit):
1364         (WebKit::shimModalDialog): Call beginModal/endModal from the shim callbacks.
1365         (WebKit::shimAlert): Ditto.
1366         (WebKit::WebKitPluginProcessShimInitialize): Don't do the Cocoa overrides as they are now handled outside the shim.
1367
1368 2012-09-11  Marcelo Lira  <marcelo.lira@openbossa.org>
1369
1370         Restore original value of mock scrollbars enabled in InternalSettings
1371         https://bugs.webkit.org/show_bug.cgi?id=87680
1372
1373         Reviewed by Adam Barth.
1374
1375         Added backup support for mock scrollbars state in
1376         InternalSettings::Backup, and removed support for these
1377         from Qt's DumpRenderTree.
1378
1379         * win/WebKit2.def:
1380
1381 2012-09-11  Brady Eidson  <beidson@apple.com>
1382
1383         We should wait longer before killing the PluginProcess.
1384         <rdar://problem/12067728> and https://bugs.webkit.org/show_bug.cgi?id=96407
1385
1386         Reviewed by Anders Carlsson.
1387
1388         Currently we kill the PluginProcess 15 seconds after the last plug-in is destroyed.
1389         This is short enough that most users will have the process killed many times during browsing sessions,
1390         which is painful because relaunching the process is I/O and kernel intensive.
1391
1392         In an ideal world we could keep it around forever until the system tells us resources are running low.
1393
1394         In reality we do want to kill it occasionally to get a clean slate from any plug-in leaks.
1395
1396         A reasonable balance for now is to set a minimum lifetime of 30 minutes on the plug-in process and to 
1397         extend the termination timer from 15 seconds to 10 minutes.
1398         
1399         * PluginProcess/PluginProcess.cpp:
1400         (WebKit::PluginProcess::PluginProcess):
1401         (WebKit::PluginProcess::initializePluginProcess):
1402         (WebKit::PluginProcess::setMinimumLifetime):
1403         (WebKit):
1404         (WebKit::PluginProcess::minimumLifetimeTimerFired):
1405         * PluginProcess/PluginProcess.h:
1406         (PluginProcess):
1407
1408         * Shared/Plugins/PluginProcessCreationParameters.cpp:
1409         (WebKit::PluginProcessCreationParameters::encode):
1410         (WebKit::PluginProcessCreationParameters::decode):
1411         * Shared/Plugins/PluginProcessCreationParameters.h:
1412         (PluginProcessCreationParameters):
1413
1414         * UIProcess/Plugins/PluginProcessProxy.cpp:
1415         (WebKit):
1416         (WebKit::PluginProcessProxy::didFinishLaunching):
1417
1418 2012-09-11  Jinwoo Song  <jinwoo7.song@samsung.com>
1419
1420         Deploy StringBuilder::appendNumber() and StringBuilder::appendLiteral() in more places
1421         https://bugs.webkit.org/show_bug.cgi?id=96344
1422
1423         Reviewed by Benjamin Poulain.
1424
1425         Use StringBuilder::appendNumber() instead of String::number(). Also deploy 
1426         StringBuilder::appendLiteral() instead of String::append() in the surrounding code.
1427
1428         * Shared/WebMemorySampler.cpp:
1429         (WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):
1430         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
1431         (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
1432         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
1433         (WebKit::WebInspectorServer::inspectorUrlForPageID):
1434         (WebKit::WebInspectorServer::buildPageList):
1435
1436 2012-09-11  Anders Carlsson  <andersca@apple.com>
1437
1438         Fix speling error in comment.
1439
1440         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1441         (WebKit::isTransparentSilverlightBackgroundValue):
1442
1443 2012-09-11  Raphael Kubo da Costa  <rakuco@webkit.org>
1444
1445         [EFL] Rewrite the EFL-related Find modules
1446         https://bugs.webkit.org/show_bug.cgi?id=95237
1447
1448         Reviewed by Kenneth Rohde Christiansen.
1449
1450         * CMakeLists.txt: Stop setting the LINK_FLAGS property.
1451         * PlatformEfl.cmake: Add libraries and include directories for
1452         each Enlightenment Foundation Library used by the port.
1453
1454 2012-09-11  Christophe Dumez  <christophe.dumez@intel.com>
1455
1456         [WK2][WKTR] TestRunner needs to implement setApplicationCacheOriginQuota
1457         https://bugs.webkit.org/show_bug.cgi?id=96379
1458
1459         Reviewed by Kenneth Rohde Christiansen.
1460
1461         Add Bundle C API to set the application cache quota for a
1462         given security origin. This is needed by WebKitTestRunner
1463         to implement setApplicationCacheOriginQuota().
1464
1465         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1466         (WKBundleSetApplicationCacheOriginQuota):
1467         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1468         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1469         (WebKit::InjectedBundle::setApplicationCacheOriginQuota):
1470         (WebKit):
1471         * WebProcess/InjectedBundle/InjectedBundle.h:
1472         (InjectedBundle):
1473
1474 2012-09-11  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1475
1476         [WK2][WTR] WebKitTestRunner needs testRunner.setSpatialNavigationEnabled
1477         https://bugs.webkit.org/show_bug.cgi?id=96269
1478
1479         Reviewed by Kenneth Rohde Christiansen.
1480
1481         Added a new setter for spacial navigation enabling to Injected Bundle private API.
1482
1483         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1484         (WKBundleSetSpatialNavigationEnabled):
1485         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1486         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1487         (WebKit::InjectedBundle::setSpatialNavigationEnabled):
1488         (WebKit):
1489         * WebProcess/InjectedBundle/InjectedBundle.h:
1490         (InjectedBundle):
1491
1492 2012-09-11  Marcelo Lira  <marcelo.lira@openbossa.org>
1493
1494         [Qt][WK2] Page loading status API lacks a status for intentionally stopped loading
1495         https://bugs.webkit.org/show_bug.cgi?id=83062
1496
1497         Reviewed by Tor Arne Vestbø.
1498
1499         When the loading of a page is intentionally interrupted, the loading
1500         status is set to the new state LoadStoppedStatus. This reflects
1501         reality more accurately because the page was not fully loaded
1502         (a LoadSucceededStatus), and it wasn't an unexpected error
1503         (a LoadFailedStatus).
1504
1505         * UIProcess/API/qt/qquickwebview.cpp:
1506         (QQuickWebViewPrivate::loadDidStop):
1507         * UIProcess/API/qt/qquickwebview_p.h:
1508         * UIProcess/API/qt/qquickwebview_p_p.h:
1509         (QQuickWebViewPrivate):
1510         * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
1511         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadUrl.qml:
1512         * UIProcess/API/qt/tests/qmltests/common/TestWebView.qml:
1513         * UIProcess/qt/QtWebPageLoadClient.cpp:
1514         (WebKit::QtWebPageLoadClient::dispatchLoadStopped):
1515         (WebKit):
1516         (WebKit::QtWebPageLoadClient::dispatchLoadFailed):
1517         * UIProcess/qt/QtWebPageLoadClient.h:
1518         (QtWebPageLoadClient):
1519
1520 2012-09-11  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1521
1522         [Qt] Add a configure step to the Qt build system
1523
1524         This allows building the Qt port using just 'qmake WebKit.pro'. Using
1525         the build-webkit script is still supported, and will add slightly more
1526         logic to the build, such as detecting the need for clean or incremental
1527         builds.
1528
1529         Internally, the build system now uses a new variable, WEBKIT_CONFIG, for
1530         all things related to configuring the build, such as use/have/enable flags,
1531         and these are translated to defines in default_post. Project files should
1532         no longer check contains(DEFINES,...) to detect features, but use the new
1533         enable?(), use?(), and have?() functions. The no_webkit1 and no_webkit2
1534         options have been translated into WEBKIT_CONFIG options as well, and can
1535         be checked using build?().
1536
1537         Reviewed by Simon Hausmann.
1538
1539         * Target.pri:
1540         * UIProcess/API/qt/tests/tests.pri:
1541         * WebKit2.pri:
1542         * config.h:
1543
1544 2012-09-11  Christophe Dumez  <christophe.dumez@intel.com>
1545
1546         [WK2][WKTR] TestRunner needs to implement clearApplicationCacheForOrigin
1547         https://bugs.webkit.org/show_bug.cgi?id=96372
1548
1549         Reviewed by Kenneth Rohde Christiansen.
1550
1551         Add Bundle C API to clear the application cache for a
1552         given origin. This is needed by WebKitTestRunner to
1553         implement clearApplicationCacheForOrigin().
1554
1555         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1556         (WKBundleClearApplicationCacheForOrigin):
1557         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1558         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1559         (WebKit::InjectedBundle::clearApplicationCacheForOrigin):
1560         (WebKit):
1561         * WebProcess/InjectedBundle/InjectedBundle.h:
1562         (InjectedBundle):
1563
1564 2012-09-11  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1565
1566         [WK2][WTR] WebKitTestRunner needs layoutTestController.setMinimumTimerInterval
1567         https://bugs.webkit.org/show_bug.cgi?id=96256
1568
1569         Reviewed by Kenneth Rohde Christiansen.
1570
1571         Added new setter for minimum DOM timer interval to InjectedBundle private API.
1572
1573         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1574         (WKBundleSetMinimumTimerInterval):
1575         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1576         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1577         (WebKit::InjectedBundle::setMinimumTimerInterval):
1578         (WebKit):
1579         * WebProcess/InjectedBundle/InjectedBundle.h:
1580         (InjectedBundle):
1581
1582 2012-09-11  Kangil Han  <kangil.han@samsung.com>
1583
1584         [WK2][EFL] Fix compile warnings when enable tiled backing store
1585         https://bugs.webkit.org/show_bug.cgi?id=95342
1586
1587         Reviewed by Gyuyoung Kim.
1588
1589         Fixed compile time warning messages when enable tiled backing store.
1590
1591         * UIProcess/API/efl/ewk_view.cpp:
1592         (ewk_view_accelerated_compositing_mode_enter): Fixed invalid use of 'EINA_SAFETY_ON_NULL_RETURN_VAL' since it used '!' ahead of evasGl value so it is always null.
1593         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1594         (WebCore::CoordinatedGraphicsLayer::setChildren): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.
1595         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1596         (WebKit::LayerTreeCoordinator::renderNextFrame): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.
1597         (WebKit::LayerTreeCoordinator::beginContentUpdate): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.
1598
1599 2012-09-11  Byungwoo Lee  <bw80.lee@samsung.com>
1600
1601         [EFL][WK2] WKEinaSharedString needs a function to adopt eina stringshare.
1602         https://bugs.webkit.org/show_bug.cgi?id=96201
1603
1604         Reviewed by Kenneth Rohde Christiansen.
1605
1606         WKEinaSharedString needs a to adopt eina stringshare directly.
1607
1608         With this adopt function, an instance that is directly created with
1609         eina_stringshare_add() can be easily handled by WKEinaSharedString
1610         without calling eina_stringshare_del() for preventing memory leak.
1611
1612         * UIProcess/API/cpp/efl/WKEinaSharedString.cpp:
1613         (WKEinaSharedString::adopt):
1614         * UIProcess/API/cpp/efl/WKEinaSharedString.h:
1615         * UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:
1616         (TEST_F):
1617
1618 2012-09-11  Andras Becsi  <andras.becsi@nokia.com>
1619
1620         [Qt][WK2] Fix the build with recent Qt5
1621         https://bugs.webkit.org/show_bug.cgi?id=96283
1622
1623         Reviewed by Simon Hausmann.
1624
1625         We should not use deprecated Qt API because doing that results
1626         in build failure since all the deprecated API was disabled
1627         in qtbase (https://codereview.qt-project.org/#change,24890).
1628
1629         * UIProcess/API/qt/qwebnavigationhistory.cpp:
1630         (QWebNavigationListModel::roleNames):
1631         (QWebNavigationListModel::reset):
1632         * UIProcess/API/qt/qwebnavigationhistory_p.h:
1633         * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
1634         (WebView::load):
1635         * UIProcess/qt/WebPopupMenuProxyQt.cpp:
1636         (PopupMenuItemModel):
1637         (WebKit::PopupMenuItemModel::PopupMenuItemModel):
1638         (WebKit::PopupMenuItemModel::roleNames):
1639         (WebKit):
1640
1641 2012-09-11  Christophe Dumez  <christophe.dumez@intel.com>
1642
1643         WTR needs an implementation of applicationCacheDiskUsageForOrigin
1644         https://bugs.webkit.org/show_bug.cgi?id=87188
1645
1646         Reviewed by Kenneth Rohde Christiansen.
1647
1648         Add Bundle private C API to retrieve the application cache
1649         usage for a specific security origin. This is needed by
1650         WebKitTestRunner.
1651
1652         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1653         (WKBundleGetAppCacheUsageForOrigin):
1654         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1655         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1656         (WebKit::InjectedBundle::appCacheUsageForOrigin):
1657         (WebKit):
1658         * WebProcess/InjectedBundle/InjectedBundle.h:
1659         (InjectedBundle):
1660
1661 2012-09-11  Zhigang Gong  <zhigang.gong@linux.intel.com>
1662
1663         [EFL][WK2] Add necessary include directory in WebKit2
1664         https://bugs.webkit.org/show_bug.cgi?id=95173
1665
1666         Unreviewed build fix.
1667
1668         revision r126694: Move TextureMapperGL to use
1669         GraphicsContext3D. modify the TextureMapperGL.h to include
1670         GraphicsContext3D.h. And when enable TEXTURE_MAPPER,
1671         file WebKit2/Shared/ShareableSurface.cpp will include
1672         TextureMapperGL.h then depends on GraphicsContext3D.h
1673         thus it need to add ANGLE director. As currently, this
1674         problem only affect EFL platform, according to Gyuyoung Kim's
1675         suggestion, we add this include dir into EFL private file
1676         PlatformEfl.cmake. Otherwise, the build will fail.
1677
1678         To trigger this problem by using the following command:
1679         ./Tools/Scripts/build-webkit --efl --3d-rendering --tiled-backing-store
1680
1681         * CMakeLists.txt:
1682
1683 2012-09-10  Byungwoo Lee  <bw80.lee@samsung.com>
1684
1685         [EFL][WK2] Build warning : fix warning about extended initializer lists on EWK2UnitTestBase.cpp.
1686         https://bugs.webkit.org/show_bug.cgi?id=95990
1687
1688         Reviewed by Gyuyoung Kim.
1689
1690         Fix build warning about extended initializer lists only available with
1691         -std=c++0x or -std=gnu++0x.
1692
1693         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1694         (EWK2UnitTest::ewk2UnitTestBrowserViewSmartClass):
1695         (EWK2UnitTest):
1696         (EWK2UnitTest::EWK2UnitTestBase::EWK2UnitTestBase):
1697
1698 2012-09-10  Beth Dakin  <bdakin@apple.com>
1699
1700         https://bugs.webkit.org/show_bug.cgi?id=96158
1701         Need API to suppress scrollbar animations
1702         -and corresponding-
1703         <rdar://problem/12210972>
1704
1705         Reviewed by Sam Weinig.
1706
1707         Add suppressScrollbarAnimations as a WebCreationParameter.
1708         * Shared/WebPageCreationParameters.h:
1709         (WebPageCreationParameters):
1710
1711         New API. Calls into the web process for the setter but not the 
1712         getter.
1713         * UIProcess/API/C/WKPage.cpp:
1714         (WKPageSetSuppressScrollbarAnimations):
1715         (WKPageAreScrollbarAnimationsSuppressed):
1716         * UIProcess/API/C/WKPage.h:
1717         * UIProcess/WebPageProxy.cpp:
1718         (WebKit::WebPageProxy::WebPageProxy):
1719         (WebKit::WebPageProxy::setSuppressScrollbarAnimations):
1720         (WebKit):
1721         (WebKit::WebPageProxy::creationParameters):
1722         * UIProcess/WebPageProxy.h:
1723         (WebPageProxy):
1724         (WebKit::WebPageProxy::areScrollbarAnimationsSuppressed):
1725         * WebProcess/WebPage/WebPage.messages.in:
1726
1727         Call into WebCore.
1728         * WebProcess/WebPage/WebPage.cpp:
1729         (WebKit::WebPage::setSuppressScrollbarAnimations):
1730         (WebKit):
1731         * WebProcess/WebPage/WebPage.h:
1732         (WebPage):
1733
1734         This ScrollableArea area function is re-named by this patch in 
1735         WebCore.
1736         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
1737         * WebProcess/Plugins/PDF/BuiltInPDFView.mm:
1738         (WebKit::BuiltInPDFView::scrollbarsCanBeActive):
1739
1740 2012-09-10  James Robinson  <jamesr@chromium.org>
1741
1742         Unreviewed, rolling out r127837.
1743         http://trac.webkit.org/changeset/127837
1744         https://bugs.webkit.org/show_bug.cgi?id=93898
1745
1746         Broke ScrollingCoordinator on chromium
1747
1748         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1749         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
1750
1751 2012-09-10  Jer Noble  <jer.noble@apple.com>
1752
1753         Unreviewed; rolling out r128081.
1754         http://trac.webkit.org/changeset/128081
1755         https://bugs.webkit.org/show_bug.cgi?id=96134
1756
1757         New test http/tests/media/video-donottrack.html fails to run on Apple test bots.
1758
1759         * Shared/APIClientTraits.h:
1760         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1761         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1762         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1763         (InjectedBundlePageLoaderClient):
1764         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1765         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1766         (WebFrameLoaderClient):
1767         * WebProcess/qt/QtBuiltinBundlePage.cpp:
1768         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
1769
1770 2012-09-07  Jon Lee  <jonlee@apple.com>
1771
1772         Update notifications to latest spec
1773         https://bugs.webkit.org/show_bug.cgi?id=91726
1774         <rdar://problem/11910451>
1775
1776         Reviewed by Alexey Proskuryakov.
1777
1778         Expose lang and dir.
1779
1780         * UIProcess/API/C/WKNotification.cpp:
1781         (WKNotificationCopyLang):
1782         (WKNotificationCopyDir):
1783         * UIProcess/API/C/WKNotification.h:
1784         * UIProcess/Notifications/WebNotification.cpp:
1785         (WebKit::WebNotification::WebNotification):
1786         * UIProcess/Notifications/WebNotification.h:
1787         (WebKit::WebNotification::create):
1788         (WebKit::WebNotification::lang):
1789         (WebKit::WebNotification::dir):
1790         (WebNotification):
1791         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
1792         (WebKit::WebNotificationManagerProxy::show):
1793         * UIProcess/Notifications/WebNotificationManagerProxy.h:
1794         (WebNotificationManagerProxy):
1795         * UIProcess/WebPageProxy.cpp:
1796         (WebKit::WebPageProxy::showNotification):
1797         * UIProcess/WebPageProxy.h:
1798         (WebPageProxy):
1799         * UIProcess/WebPageProxy.messages.in:
1800         * WebProcess/Notifications/WebNotificationManager.cpp:
1801         (WebKit::WebNotificationManager::show):
1802
1803 2012-09-10  Alexey Proskuryakov  <ap@apple.com>
1804
1805         Build fix.
1806
1807         * UIProcess/WebContext.h: Added a default value for relatedPage argment - if
1808         you don't have one, null is fine.
1809
1810 2012-09-10  Alexey Proskuryakov  <ap@apple.com>
1811
1812         [WK2] Add an API to open a page in same process
1813         https://bugs.webkit.org/show_bug.cgi?id=96306
1814
1815         Reviewed by Anders Carlsson.
1816
1817         The name "related" inspired by <http://wiki.whatwg.org/wiki/Links_to_Unrelated_Browsing_Contexts>.
1818
1819         * UIProcess/API/mac/WKView.h: Added an API. It's unwieldy, but I blame
1820         WKBrowsingContextGroup, not the related view.
1821
1822         * UIProcess/API/mac/WKViewPrivate.h: Matching SPI for clients that mostly use
1823         C APIs.
1824
1825         * UIProcess/API/mac/WKView.mm:
1826         (-[WKView initWithFrame:processGroup:browsingContextGroup:]): Use new back-end
1827         signature.
1828         (-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
1829         Get page from WKView, and call back-end.
1830         (-[WKView initWithFrame:contextRef:pageGroupRef:]): Reimplement existing method
1831         by calling new, more powerful one.
1832         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Just one change,
1833         pass relatedPage to the context.
1834
1835         * UIProcess/WebContext.cpp: (WebKit::WebContext::createWebPage): If related page
1836         is not null, use its process.
1837
1838         * UIProcess/WebContext.h: (WebContext): Updated createWebPage signature.
1839
1840 2012-09-10  Brady Eidson  <beidson@apple.com>
1841
1842         Javascript in foreground tabs should not wait synchronously for plug-ins to load
1843         <rdar://problem/12067415> and https://bugs.webkit.org/show_bug.cgi?id=96167
1844
1845         Reviewed by Geoff Garen.
1846
1847         Synchronously waiting for initialization to complete when javascript accesses the plug-in script object severely
1848         reduces the effectiveness of having an asynchronous NPP_New.
1849
1850         Such as with background tabs that have never been viewed, we already have cases where JS calls into the plug-in 
1851         element fail because we haven't bothered to initialize the plug-in.
1852
1853         We get a huge win by expanding that to foreground tabs that simply haven't finished initializing their plug-ins.
1854
1855         * WebProcess/Plugins/PluginView.cpp:
1856         (WebKit::PluginView::scriptObject): If initialization is not complete just return 0 - They can get at the script object later.
1857
1858         Remove the notion of "wait for asynchronous initialization" altogether:
1859         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1860         (NetscapePlugin):
1861         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
1862         (BuiltInPDFView):
1863         * WebProcess/Plugins/Plugin.h:
1864         (Plugin):
1865         * WebProcess/Plugins/PluginProxy.cpp:
1866         * WebProcess/Plugins/PluginProxy.h:
1867         (PluginProxy):
1868
1869 2012-09-07  Jer Noble  <jer.noble@apple.com>
1870
1871         <audio> and <video> should send Do Not Track when appropriate
1872         https://bugs.webkit.org/show_bug.cgi?id=96134
1873
1874         Reviewed by Eric Carlson.
1875
1876         Add support for the shouldSendDoNotTrackHTTPHeader by passing the request
1877         on to the WebFrameLoadDelegate.
1878
1879         * Shared/APIClientTraits.cpp: Increment the interfaceSizes for 
1880             WKBundlePageLoaderClient by the value of the new functions.
1881         * Shared/APIClientTraits.h: Ditto.
1882         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add a new API to 
1883             WKBundlePageLoaderClient and bump the version number.
1884         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1885         (WebKit::InjectedBundlePageLoaderClient::shouldSendDoNotTrackHTTPHeader):
1886             Pass the question on to the client.
1887         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1888         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1889         (WebKit::WebFrameLoaderClient::shouldSendDoNotTrackHTTPHeader):
1890             Pass the question on to the bundle.
1891         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1892         * WebProcess/qt/QtBuiltinBundlePage.cpp:
1893         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
1894             Add an entry for the new function in the Qt loader client.
1895
1896 2012-09-10  Carlos Garcia Campos  <cgarcia@igalia.com>
1897
1898         [SOUP] Don't convert to UTF-8 the suggestedFilename passed to Download::decideDestinationWithSuggestedFilename()
1899         https://bugs.webkit.org/show_bug.cgi?id=96261
1900
1901         Reviewed by Martin Robinson.
1902
1903         * WebProcess/Downloads/soup/DownloadSoup.cpp:
1904         (WebKit::DownloadClient::didReceiveResponse):
1905
1906 2012-09-10  Alexander Shalamov  <alexander.shalamov@intel.com>
1907
1908         [EFL][WK2] Add fullscreen enter / exit signals to the ewk_view API
1909         https://bugs.webkit.org/show_bug.cgi?id=92362
1910
1911         Reviewed by Gyuyoung Kim.
1912
1913         Handle WebFullScreenManagerProxy::enterFullScreen and exitFullScreen
1914         methods, so that ewk_view could enter and exit fullscreen mode when requested.
1915         Also, two callbacks were added to ewk_view API, so that UI could customise
1916         behavior when fullscreen mode is requested, e.g. show security dialog.
1917
1918         * UIProcess/API/efl/ewk_settings.cpp:
1919         (ewk_settings_fullscreen_enabled_set):
1920         (ewk_settings_fullscreen_enabled_get):
1921         * UIProcess/API/efl/ewk_settings.h:
1922         * UIProcess/API/efl/ewk_view.cpp:
1923         (_ewk_view_initialize):
1924         (ewk_view_full_screen_enter):
1925         (ewk_view_full_screen_exit):
1926         * UIProcess/API/efl/ewk_view.h:
1927         * UIProcess/API/efl/ewk_view_private.h:
1928         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
1929         (TEST_F):
1930         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1931         (fullScreenCallback):
1932         (checkFullScreenProperty):
1933         (TEST_F):
1934         * UIProcess/efl/WebFullScreenManagerProxyEfl.cpp:
1935         (WebKit::WebFullScreenManagerProxy::enterFullScreen):
1936         (WebKit::WebFullScreenManagerProxy::exitFullScreen):
1937
1938 2012-09-10  Kevin Funk  <kevin.funk@kdab.com>
1939
1940         [Qt] Fix deprecation failures if QT_NO_DEPRECATED enabled
1941         https://bugs.webkit.org/show_bug.cgi?id=96258
1942
1943         Reviewed by Simon Hausmann.
1944
1945         Sync with latest changes in Qt5.
1946
1947         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
1948         * WebProcess/qt/WebProcessQt.cpp:
1949
1950 2012-09-10  Carlos Garcia Campos  <cgarcia@igalia.com>
1951
1952         [GTK] Sanitize the suggested filename when building the download destination URI
1953         https://bugs.webkit.org/show_bug.cgi?id=96260
1954
1955         Reviewed by Gustavo Noronha Silva.
1956
1957         The suggested filename returned by the server can contain
1958         directory separators so that the filename would be interpreted as
1959         a full path.
1960
1961         * UIProcess/API/gtk/WebKitDownload.cpp:
1962         (webkitDownloadDecideDestination): Convert any directory separator
1963         contained in the suggested filename to an underscore.
1964
1965 2012-09-10  Simon Hausmann  <simon.hausmann@nokia.com>
1966
1967         [Qt] Fix generation of forward headers for generated files in WebCore on Windows
1968         https://bugs.webkit.org/show_bug.cgi?id=96245
1969
1970         Reviewed by Tor Arne Vestbø.
1971
1972         We generate the forwarding header files of generated WebCore sources by using
1973         mkdir to ensure the target directory exists, followed by
1974         echo #include "..." > file.h. On Windows mkdir returns with an error if the
1975         target directory exists. For us that is not an error, so work around it with
1976         (mkdir path 2>nul || echo>nul)
1977
1978         * DerivedSources.pri:
1979
1980 2012-09-10  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
1981
1982         [Qt][WK2] REGRESSION(r127861): It made one test fail and one test crash
1983         https://bugs.webkit.org/show_bug.cgi?id=96243
1984
1985         Reviewed by Kenneth Rohde Christiansen.
1986
1987         Skip the code if QClipboard is not available, and give WebCore a chance to handle the event first.
1988
1989         * WebProcess/WebPage/WebPage.cpp:
1990         (WebKit::handleMouseEvent):
1991         * WebProcess/WebPage/qt/WebPageQt.cpp:
1992         (WebKit::WebPage::handleMouseReleaseEvent):
1993
1994 2012-09-10  Simon Hausmann  <simon.hausmann@nokia.com>
1995
1996         [Qt] WK2 build fixes for MSVC
1997         https://bugs.webkit.org/show_bug.cgi?id=96248
1998
1999         Reviewed by Tor Arne Vestbø.
2000
2001         MSVC is picky when it comes to the use of forward declaration and the use of
2002         such forward declared types in templates. In these instances inline functions were
2003         passed parameters in RefPtrs that were only forward declared, but at compile time
2004         MSVC wants to know what type it is in order to completely instantiate RefPtr (which
2005         needs to call the type destructor for example). Therefore this patch resolves a couple
2006         of forward declarations with direct header file inclusions.
2007
2008         * UIProcess/API/qt/raw/qrawwebview_p_p.h:
2009         * UIProcess/InspectorServer/WebSocketServerClient.h:
2010         * UIProcess/qt/QtPageClient.h:
2011
2012 2012-09-10  Andras Becsi  <andras.becsi@nokia.com>
2013
2014         [Qt][WK2] QWebKitTest should retrieve the viewport state from the PageViewportController
2015         https://bugs.webkit.org/show_bug.cgi?id=96106
2016
2017         Reviewed by Simon Hausmann.
2018
2019         The functions in PageViewportControllerClientQt proxying the
2020         viewport state values can be removed if QWebKitTest uses the
2021         PageViewportController to retrieve these values.
2022
2023         * UIProcess/API/qt/qquickwebview_p_p.h:
2024         (QQuickWebViewPrivate::viewportController):
2025         * UIProcess/API/qt/qwebkittest.cpp:
2026         (QWebKitTest::viewport):
2027         (QWebKitTest::devicePixelRatio):
2028         (QWebKitTest::contentsScale):
2029         * UIProcess/PageViewportController.h:
2030         (WebKit::PageViewportController::currentContentsScale):
2031         * UIProcess/qt/PageViewportControllerClientQt.cpp:
2032         * UIProcess/qt/PageViewportControllerClientQt.h:
2033         (PageViewportControllerClientQt):
2034
2035 2012-09-10  Simon Hausmann  <simon.hausmann@nokia.com>
2036
2037         [WK2] Make WK2 C API headers compile in the Qt build on Windows
2038         https://bugs.webkit.org/show_bug.cgi?id=96246
2039
2040         Reviewed by Kenneth Rohde Christiansen.
2041
2042         WKBase.h and WKAPICast.h include files that are specific to the Safari/Windows
2043         port if WIN32 or _WIN32 is defined. When building WebKit2 on Windows with Qt, we
2044         do not want to include these files, as they define an API that is different to ours
2045         (the view aspect differs). Therefore guard the inclusion with !defined(BUILDING_QT__)
2046
2047         * Shared/API/c/WKBase.h:
2048         * UIProcess/API/C/WKAPICast.h:
2049
2050 2012-09-10  Kevin Funk  <kevin.funk@kdab.com>
2051
2052         Replace calls to QString::fromAscii which is deprecated in Qt5
2053         https://bugs.webkit.org/show_bug.cgi?id=96242
2054
2055         Reviewed by Simon Hausmann.
2056
2057         Replace with QString::fromLatin1 which does the same.
2058
2059         * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
2060
2061 2012-09-10  Christophe Dumez  <christophe.dumez@intel.com>
2062
2063         [WK2] New fast/forms/number/number-interactive-validation-required.html fails
2064         https://bugs.webkit.org/show_bug.cgi?id=95936
2065
2066         Reviewed by Kenneth Rohde Christiansen.
2067
2068         Add WKPreference private API for manipulate the interactive form
2069         validation setting. This is now needed by WebKitTestRunner.
2070
2071         * Shared/WebPreferencesStore.h:
2072         (WebKit):
2073         * UIProcess/API/C/WKPreferences.cpp:
2074         (WKPreferencesSetInteractiveFormValidationEnabled):
2075         (WKPreferencesGetInteractiveFormValidationEnabled):
2076         * UIProcess/API/C/WKPreferencesPrivate.h:
2077         * WebProcess/WebPage/WebPage.cpp:
2078         (WebKit::WebPage::updatePreferences):
2079
2080 2012-09-09  Sam Weinig  <sam@webkit.org>
2081
2082         Simplify WebKit2 XPC service backend now that I know it doesn't need to soft link WebKit2.framework
2083         https://bugs.webkit.org/show_bug.cgi?id=96228
2084
2085         Reviewed by Dan Bernstein.
2086
2087         We soft link the non-XPC service WebProcess backend to the WebKit2 framework to
2088         ensure that we can close all the necessary file descriptors at launch, without
2089         fear that we will be closing one we open while initializing WebKit2 or one of its
2090         dependencies. Since we don't need to close file descriptors in the XPC service 
2091         backend, we don't need to soft link! While here, also do some cleanup and code
2092         sharing.
2093
2094         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2095         (WebKit::launchXPCService):
2096         We don't need to send the framework executable path anymore (it was used for the
2097         soft linking), but we do need the client identifier.
2098         
2099         * WebKit2.xcodeproj/project.pbxproj:
2100         Add new files. Link the XPC service to WebKit2.framework.
2101
2102         * WebKit2Service/MainMacService.mm:
2103         Now that we don't have to soft link, just make this a stub that calls immediately
2104         into the WebKit2 framework.
2105         
2106         * WebProcess/mac/WebProcessInitialization.h: Added.
2107         * WebProcess/mac/WebProcessInitialization.mm: Added.
2108         (WebKit::InitializeWebProcess):
2109         Move initialization that is common between the XPC and non-XPC backends here.
2110
2111         * WebProcess/mac/WebProcessMainMac.mm:
2112         (WebKit::WebProcessMain):
2113         Remove XPC backend related code. Use new shared InitializeWebProcess function.
2114
2115         * WebProcess/mac/WebProcessXPCServiceMain.h: Added.
2116         * WebProcess/mac/WebProcessXPCServiceMain.mm: Added.
2117         (WebKit::WebKit2ServiceEventHandler):
2118         (WebProcessXPCServiceMain):
2119         Move XPC service backend initialization here.
2120
2121 2012-09-09  Emil A Eklund  <eae@chromium.org>
2122
2123         Rename Node::getRect/getPixelSnappedRect and remove ContainerNode::getRect
2124         https://bugs.webkit.org/show_bug.cgi?id=81413
2125
2126         Reviewed by David Hyatt.
2127
2128         Update WebPage to call pixelSnappedBoundingBox.
2129
2130         * WebProcess/WebPage/WebPage.cpp:
2131         (WebKit::WebPage::editorState):
2132
2133 2012-09-08  Sam Weinig  <sam@webkit.org>
2134
2135         Switch to entering the sandbox directly from main(), rather than waiting for the initialization message
2136         https://bugs.webkit.org/show_bug.cgi?id=96194
2137
2138         Reviewed by Dan Bernstein.
2139
2140         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2141         (WebKit::ProcessLauncher::launchProcess):
2142         Pass a client identifier to WebProcess as a command line argument
2143         so that it can be used to create private temporary and cache directories.
2144
2145         * WebProcess/WebProcess.h:
2146         (WebProcess):
2147         * WebProcess/mac/WebProcessMac.mm:
2148         (WebKit::WebProcess::initializeSandbox):
2149         (WebKit::WebProcess::platformInitializeWebProcess):
2150         Expose the initializeSandbox() function and stop calling it from platformInitializeWebProcess()
2151         since it is now going to be called from WebProcessMain.  Also, move changing the current working
2152         directory to sandbox initialization function and replace use of creation parameters with just
2153         the client identifier.
2154
2155         * WebProcess/com.apple.WebProcess.sb.in:
2156         Add some new exceptions that come from entering the sandbox earlier in the AppKit
2157         initialization process. Don't allow access to com.apple.coreservices.appleevents.
2158
2159         * WebProcess/mac/WebProcessMainMac.mm:
2160         (WebKit::WebProcessMainXPC):
2161         (WebKit::WebProcessMain):
2162         Enter the sandbox explicitly, not waiting until the initialization message.  Also,
2163         since we now have an extra parameter for the client identifier, make the WebProcess
2164         launches the UIProcess code path work by extracting a client identifier from the 
2165         client executable path.
2166
2167 2012-09-09  Patrick Gansterer  <paroga@webkit.org>
2168
2169         Make the String initialization on the function side of String::number()
2170         https://bugs.webkit.org/show_bug.cgi?id=95940
2171
2172         Reviewed by Benjamin Poulain.
2173
2174         * win/WebKit2.def:
2175         * win/WebKit2CFLite.def:
2176
2177 2012-09-09  Pierre Rossi  <pierre.rossi@gmail.com>
2178
2179         [WK2] expose element rect for color input type
2180         https://bugs.webkit.org/show_bug.cgi?id=91664
2181
2182         Reviewed by Simon Hausmann.
2183
2184         In the same way we do for select elements already. This allows placing the picker
2185         in a sensible location.
2186
2187         * UIProcess/API/efl/PageClientImpl.cpp: Update the function's signature.
2188         (WebKit::PageClientImpl::createColorChooserProxy): Ditto.
2189         * UIProcess/API/efl/PageClientImpl.h: Ditto.
2190         (PageClientImpl):
2191         * UIProcess/API/gtk/PageClientImpl.cpp:
2192         (WebKit::PageClientImpl::createColorChooserProxy): Ditto.
2193         * UIProcess/API/gtk/PageClientImpl.h: Ditto.
2194         (PageClientImpl):
2195         * UIProcess/API/mac/PageClientImpl.h: Ditto.
2196         (PageClientImpl):
2197         * UIProcess/API/mac/PageClientImpl.mm:
2198         (WebKit::PageClientImpl::createColorChooserProxy): Ditto.
2199         * UIProcess/API/qt/raw/qrawwebview.cpp:
2200         (QRawWebViewPrivate::createColorChooserProxy): Ditto.
2201         * UIProcess/API/qt/raw/qrawwebview_p_p.h: Ditto.
2202         (QRawWebViewPrivate):
2203         * UIProcess/PageClient.h: Ditto.
2204         (PageClient):
2205         * UIProcess/WebPageProxy.cpp:
2206         (WebKit::WebPageProxy::showColorChooser): Compute the rect mapped to the current view's transform.
2207         * UIProcess/WebPageProxy.h:
2208         (WebPageProxy):
2209         * UIProcess/WebPageProxy.messages.in:
2210         * UIProcess/qt/QtPageClient.cpp:
2211         (WebKit::QtPageClient::createColorChooserProxy):
2212         * UIProcess/qt/QtPageClient.h:
2213         (QtPageClient):
2214         * UIProcess/qt/WebColorChooserProxyQt.cpp:
2215         (ColorChooserContextObject):
2216         (WebKit::ColorChooserContextObject::ColorChooserContextObject):
2217         (WebKit::ColorChooserContextObject::elementRect):
2218         (WebKit::ColorChooserContextObject::accept):
2219         (WebKit::WebColorChooserProxyQt::WebColorChooserProxyQt):
2220         * UIProcess/qt/WebColorChooserProxyQt.h:
2221         (WebKit::WebColorChooserProxyQt::create):
2222         (WebColorChooserProxyQt):
2223         * UIProcess/win/WebView.cpp:
2224         (WebKit::WebView::createColorChooserProxy): Update the function's signature.
2225         * UIProcess/win/WebView.h:
2226         (WebView): Ditto.
2227         * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2228         (WebKit::WebColorChooser::WebColorChooser):
2229
2230 2012-09-09  Simon Hausmann  <simon.hausmann@nokia.com>
2231
2232         [Qt] Add missing files to the WebKit2 build on Windows
2233         https://bugs.webkit.org/show_bug.cgi?id=96177
2234
2235         Reviewed by Kenneth Rohde Christiansen.
2236
2237         For the build on Windows we can re-use existing functionality from the Safari/Windows
2238         build, such as the IPC implementation.
2239
2240         * Target.pri:
2241
2242 2012-09-09  Simon Hausmann  <simon.hausmann@nokia.com>
2243
2244         [WK2] Fix PLATFORM(WIN) vs. OS(WINDOWS) in various files
2245         https://bugs.webkit.org/show_bug.cgi?id=96178
2246
2247         Reviewed by Kenneth Rohde Christiansen.
2248
2249         PLATFORM(WIN) is used in various places, where it is safe to use OS(WINDOWS) to allow
2250         the re-use of that code path in ports beyond Safari/Windows.
2251
2252         * Platform/CoreIPC/BinarySemaphore.h:
2253         (BinarySemaphore):
2254         * Platform/CoreIPC/Connection.h:
2255         (Connection):
2256         * Platform/SharedMemory.h:
2257         (Handle):
2258         (SharedMemory):
2259         * Platform/WorkQueue.h:
2260
2261 2012-09-08  Jinwoo Song  <jinwoo7.song@samsung.com>
2262
2263         [EFL][WK2] Minibrowser crashes on right mouse click
2264         https://bugs.webkit.org/show_bug.cgi?id=95955
2265
2266         Reviewed by Simon Hausmann.
2267
2268         Make early return if the PageClient does not create a ContextMenuProxy.
2269
2270         * UIProcess/WebPageProxy.cpp:
2271         (WebKit::WebPageProxy::internalShowContextMenu):
2272
2273 2012-09-08  Simon Hausmann  <simon.hausmann@nokia.com>
2274
2275         [Qt] Fix CoreIPC setup between ProcessLauncher and WebProcessMain on Windows
2276         https://bugs.webkit.org/show_bug.cgi?id=96179
2277
2278         Reviewed by Kenneth Rohde Christiansen.
2279
2280         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
2281         (WebKit::ProcessLauncher::launchProcess): Hide Unixy platform specific code
2282         and includes behind appropriate platform #ifdefs and use
2283         CoreIPC::Connection::createServerAndClientIdentifiers to set up the IPC pipes.
2284         We also need to tell Windows about our intent of using the client handle in
2285         the child web process.
2286         * WebProcess/qt/WebProcessMainQt.cpp:
2287         (WebKit::WebProcessMainQt): After retrieving the IPC identifier we call
2288         WebKit::WebProcess::shared().initialize with it. That function actually
2289         cares a CIPC::Connection::Identifier as argument, which happens to be an
2290         int on Unix, but it's actually a HANDLE on Windows. Change the parameter
2291         type according to and a reinterpret_cast from the converted unsigned integer,
2292         similar to WebProcessMainWin.cpp.
2293
2294 2012-09-08  Christophe Dumez  <christophe.dumez@intel.com>
2295
2296         [WK2] New fast/events/tab-focus-link-in-canvas fails from r126908
2297         https://bugs.webkit.org/show_bug.cgi?id=95329
2298
2299         Reviewed by Kenneth Rohde Christiansen.
2300
2301         Add implementation for overriding the WebKitTabToLinksPreferenceKey
2302         preference as well as the corresponding WKPreferences API that
2303         is needed by WebKitTestRunner.
2304
2305         * Shared/WebPreferencesStore.h:
2306         (WebKit):
2307         * UIProcess/API/C/WKPreferences.cpp:
2308         (WKPreferencesSetTabToLinksEnabled):
2309         (WKPreferencesGetTabToLinksEnabled):
2310         * UIProcess/API/C/WKPreferencesPrivate.h:
2311         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2312         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
2313         * WebProcess/WebPage/WebPage.h:
2314         (WebKit::WebPage::setTabToLinksEnabled):
2315         (WebKit::WebPage::tabToLinksEnabled):
2316
2317 2012-09-07  Benjamin Poulain  <bpoulain@apple.com>
2318
2319         Rename the ustring() accessor to string()
2320         https://bugs.webkit.org/show_bug.cgi?id=95919
2321
2322         Reviewed by Geoffrey Garen.
2323
2324         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
2325         (WebKit::NPJSObject::enumerate):
2326
2327 2012-09-06  Jeffrey Pfau  <jpfau@apple.com>
2328
2329         Extend third-party storage blocking API to optionally allow blocking all storage
2330         https://bugs.webkit.org/show_bug.cgi?id=95915
2331
2332         Reviewed by Brady Eidson.
2333
2334         Update WK2 API to use revised Settings API.
2335
2336         * Shared/WebPreferencesStore.h:
2337         (WebKit):
2338         * UIProcess/API/C/WKAPICast.h:
2339         (WebKit::toStorageBlockingPolicy):
2340         (WebKit):
2341         (WebKit::toAPI):
2342         * UIProcess/API/C/WKPreferences.cpp:
2343         (WKPreferencesSetStorageBlockingPolicy):
2344         (WKPreferencesGetStorageBlockingPolicy):
2345         * UIProcess/API/C/WKPreferences.h:
2346         * WebProcess/WebPage/WebPage.cpp:
2347         (WebKit::WebPage::updatePreferences):
2348
2349 2012-09-07  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
2350
2351         [EFL] [WK2] Set theme for the inspector view
2352         https://bugs.webkit.org/show_bug.cgi?id=96108
2353
2354         Reviewed by Kenneth Rohde Christiansen.
2355
2356         Set the theme for the inspector view when it is created.
2357
2358         * UIProcess/efl/WebInspectorProxyEfl.cpp:
2359         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2360
2361 2012-09-07  Christophe Dumez  <christophe.dumez@intel.com>
2362
2363         [EFL] Use same default minimum logical font size in DRT and WTR
2364         https://bugs.webkit.org/show_bug.cgi?id=96116
2365
2366         Reviewed by Martin Robinson.
2367
2368         Add private bundle C API to set the minimum logicial font
2369         size setting. This is needed by WebKitTestRunner.
2370
2371         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
2372         (WKBundleSetMinimumLogicalFontSize):
2373         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
2374         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2375         (WebKit::InjectedBundle::setMinimumLogicalFontSize):
2376         (WebKit):
2377         * WebProcess/InjectedBundle/InjectedBundle.h:
2378         (InjectedBundle):
2379
2380 2012-09-07  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
2381
2382         Simplify hitTestResultAtPoint and nodesFromRect APIs
2383         https://bugs.webkit.org/show_bug.cgi?id=95720
2384
2385         Reviewed by Antonio Gomes.
2386
2387         Update calls to new API and update exported symbols.
2388
2389         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
2390         (WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
2391         * WebProcess/WebPage/WebPage.cpp:
2392         (WebKit::handleContextMenuEvent):
2393         (WebKit::WebPage::highlightPotentialActivation): Corrects the misplaced arguments while converting them.
2394         (WebKit::WebPage::findZoomableAreaForPoint):
2395         * WebProcess/WebPage/mac/WebPageMac.mm:
2396         (WebKit::WebPage::characterIndexForPoint):
2397         (WebKit::WebPage::performDictionaryLookupAtLocation):
2398         (WebKit::WebPage::shouldDelayWindowOrderingEvent):
2399         (WebKit::WebPage::acceptsFirstMouse):
2400         * win/WebKit2.def:
2401         * win/WebKit2CFLite.def:
2402
2403 2012-09-07  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
2404
2405         X11 Global Selection
2406         https://bugs.webkit.org/show_bug.cgi?id=88238
2407
2408         Reviewed by Tony Chang.
2409
2410         Implements the hooks for supporting global selections in Qt WebKit2.
2411
2412         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2413         (WebKit::WebEditorClient::respondToChangedSelection):
2414         (WebKit::WebEditorClient::updateGlobalSelection):
2415         (WebKit::WebEditorClient::supportsGlobalSelection):
2416         * WebProcess/WebCoreSupport/WebEditorClient.h:
2417         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
2418         (WebKit::WebEditorClient::updateGlobalSelection):
2419         * WebProcess/WebPage/WebPage.cpp:
2420         (WebKit::handleMouseEvent):
2421         * WebProcess/WebPage/WebPage.h:
2422         (WebPage):
2423         * WebProcess/WebPage/qt/WebPageQt.cpp:
2424         (WebKit::WebPage::handleMouseReleaseEvent):
2425
2426 2012-09-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2427
2428         [WK2] APIClientTraits<WKPageLoaderClient> and APIClientTraits<WKBundlePageLoaderClient> are not initialized properly
2429         https://bugs.webkit.org/show_bug.cgi?id=96079
2430
2431         Reviewed by Kenneth Rohde Christiansen.
2432
2433         APIClientTraits<WKPageLoaderClient> was missing offset for version number 2 and
2434         APIClientTraits<WKBundlePageLoaderClient> was missing offset for version number 3.
2435
2436         * Shared/APIClientTraits.cpp:
2437         (WebKit):
2438
2439 2012-09-07  Eunmi Lee  <eunmi15.lee@samsung.com>
2440
2441         [EFL][WK2] Add APIs to enable or disable the mouse events of the ewk_view.
2442         https://bugs.webkit.org/show_bug.cgi?id=88631
2443
2444         Reviewed by Gyuyoung Kim.
2445
2446         We can turn on/off the mouse events of the ewk_view using the mouse
2447         events enabling API. This API can be used when we want to turn off the
2448         mouse events on the touchscreen device to process the touch events
2449         instead of the mouse events.
2450
2451         * UIProcess/API/efl/ewk_view.cpp:
2452         (_Ewk_View_Private_Data):
2453         (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
2454         (_ewk_view_smart_add):
2455         (ewk_view_mouse_events_enabled_set):
2456         (ewk_view_mouse_events_enabled_get):
2457         * UIProcess/API/efl/ewk_view.h:
2458         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2459         (TEST_F):
2460
2461 2012-09-07  Tim Horton  <timothy_horton@apple.com>
2462
2463         Add optional debug logging when we fall into/out of threaded scrolling
2464         https://bugs.webkit.org/show_bug.cgi?id=93898
2465         <rdar://problem/12089098>
2466
2467         Reviewed by Simon Fraser.
2468
2469         Update the scrolling tree's scrollingPerformanceLoggingEnabled preference
2470         before the early-return if we don't have layer debugging borders on.
2471
2472         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2473         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
2474
2475 2012-09-06  Jinwoo Song  <jinwoo7.song@samsung.com>
2476
2477         Deploy StringBuilder in more places in WebKit2
2478         https://bugs.webkit.org/show_bug.cgi?id=95924
2479
2480         Reviewed by Benjamin Poulain.
2481
2482         Deploy StringBuilder to concatenate strings more efficiently.
2483
2484         * Shared/WebMemorySampler.cpp:
2485         (WebKit):
2486         (WebKit::WebMemorySampler::WebMemorySampler):
2487         (WebKit::WebMemorySampler::stop):
2488         (WebKit::WebMemorySampler::writeHeaders):
2489         (WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):
2490         * Shared/WebMemorySampler.h:
2491         (WebMemorySampler):
2492         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2493         (WebKit::capitalizeRFC822HeaderFieldName):
2494         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
2495         (WebKit::WebContextMenuClient::searchWithGoogle):
2496
2497 2012-09-06  Ryuan Choi  <ryuan.choi@samsung.com>
2498
2499         [EFL][WK2] Add API unit tests for ewk_view_theme_set.
2500         https://bugs.webkit.org/show_bug.cgi?id=94670
2501
2502         Reviewed by Gyuyoung Kim.
2503
2504         Added unit tests for ewk_view_theme_set.
2505
2506         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
2507         (EWK2UnitTest::EWK2UnitTestEnvironment::pathForResource):
2508         Added to get path of resource.
2509         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
2510         Ditto.
2511         * UIProcess/API/efl/tests/resources/big_button_theme.edj:
2512         Added test theme file which has text_confinement of button as
2513         rel1 { ... offset : 150 8; } rel2 { ... offset : -150 -11; }.
2514         * UIProcess/API/efl/tests/resources/empty_theme.edj:
2515         Added test theme file which includes nothing.
2516         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2517         Added unit test for ewk_view_theme_set.
2518
2519 2012-09-06  Csaba Osztrogonác  <ossy@webkit.org>
2520
2521         Move RenderView::setFixedPositionedObjectsNeedLayout to FrameView
2522         https://bugs.webkit.org/show_bug.cgi?id=96017
2523
2524         Unreviewed Qt-WK2 buildfix after r127783.
2525
2526         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2527         (WebKit::LayerTreeCoordinator::syncFixedLayers):
2528
2529 2012-09-05  Alexey Proskuryakov  <ap@apple.com>
2530
2531         [WK2] Annotate multi-process FIXMEs with bug numbers
2532         https://bugs.webkit.org/show_bug.cgi?id=95916
2533
2534         Reviewed by Eric Carlson.
2535
2536         * UIProcess/WebContext.cpp:
2537         (WebKit::WebContext::setProcessModel): Ensure that plug-in process is enabled.
2538         Comments in WebPluginSiteDataManager said that it's required for multi-process.
2539         (WebKit::WebContext::createNewWebProcess): Added a bug number.
2540         (WebKit::WebContext::disconnectProcess): Ditto.
2541         (WebKit::WebContext::createWebPage): Ditto.
2542         (WebKit::WebContext::download): Ditto.
2543         (WebKit::WebContext::getWebCoreStatistics): Ditto.
2544
2545         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
2546         (WebKit::WebPluginSiteDataManager::getSitesWithData):
2547         (WebKit::WebPluginSiteDataManager::clearSiteData):
2548         Removed FIXMEs - some ports haven't switched to plugin process yet, but that
2549         doesn't stop others from having a multi-process model. Added an ASSERT to document
2550         this requirement (in addition to the check in WebContext).
2551
2552         * UIProcess/Downloads/DownloadProxy.cpp:
2553         (WebKit::DownloadProxy::cancel):
2554         (WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
2555         (WebKit::DownloadProxy::startTransfer):
2556         * UIProcess/WebApplicationCacheManagerProxy.cpp:
2557         (WebKit::WebApplicationCacheManagerProxy::getApplicationCacheOrigins):
2558         (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin):
2559         (WebKit::WebApplicationCacheManagerProxy::deleteAllEntries):
2560         * UIProcess/WebCookieManagerProxy.cpp:
2561         (WebKit::WebCookieManagerProxy::getHostnamesWithCookies):
2562         (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy):
2563         * UIProcess/WebDatabaseManagerProxy.cpp:
2564         (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin):
2565         (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins):
2566         (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
2567         (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
2568         (WebKit::WebDatabaseManagerProxy::deleteAllDatabases):
2569         (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):
2570         * UIProcess/WebIconDatabase.cpp:
2571         (WebKit::WebIconDatabase::getLoadDecisionForIconURL):
2572         (WebKit::WebIconDatabase::didFinishURLImport):
2573         * UIProcess/WebKeyValueStorageManagerProxy.cpp:
2574         (WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins):
2575         (WebKit::WebKeyValueStorageManagerProxy::deleteEntriesForOrigin):
2576         (WebKit::WebKeyValueStorageManagerProxy::deleteAllEntries):
2577         * UIProcess/WebMediaCacheManagerProxy.cpp:
2578         (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache):
2579         * UIProcess/WebResourceCacheManagerProxy.cpp:
2580         (WebKit::WebResourceCacheManagerProxy::getCacheOrigins):
2581         (WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin):
2582         (WebKit::WebResourceCacheManagerProxy::clearCacheForAllOrigins):
2583         Added bug numbers.
2584
2585 2012-09-06  Michael Saboff  <msaboff@apple.com>
2586
2587         WebKit2 IPC always sends strings using 16 bit data format
2588         https://bugs.webkit.org/show_bug.cgi?id=95811
2589
2590         Reviewed by Benjamin Poulain.
2591
2592         Changed string encoding to pass an 8bit flag and then send either 8 or 16 bit
2593         character data.
2594
2595         * Platform/CoreIPC/ArgumentCoders.cpp:
2596         (CoreIPC::::encode):
2597         (CoreIPC::decodeStringText): New templatized string creation and decoder method.
2598         (CoreIPC::::decode):
2599
2600 2012-09-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2601
2602         [GTK] [WK2] Crash when navigating between pages
2603         https://bugs.webkit.org/show_bug.cgi?id=95949
2604
2605         Reviewed by Martin Robinson.
2606
2607         Do not trust isMainResource parameter in
2608         webkitWebViewResourceLoadStarted(), because it's always true for
2609         all subresources of pages loaded from the history cache. We can
2610         simply assume that the first resource loaded for the main frame
2611         is the main web view resource.
2612
2613         * UIProcess/API/gtk/WebKitResourceLoadClient.cpp:
2614         (didInitiateLoadForResource):
2615         * UIProcess/API/gtk/WebKitWebView.cpp:
2616         (webkitWebViewResourceLoadStarted):
2617         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
2618
2619 2012-09-06  Balazs Kelemen  <kbalazs@webkit.org>
2620
2621         [WK2] Crash in WebPageProxy::showPopupMenu if PageClient does not implement createPopupMenuProxy
2622         https://bugs.webkit.org/show_bug.cgi?id=95862
2623
2624         Reviewed by Simon Hausmann.
2625
2626         Bail out early if the PageClient does not create a PopupMenuProxy for us.
2627
2628         * UIProcess/WebPageProxy.cpp:
2629         (WebKit::WebPageProxy::showPopupMenu):
2630
2631 2012-09-06  Christophe Dumez  <christophe.dumez@intel.com>
2632
2633         [EFL][WK2] Provide implementation for WebPage::performDefaultBehaviorForKeyEvent()
2634         https://bugs.webkit.org/show_bug.cgi?id=95943
2635
2636         Reviewed by Kenneth Rohde Christiansen.
2637
2638         Provide implementation for WebPage::performDefaultBehaviorForKeyEvent()
2639         in EFL WK2.
2640
2641         * WebProcess/WebPage/efl/WebPageEfl.cpp:
2642         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
2643
2644 2012-09-06  Patrick Gansterer  <paroga@webkit.org>
2645
2646         Remove String::operator+=() from windows platform code
2647         https://bugs.webkit.org/show_bug.cgi?id=95904
2648
2649         Reviewed by Benjamin Poulain.
2650
2651         Use StringBuilder and operator+() to concatenate strings instead of operator+=().
2652
2653         * UIProcess/win/WebView.cpp:
2654         (WebKit::imeCompositionArgumentNames):
2655
2656 2012-09-06  Kihong Kwon  <kihong.kwon@samsung.com>
2657
2658         [CMake] Add notifications path to the WebKit2/CMakeLists.txt
2659         https://bugs.webkit.org/show_bug.cgi?id=95843
2660
2661         Reviewed by Laszlo Gombos.
2662
2663         Add WebCore/Modules/Notifications to the WebKit2_INCLUDE_DIRECTORIES of WebKit2/CMakeLists.txt.
2664         There are some build errors when ENABLE_NOTIFICATIONS feature is enabled.
2665
2666         * CMakeLists.txt:
2667
2668 2012-09-06  Simon Hausmann  <simon.hausmann@nokia.com>
2669
2670         [Qt] Various small Windows / MSVC build fixes
2671         https://bugs.webkit.org/show_bug.cgi?id=95934
2672
2673         Reviewed by Kenneth Rohde Christiansen.
2674
2675         * Shared/LayerTreeContext.h: Include stdint.h due to the use of uint32_t as layer id.
2676         * UIProcess/API/qt/qquickwebview_p.h:
2677         (WebKit): Fix struct vs. class forward declaration mismatch, causing linking errors.
2678         * UIProcess/API/qt/tests/bytearraytestdata.h: Remove export macro from internal test class
2679         that is not used anymore. Using the export macro from a DLL when the code in question is not
2680         part of the DLL results in the export macro expanding to dllimport, giving incorrect linkage
2681         for the unit test.
2682         * WebProcess/qt/WebProcessMainQt.cpp:
2683         (WebKit::WebProcessMainQt): Removed explicit call to srandom(), which is not available on Windows.
2684         The call appears to be unnecessary in the light of the WTF::initializeThreading() call below, which
2685         in turn calls WTF::initializeRandomNumberGenerator(), which does the same thing already (and isn't
2686         needed on Windows, as per comment in wtf/RandomNumberSeed.h)
2687
2688 2012-09-06  Simon Hausmann  <simon.hausmann@nokia.com>
2689
2690         [Qt] Fix build with ANGLE on platforms that provide EGL/GLESv2
2691         https://bugs.webkit.org/show_bug.cgi?id=95965
2692
2693         Reviewed by Tor Arne Vestbø.
2694
2695         Depend on ANGLE if necessary, due to the use WebCore types that pull in ANGLE
2696         headers (GraphicsContext3D.h in particular).
2697
2698         * Target.pri:
2699
2700 2012-09-06  Andras Becsi  <andras.becsi@nokia.com>
2701
2702         [WK2] Make [Qt]ViewportHandler cross platform
2703         https://bugs.webkit.org/show_bug.cgi?id=91257
2704
2705         Reviewed by Kenneth Rohde Christiansen and Simon Hausmann.
2706
2707         Since QtViewportHandler includes behaviour that is not platform
2708         specific together with hooks to the QtQuick API layer, a platform
2709         independent implementation would allow other ports to use the
2710         viewport controlling functionality provided.
2711
2712         This patch removes QtViewportHandler and introduces a platform
2713         independent PageViewportController class that is responsible
2714         for handling requests from the web process (eg. content size
2715         changes, viewport attributes changes and scroll position requests).
2716         Requests from the web process are acted on by a platform specific
2717         client class which implements the PageViewportControllerClient
2718         interface which provides hooks to the platform specific API layer.
2719
2720         The PageViewportController is also responsible to notify the web
2721         process about changes in the viewport state (eg. viewport size,
2722         visible rect, content scale and movement trajectory).
2723         The client is responsible to delegate these UI changes to the
2724         PageViewportController.
2725
2726         For now only PageViewportControllerClientQt implements the client
2727         interface besides providing other QQuick specific functionality
2728         (gestures, animations, etc).
2729
2730         * Target.pri:
2731         * UIProcess/API/qt/qquickwebpage_p_p.h:
2732         * UIProcess/API/qt/qquickwebview.cpp:
2733         (QQuickWebViewPrivate::onComponentComplete):
2734         (QQuickWebViewFlickablePrivate::~QQuickWebViewFlickablePrivate):
2735         (QQuickWebViewFlickablePrivate::didChangeViewportProperties):
2736         (QQuickWebViewFlickablePrivate::updateViewportSize):
2737         (QQuickWebViewFlickablePrivate::pageDidRequestScroll):
2738         (QQuickWebViewFlickablePrivate::didChangeContentsSize):
2739         * UIProcess/API/qt/qquickwebview_p.h:
2740         (WebKit):
2741         * UIProcess/API/qt/qquickwebview_p_p.h:
2742         (WebKit):
2743         (QQuickWebViewPrivate::pageViewportControllerClient):
2744         (QQuickWebViewPrivate):
2745         (QQuickWebViewFlickablePrivate):
2746         * UIProcess/API/qt/qwebkittest.cpp:
2747         (QWebKitTest::viewport):
2748         (QWebKitTest::devicePixelRatio):
2749         (QWebKitTest::contentsScale):
2750         * UIProcess/PageViewportController.cpp: Added.
2751         (WebKit):
2752         (WebKit::bound):
2753         (WebKit::fuzzyCompare):
2754         (WebKit::boundPosition):
2755         (WebKit::ViewportUpdateDeferrer::ViewportUpdateDeferrer):
2756         (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
2757         (WebKit::PageViewportController::PageViewportController):
2758         (WebKit::PageViewportController::convertFromViewport):
2759         (WebKit::PageViewportController::convertToViewport):
2760         (WebKit::PageViewportController::innerBoundedContentsScale):
2761         (WebKit::PageViewportController::outerBoundedContentsScale):
2762         (WebKit::PageViewportController::didChangeContentsSize):
2763         (WebKit::PageViewportController::pageDidRequestScroll):
2764         (WebKit::PageViewportController::setViewportSize):
2765         (WebKit::PageViewportController::setVisibleContentsRect):
2766         (WebKit::PageViewportController::syncVisibleContents):
2767         (WebKit::PageViewportController::didChangeViewportAttributes):
2768         (WebKit::PageViewportController::suspendContent):
2769         (WebKit::PageViewportController::resumeContent):
2770         (WebKit::PageViewportController::positionRangeForContentAtScale):
2771         * UIProcess/PageViewportController.h: Added.
2772         (WebCore):
2773         (WebKit):
2774         (ViewportUpdateDeferrer):
2775         (PageViewportController):
2776         (WebKit::PageViewportController::~PageViewportController):
2777         (WebKit::PageViewportController::hasSuspendedContent):
2778         (WebKit::PageViewportController::hadUserInteraction):
2779         (WebKit::PageViewportController::allowsUserScaling):
2780         (WebKit::PageViewportController::contentsLayoutSize):
2781         (WebKit::PageViewportController::devicePixelRatio):
2782         (WebKit::PageViewportController::minimumContentsScale):
2783         (WebKit::PageViewportController::maximumContentsScale):
2784         (WebKit::PageViewportController::setHadUserInteraction):
2785         * UIProcess/PageViewportControllerClient.h: Added.
2786         (WebKit):
2787         (PageViewportControllerClient):
2788         (WebKit::PageViewportControllerClient::PageViewportControllerClient):
2789         (WebKit::PageViewportControllerClient::~PageViewportControllerClient):
2790         * UIProcess/qt/PageViewportControllerClientQt.cpp: Added.
2791         (WebKit):
2792         (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
2793         (WebKit::PageViewportControllerClientQt::ScaleAnimation::updateCurrentValue):
2794         (WebKit::PageViewportControllerClientQt::~PageViewportControllerClientQt):
2795         (WebKit::PageViewportControllerClientQt::setContentRectVisiblePositionAtScale):
2796         (WebKit::PageViewportControllerClientQt::animateContentRectVisible):
2797         (WebKit::PageViewportControllerClientQt::flickMoveStarted):
2798         (WebKit::PageViewportControllerClientQt::flickMoveEnded):
2799         (WebKit::PageViewportControllerClientQt::pageItemPositionChanged):
2800         (WebKit::PageViewportControllerClientQt::scaleAnimationStateChanged):
2801         (WebKit::PageViewportControllerClientQt::touchBegin):
2802         (WebKit::PageViewportControllerClientQt::touchEnd):
2803         (WebKit::PageViewportControllerClientQt::focusEditableArea):
2804         (WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded):
2805         (WebKit::PageViewportControllerClientQt::nearestValidVisibleContentsRect):
2806         (WebKit::PageViewportControllerClientQt::setContentsPosition):
2807         (WebKit::PageViewportControllerClientQt::setContentsScale):
2808         (WebKit::PageViewportControllerClientQt::setContentsRectToNearestValidBounds):
2809         (WebKit::PageViewportControllerClientQt::didResumeContent):
2810         (WebKit::PageViewportControllerClientQt::allowsUserScaling):
2811         (WebKit::PageViewportControllerClientQt::devicePixelRatio):
2812         (WebKit::PageViewportControllerClientQt::minimumContentsScale):
2813         (WebKit::PageViewportControllerClientQt::maximumContentsScale):
2814         (WebKit::PageViewportControllerClientQt::currentContentsScale):
2815         (WebKit::PageViewportControllerClientQt::contentsLayoutSize):
2816         (WebKit::PageViewportControllerClientQt::scrollAnimationActive):
2817         (WebKit::PageViewportControllerClientQt::panGestureActive):
2818         (WebKit::PageViewportControllerClientQt::panGestureStarted):
2819         (WebKit::PageViewportControllerClientQt::panGestureRequestUpdate):
2820         (WebKit::PageViewportControllerClientQt::panGestureEnded):
2821         (WebKit::PageViewportControllerClientQt::panGestureCancelled):
2822         (WebKit::PageViewportControllerClientQt::scaleAnimationActive):
2823         (WebKit::PageViewportControllerClientQt::cancelScrollAnimation):
2824         (WebKit::PageViewportControllerClientQt::interruptScaleAnimation):
2825         (WebKit::PageViewportControllerClientQt::pinchGestureActive):
2826         (WebKit::PageViewportControllerClientQt::pinchGestureStarted):
2827         (WebKit::PageViewportControllerClientQt::pinchGestureRequestUpdate):
2828         (WebKit::PageViewportControllerClientQt::pinchGestureEnded):
2829         (WebKit::PageViewportControllerClientQt::pinchGestureCancelled):
2830         (WebKit::PageViewportControllerClientQt::visibleContentsRect):
2831         (WebKit::PageViewportControllerClientQt::didChangeContentsSize):
2832         (WebKit::PageViewportControllerClientQt::didChangeVisibleContents):
2833         (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):
2834         (WebKit::PageViewportControllerClientQt::updateViewportController):
2835         (WebKit::PageViewportControllerClientQt::scaleContent):
2836         (WebKit::PageViewportControllerClientQt::viewportScaleForRect):
2837         * UIProcess/qt/PageViewportControllerClientQt.h: Added.
2838         (WebKit):
2839         (PageViewportControllerClientQt):
2840         (WebKit::PageViewportControllerClientQt::setController):
2841         (ScaleAnimation):
2842         (WebKit::PageViewportControllerClientQt::ScaleAnimation::ScaleAnimation):
2843         (WebKit::PageViewportControllerClientQt::ScaleStackItem::ScaleStackItem):
2844         (ScaleStackItem):
2845         * UIProcess/qt/QtGestureRecognizer.cpp:
2846         (WebKit::QtGestureRecognizer::viewportController):
2847         * UIProcess/qt/QtGestureRecognizer.h:
2848         (WebKit):
2849         * UIProcess/qt/QtPanGestureRecognizer.cpp:
2850         (WebKit::QtPanGestureRecognizer::update):
2851         (WebKit::QtPanGestureRecognizer::finish):
2852         (WebKit::QtPanGestureRecognizer::cancel):
2853         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
2854         (WebKit::QtPinchGestureRecognizer::update):
2855         (WebKit::QtPinchGestureRecognizer::finish):
2856         (WebKit::QtPinchGestureRecognizer::cancel):
2857         * UIProcess/qt/QtViewportHandler.cpp: Removed.
2858         * UIProcess/qt/QtWebPageEventHandler.cpp:
2859         (WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
2860         (WebKit::QtWebPageEventHandler::setViewportController):
2861         (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
2862         (WebKit::QtWebPageEventHandler::handleInputEvent):
2863         (WebKit::QtWebPageEventHandler::doneWithTouchEvent):
2864         (WebKit::QtWebPageEventHandler::didFindZoomableArea):
2865         * UIProcess/qt/QtWebPageEventHandler.h:
2866         (WebKit):
2867         (QtWebPageEventHandler):
2868         (WebKit::QtWebPageEventHandler::viewportController):
2869
2870 2012-09-06  Ryuan Choi  <ryuan.choi@samsung.com>
2871
2872         [EFL][WK2] WebMemorySampler.cpp is included twice.
2873         https://bugs.webkit.org/show_bug.cgi?id=95910
2874
2875         Reviewed by Kentaro Hara.
2876
2877         Now WebMemorySampler.cpp is in CMakeLists.txt and PlatformEfl.cmake.
2878
2879         * PlatformEfl.cmake: Removed WebMemorySampler.cpp from source lists.
2880
2881 2012-09-05  Ryuan Choi  <ryuan.choi@samsung.com>
2882
2883         [EFL][WK2] Implement missing feature to support <select> tag
2884         https://bugs.webkit.org/show_bug.cgi?id=95708
2885
2886         Reviewed by Gyuyoung Kim.
2887
2888         Added missing APIs for select tag.
2889
2890         This patch provides all functionality of current WebPopupItem to applications.
2891
2892         * UIProcess/API/efl/ewk_popup_menu_item.cpp:
2893         (_Ewk_Popup_Menu_Item):
2894         (_Ewk_Popup_Menu_Item::_Ewk_Popup_Menu_Item):
2895         (ewk_popup_menu_item_new):
2896         (ewk_popup_menu_item_text_direction_get):
2897         (ewk_popup_menu_item_text_direction_override_get):
2898         (ewk_popup_menu_item_tooltip_get):
2899         (ewk_popup_menu_item_accessibility_text_get):
2900         (ewk_popup_menu_item_enabled_get):
2901         (ewk_popup_menu_item_is_label_get):
2902         (ewk_popup_menu_item_selected_get):
2903         * UIProcess/API/efl/ewk_popup_menu_item.h:
2904         * UIProcess/API/efl/ewk_popup_menu_item_private.h:
2905         * UIProcess/API/efl/ewk_view.cpp:
2906         (ewk_view_popup_menu_request):
2907         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2908         (checkBasicPopupMenuItem):
2909         (showPopupMenu): Updated test case to cover new APIs.
2910         (TEST_F):
2911
2912 2012-09-05  Christophe Dumez  <christophe.dumez@intel.com>
2913
2914         [EFL][WK2] Provide implementation for WebProcess functions
2915         https://bugs.webkit.org/show_bug.cgi?id=95857
2916
2917         Reviewed by Kenneth Rohde Christiansen.
2918
2919         Rename WebProcessGtk to WebProcessSoup and reuse it in
2920         EFL port since all the code is soup-related. We now
2921         have a proper implementation for the WebProcess
2922         platform methods.
2923
2924         * GNUmakefile.list.am:
2925         * PlatformEfl.cmake:
2926         * WebProcess/efl/WebProcessEfl.cpp: Removed.
2927         * WebProcess/efl/WebProcessMainEfl.cpp:
2928         (WebKit::WebProcessMainEfl): Enable soup cache for the soup session similarly to GTK port.
2929         * WebProcess/soup/WebProcessSoup.cpp: Renamed from Source/WebKit2/WebProcess/gtk/WebProcessGtk.cpp.
2930         (WebKit):
2931         (WebKit::getCacheDiskFreeSize):
2932         (WebKit::getMemorySize):
2933         (WebKit::WebProcess::platformSetCacheModel):
2934         (WebKit::WebProcess::platformClearResourceCaches):
2935         (WebKit::buildAcceptLanguages):
2936         (WebKit::setSoupSessionAcceptLanguage):
2937         (WebKit::languageChanged):
2938         (WebKit::WebProcess::platformInitializeWebProcess):
2939         (WebKit::WebProcess::platformTerminate):
2940
2941 2012-09-05  Benjamin Poulain  <bpoulain@apple.com>
2942
2943         More fixes for String::operator+=() on Mac
2944         https://bugs.webkit.org/show_bug.cgi?id=95880
2945
2946         Reviewed by Adam Barth.
2947
2948         * UIProcess/WebInspectorProxy.cpp:
2949         (WebKit::WebInspectorProxy::createInspectorPage): This is a legitimate use of append(),
2950         there is no other concatenation outside that branch.
2951         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2952         (WebKit::parseRFC822HeaderFields): Use string operators instead of +=.
2953         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2954         (WebKit::NetscapePlugin::userAgent): Another legitimate use of append().
2955
2956 2012-09-05  Alexey Proskuryakov  <ap@apple.com>
2957
2958         [WK2] Make visited link tracking work in multi-process mode
2959         https://bugs.webkit.org/show_bug.cgi?id=95869
2960
2961         Reviewed by Dan Bernstein.
2962
2963         * UIProcess/VisitedLinkProvider.h:
2964         * UIProcess/VisitedLinkProvider.cpp:
2965         (WebKit::VisitedLinkProvider::VisitedLinkProvider): m_webProcessHasVisitedLinkState
2966         was making no sense in multi-process world, so it was let go.
2967         (WebKit::VisitedLinkProvider::processDidFinishLaunching): Track new processes.
2968         (WebKit::VisitedLinkProvider::processDidClose): Clean up pointers that are going
2969         to become stale.
2970         (WebKit::VisitedLinkProvider::pendingVisitedLinksTimerFired): Added comments. Fixed
2971         a bug where we would churn table size in some cases. Added debug logging in failure
2972         case. Re-implemented messaging code to work with multiple web processes.
2973
2974         * UIProcess/WebContext.cpp:
2975         (WebKit::WebContext::processDidFinishLaunching): Pass process proxy pointer to
2976         m_visitedLinkProvider, as it now needs to track processes.
2977         (WebKit::WebContext::disconnectProcess): Ditto. Also re-enabled visited link provider
2978         cleanup in multi-process mode.
2979
2980 2012-09-05  Brady Eidson  <beidson@apple.com>
2981
2982         Frequent crashes in PluginView::scriptObject under runtimeObjectCustomGetOwnPropertySlot
2983         <rdar://problem/12142226> and https://bugs.webkit.org/show_bug.cgi?id=95026
2984
2985         Patch partially by Andras Becsi  <andras.becsi@nokia.com>
2986
2987         Reviewed by Andy Estes.
2988
2989         If a plug-in fails to initialize then the m_plugin pointer is cleared out.
2990         When accessing the script object it is appropriate to unconditionally null check m_plugin.
2991
2992         * WebProcess/Plugins/PluginView.cpp:
2993         (WebKit::PluginView::scriptObject): Null check m_plugin before trying to use it.
2994
2995 2012-09-05  Christophe Dumez  <christophe.dumez@intel.com>
2996
2997         [EFL][WK2] Provide implementation for WebFrameNetworkingContext
2998         https://bugs.webkit.org/show_bug.cgi?id=95826
2999
3000         Reviewed by Kenneth Rohde Christiansen.
3001
3002         Remove EFL-specific and empty implementation for WebFrameNetworkingContext
3003         and use the existing soup implementation instead.
3004
3005         * PlatformEfl.cmake:
3006         * WebProcess/WebCoreSupport/efl/WebFrameNetworkingContext.h: Removed.
3007
3008 2012-09-05  Kaustubh Atrawalkar  <kaustubh@motorola.com>
3009
3010         [DRT] LTC:: Move printing related APIs from LayoutTestController to Internals
3011         https://bugs.webkit.org/show_bug.cgi?id=92735
3012
3013         Reviewed by Hajime Morita.
3014
3015         Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.
3016         Add symbols for Mac Win builds for corresponding newly added APIs.
3017
3018         * win/WebKit2.def:
3019         * win/WebKit2CFLite.def:
3020
3021 2012-09-05  Balazs Kelemen  <kbalazs@webkit.org>
3022
3023         [Qt] QRawWebViewPrivate does not initialize some members
3024         https://bugs.webkit.org/show_bug.cgi?id=95709
3025
3026         Reviewed by Luiz Agostini.
3027
3028         Don't miss initializing the bool flags.
3029
3030         * UIProcess/API/qt/raw/qrawwebview.cpp:
3031         (QRawWebViewPrivate::QRawWebViewPrivate):
3032
3033 2012-09-04  Kangil Han  <kangil.han@samsung.com>
3034
3035         [WK2] Use explicit constructor in InjectedBundle.
3036         https://bugs.webkit.org/show_bug.cgi?id=95746
3037
3038         Reviewed by Sam Weinig.
3039
3040         Added explicit keyword in constructor of InjectedBundle in order to avoid implicit type conversion.
3041
3042         * WebProcess/InjectedBundle/InjectedBundle.h:
3043         (InjectedBundle):
3044
3045 2012-09-03  Sam Weinig  <sam@webkit.org>
3046
3047         Part 1 of removing PlatformString.h, move remaining functions to new homes
3048         https://bugs.webkit.org/show_bug.cgi?id=95702
3049
3050         Reviewed by Beth Dakin.
3051
3052         * UIProcess/WebPageProxy.h:
3053         Forward declare SharedBuffer.
3054
3055 2012-09-04  Jeffrey Pfau  <jpfau@apple.com>
3056
3057         Make plugins respect third-party storage blocking setting
3058         https://bugs.webkit.org/show_bug.cgi?id=94888
3059
3060         Reviewed by Brady Eidson.
3061
3062         Plugins that are in a third-party context should be put into private browsing mode so their storage is temporary.
3063
3064         * WebProcess/Plugins/PluginView.cpp:
3065         (WebKit::PluginView::isPrivateBrowsingEnabled): Put the plugin into private browsing mode if it is in a third-party context.
3066         (WebKit::PluginView::privateBrowsingStateChanged): Make sure a plugin doesn't leave private browsing mode if it's in a third-party context.
3067
3068 2012-09-04  Pekka Vuorela  <pvuorela@iki.fi>
3069
3070         [Qt] Remove use of deprecated QInputMethod method
3071         https://bugs.webkit.org/show_bug.cgi?id=95741
3072
3073         Reviewed by Simon Hausmann.
3074
3075         Adapt from deprecated QInputMethod::visible() to isVisible().
3076
3077         * UIProcess/qt/QtWebPageEventHandler.cpp:
3078         (WebKit::setInputPanelVisible):
3079         (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
3080
3081 2012-09-04  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
3082
3083         Allow child-frame content in hit-tests.
3084         https://bugs.webkit.org/show_bug.cgi?id=95204
3085
3086         Reviewed by Antonio Gomes.
3087
3088         Update symbols for the Windows build-system.
3089
3090         * win/WebKit2.def:
3091         * win/WebKit2CFLite.def:
3092
3093 2012-09-04  Ryuan Choi  <ryuan.choi@samsung.com>
3094
3095         [EFL] Drop default theme concept
3096         https://bugs.webkit.org/show_bug.cgi?id=94778
3097
3098         Reviewed by Gyuyoung Kim.
3099
3100         * PlatformEfl.cmake: Removed DEFAULT_THEME_PATH definitions.
3101         * UIProcess/API/efl/ewk_view.cpp:
3102         (_ewk_view_initialize): Removed default theme concept.
3103         * UIProcess/API/efl/ewk_view.h:
3104         Updated doxygen document not to mention default theme.
3105
3106 2012-09-03  Kangil Han  <kangil.han@samsung.com>
3107
3108         [WK2][WTR] Implement WebKitEnableCaretBrowsing attribute in testRunner.overridePreference
3109         https://bugs.webkit.org/show_bug.cgi?id=95576
3110
3111         Reviewed by Maciej Stachowiak.
3112
3113         Added a line of macro to implement WebKitEnableCaretBrowsing attribute in testRunner.overridePreference
3114
3115         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3116         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
3117
3118 2012-09-03  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
3119
3120         [Qt] Not all activated elements highlighted, but some frames are
3121         https://bugs.webkit.org/show_bug.cgi?id=95683
3122
3123         Reviewed by Kenneth Rohde Christiansen.
3124
3125         Use the new function Node::willRespondToMouseClickEvents to better determine if the element
3126         can be tap-activated and avoid documents and frames completely.
3127
3128         * WebProcess/WebPage/WebPage.cpp:
3129         (WebKit::WebPage::highlightPotentialActivation):
3130
3131 2012-09-03  Eunmi Lee  <eunmi15.lee@samsung.com>
3132
3133         [EFL][WK2] Add ewk_settings.
3134         https://bugs.webkit.org/show_bug.cgi?id=91206
3135
3136         Reviewed by Gyuyoung Kim.
3137
3138         Add the ewk_settings which wraps the WKPreferencesRef.
3139         The ewk_settings will be created by the ewk_view and it will be
3140         destroyed when the ewk_view is destroyed. I make each view to have
3141         its own group to make one ewk_settings sets preferences only for
3142         one ewk_view.
3143         The application can get the ewk_settings from ewk_view using
3144         ewk_view_settings_get() API.
3145
3146         * UIProcess/API/efl/EWebKit2.h:
3147         * UIProcess/API/efl/ewk_settings.cpp: Added.
3148         (ewk_settings_enable_scripts_set):
3149         (ewk_settings_enable_scripts_get):
3150         (ewk_settings_auto_load_images_set):
3151         (ewk_settings_auto_load_images_get):
3152         * UIProcess/API/efl/ewk_settings.h: Added.
3153         * UIProcess/API/efl/ewk_settings_private.h: Added.
3154         (_Ewk_Settings):
3155         (_Ewk_Settings::_Ewk_Settings):
3156         * UIProcess/API/efl/ewk_view.cpp:
3157         (_Ewk_View_Private_Data):
3158         (_ewk_view_initialize):
3159         (ewk_view_settings_get):
3160         * UIProcess/API/efl/ewk_view.h:
3161         * UIProcess/API/efl/tests/test_ewk2_settings.cpp: Added.
3162         (TEST_F):
3163         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3164         (TEST_F):
3165
3166 2012-09-03  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
3167
3168         Wheel-events fails temporarily after reload
3169         https://bugs.webkit.org/show_bug.cgi?id=94934
3170
3171         Reviewed by Kenneth Rohde Christiansen.
3172
3173         Set fixed visible content rect using visibleContentBounds instead of WebPage::size. Otherwise the 
3174         content rect will be incorrectly set to the entire document size, when resizesToContents is active.
3175
3176         Test: UIProcess/API/qt/tests/qmltests/WebView/tst_wheelEventHandling.qml
3177
3178         * UIProcess/API/qt/tests/qmltests/WebView/tst_wheelEventHandling.qml:
3179         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3180         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3181
3182 2012-09-03  Jinwoo Song  <jinwoo7.song@samsung.com>
3183
3184         [EFL] Use WebKitVersion.h to get version information
3185         https://bugs.webkit.org/show_bug.cgi?id=95669
3186
3187         Reviewed by Gyuyoung Kim.
3188
3189         Use WEBKIT_MAJOR_VERSION and WEBKIT_MINOR_VERSION 
3190         in the WebKitVersion.h
3191
3192         * UIProcess/efl/WebPageProxyEfl.cpp:
3193         (WebKit::WebPageProxy::standardUserAgent):
3194
3195 2012-09-03  Christophe Dumez  <christophe.dumez@intel.com>
3196
3197         [EFL][WK2] Skip EWK2UnitTestBase.ewk_cookie_manager_permanent_storage API test
3198         https://bugs.webkit.org/show_bug.cgi?id=95671
3199
3200         Reviewed by Kenneth Rohde Christiansen.
3201
3202         Skip EWK2UnitTestBase.ewk_cookie_manager_permanent_storage
3203         API test since it is flaky on the bots.
3204
3205         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
3206         (TEST_F):
3207
3208 2012-09-02  Kenichi Ishibashi  <bashi@chromium.org>
3209
3210         WK2: Build failure on SnowLeopard after r127384
3211         https://bugs.webkit.org/show_bug.cgi?id=95665
3212
3213         Reviewed by Dan Bernstein.
3214
3215         Add SandboxExtension::consumePermanently(const Handle&) for !ENABLE(WEB_PROCESS_SANDBOX) to fix link error.
3216
3217         * Shared/SandboxExtension.h:
3218         (WebKit::SandboxExtension::consumePermanently):
3219
3220 2012-09-02  Ryuan Choi  <ryuan.choi@samsung.com>
3221
3222         [EFL][WK2] Keep activePopupMenu to call valueChangedForPopupMenu() outside showPopupMenu()
3223         https://bugs.webkit.org/show_bug.cgi?id=95355
3224
3225         Reviewed by Gyuyoung Kim.
3226
3227         Efl does not have a proper way to support nested loop so that applications
3228         may change value after showPopupMenu() is finished.
3229
3230         * UIProcess/API/efl/tests/test_ewk2_view.cpp: Improved test case to cover this bug.
3231         (selectItemAfterDelayed):
3232         (showPopupMenu):
3233         * UIProcess/WebPageProxy.cpp:
3234         (WebKit::WebPageProxy::showPopupMenu):
3235         Guard with !PLATFORM(EFL) to keep the activePopupMenu valid to call valueChangedForPopupMenu
3236         outside showPopupMenu().
3237
3238 2012-09-02  Byungwoo Lee  <bw80.lee@gmail.com>
3239
3240         [EFL] Add missing semicolon at the end of some lines.
3241         https://bugs.webkit.org/show_bug.cgi?id=95640
3242
3243         Reviewed by Gyuyoung Kim.
3244
3245         EWK_VIEW_PRIV_GET_OR_RETURN macro and other related macro can be used
3246         without semicolon, because it ends with a semicolon or complete block.
3247         This can make a human mistake about missing semicolon.
3248
3249         Fixed the macros to require semicolon, and added missing semicolons.
3250
3251         * UIProcess/API/efl/ewk_view.cpp:
3252         (_ewk_view_smart_focus_in):
3253         (_ewk_view_smart_focus_out):
3254         (_ewk_view_smart_mouse_wheel):
3255         (_ewk_view_smart_mouse_down):
3256         (_ewk_view_smart_mouse_up):
3257         (_ewk_view_smart_mouse_move):
3258         (_ewk_view_smart_key_down):
3259         (_ewk_view_smart_key_up):
3260         (_ewk_view_initialize):
3261
3262 2012-09-01  Sam Weinig  <sam@webkit.org>
3263
3264         Remove unused member variable from WebProcess.
3265
3266         Rubber-stamped by Dan Bernstein.
3267
3268         * WebProcess/WebProcess.h:
3269         (WebProcess):
3270         Remove m_applicationCachePathExtension.
3271
3272 2012-09-01  Sam Weinig  <sam@webkit.org>
3273
3274         Use dynamic sandbox extension rather than sandbox parameters for paths provided by the UIProcess
3275         https://bugs.webkit.org/show_bug.cgi?id=95651
3276
3277         Reviewed by Dan Bernstein.
3278
3279         This is the first step to not relying on the initialization message to initialize
3280         the sandbox.
3281
3282         * Shared/SandboxExtension.h:
3283         (SandboxExtension):
3284         * Shared/mac/SandboxExtensionMac.mm:
3285         (WebKit::SandboxExtension::consumePermanently):
3286         Add static version of SandboxExtension::consumePermanently which takes a
3287         SandboxExtension::Handle. There is no reason to create a SandboxExtension
3288         just to consume it forever.
3289
3290         * Shared/WebProcessCreationParameters.cpp:
3291         (WebKit::WebProcessCreationParameters::encode):
3292         (WebKit::WebProcessCreationParameters::decode):
3293         * Shared/WebProcessCreationParameters.h:
3294         (WebProcessCreationParameters):
3295         Add SandboxExtension::Handles for paths we need access to, and remove
3296         webInspectorBaseDirectory, which is unused.
3297
3298         * UIProcess/WebContext.cpp:
3299         (WebKit::WebContext::createNewWebProcess):
3300         * UIProcess/mac/WebContextMac.mm:
3301         (WebKit::WebContext::platformInitializeWebProcess):
3302         Create SandboxExtension::Handles for paths we need access to, and move
3303         getting the presenterApplicationPid to platformInitializeWebProcess, since
3304         it is Mac only.
3305
3306         * WebProcess/WebProcess.cpp:
3307         (WebKit::WebProcess::initializeWebProcess):
3308         Move setting the presenterApplicationPid to platformInitializeWebProcess.
3309
3310         * WebProcess/mac/WebProcessMac.mm:
3311         (WebKit::initializeSandbox):
3312         (WebKit::WebProcess::platformInitializeWebProcess):
3313         Replace the use of sandbox parameters for opening access for necessary paths
3314         with permanent consumption of sandbox extensions.
3315
3316         * WebProcess/com.apple.WebProcess.sb.in:
3317         Remove sandbox rules that are now handled via extensions.
3318
3319 2012-08-31  Byungwoo Lee  <bw80.lee@samsung.com>
3320
3321         Build warning : -Wformat on WebMemorySampler.cpp.
3322         https://bugs.webkit.org/show_bug.cgi?id=95550
3323
3324         Reviewed by Darin Adler.
3325
3326         Fix build warning.
3327         Use String::number instead of String::format.
3328
3329         * Shared/WebMemorySampler.cpp:
3330         (WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):
3331
3332 2012-08-31  Alexey Proskuryakov  <ap@apple.com>
3333
3334         [WK2] Use initial process in multi-process mode, too
3335         https://bugs.webkit.org/show_bug.cgi?id=95612
3336
3337         Reviewed by Sam Weinig.
3338
3339         * UIProcess/WebContext.cpp:
3340         (WebKit::WebContext::WebContext):
3341         (WebKit::WebContext::warmInitialProcess):
3342         (WebKit::WebContext::disconnectProcess):
3343         (WebKit::WebContext::createWebPage):
3344         * UIProcess/WebContext.h:
3345         Added a boolean telling whether the last (normally, the only) process in m_processes
3346         is available for use in a new page.
3347
3348 2012-08-31  Alexey Proskuryakov  <ap@apple.com>
3349
3350         [WK2] WebProcesses should not wait 60 seconds to close in multi-process mode
3351         https://bugs.webkit.org/show_bug.cgi?id=95616
3352
3353         Reviewed by Darin Adler.
3354
3355         * Shared/ChildProcess.cpp: (WebKit::ChildProcess::ChildProcess):
3356         * Shared/ChildProcess.h: (WebKit::ChildProcess::setTerminationTimeout):
3357         Expose a setter for timeout instead of taking it at construction time. If a derived
3358         class doesn't call the setter, default to 0.
3359
3360         * PluginProcess/PluginProcess.cpp:
3361         (WebKit::PluginProcess::PluginProcess):
3362         (WebKit::PluginProcess::initializePluginProcess):
3363         Use timeout from initialization message.
3364
3365         * WebProcess/WebProcess.cpp:
3366         (WebKit::WebProcess::WebProcess):
3367         (WebKit::WebProcess::initializeWebProcess):
3368         Ditto.
3369
3370         * Shared/Plugins/PluginProcessCreationParameters.cpp:
3371         (WebKit::PluginProcessCreationParameters::encode):
3372         (WebKit::PluginProcessCreationParameters::decode):
3373         * Shared/Plugins/PluginProcessCreationParameters.h:
3374         * Shared/WebProcessCreationParameters.cpp:
3375         (WebKit::WebProcessCreationParameters::encode):
3376         (WebKit::WebProcessCreationParameters::decode):
3377         * Shared/WebProcessCreationParameters.h:
3378         Funnel timeout across process boundary.
3379
3380         * UIProcess/Plugins/PluginProcessProxy.cpp: (WebKit::PluginProcessProxy::didFinishLaunching):
3381         Pass timeout as initialization message after launch.
3382
3383         * UIProcess/WebContext.cpp:
3384         (WebKit::WebContext::createNewWebProcess): Pass timeout as initialization message
3385         (unlike plugin process proxy, web process proxy doesn't wait, and relies on the message
3386         being queued).
3387         (WebKit::WebContext::disconnectProcess): Skip invalidating global managers when
3388         one process quits. We still need to do something, but running this code would just
3389         result in assertion failures any time a page was closed.
3390
3391 2012-08-31  Brady Eidson  <beidson@apple.com>
3392
3393        REGRESSION (r127252): incomplete repaint on Flash element after pinch to zoom
3394        <rdar://problem/12217897> and https://bugs.webkit.org/show_bug.cgi?id=95607
3395
3396        Reviewed by Simon Fraser.
3397
3398        * WebProcess/Plugins/PluginView.cpp:
3399        (WebKit::PluginView::viewGeometryDidChange): Only give the window coordinate clip rect a chance
3400          to override the boundsRect() if the page scale factor is 1.
3401
3402 2012-08-31  Tony Chang  <tony@chromium.org>
3403
3404         Remove ENABLE_CSS3_FLEXBOX compile time flag
3405         https://bugs.webkit.org/show_bug.cgi?id=95382
3406
3407         Reviewed by Ojan Vafai.
3408
3409         Everyone is already enabling this by default and the spec has stablized.
3410
3411         * Configurations/FeatureDefines.xcconfig:
3412
3413 2012-08-31  Pratik Solanki  <psolanki@apple.com>
3414
3415         objc_msgSend and IMP should be cast appropriately before using
3416         https://bugs.webkit.org/show_bug.cgi?id=95242
3417
3418         Reviewed by Benjamin Poulain.
3419
3420         Follow on fix for Mac EWS - use objc-runtime.h instead of runtime.h so
3421         that it finds the declaration for objc_msgSend.
3422
3423         * UIProcess/API/mac/PDFViewController.mm:
3424
3425 2012-08-31  Jon Lee  <jonlee@apple.com>
3426
3427         [Tests] Add basic tests to http/tests/notifications
3428         https://bugs.webkit.org/show_bug.cgi?id=95493
3429         <rdar://problem/12209303>
3430
3431         Reviewed by Alexey Proskuryakov.
3432
3433         Simplify the passing of the permission policy to just a boolean instead of converting it
3434         back and forth from the NotificationClient::Permission enum.
3435
3436         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Move the declaration to the section
3437         of functions that are TestRunner SPI.
3438         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3439         (WebKit::InjectedBundle::setWebNotificationPermission): Use a boolean.
3440         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
3441         (WebKit::NotificationPermissionRequestManager::setPermissionLevelForTesting):
3442         * WebProcess/Notifications/NotificationPermissionRequestManager.h:
3443         (NotificationPermissionRequestManager):
3444
3445         * win/WebKit2.vcproj: Add WKNotificationPermissionRequest.{h,cpp}.
3446         * win/WebKit2Generated.make: Export WKNotificationPermissionRequest.h.
3447
3448 2012-08-31  Balazs Kelemen  <kbalazs@webkit.org>
3449
3450         [Qt] ASSERT(m_useFixedLayout) in WebPage when using QRawWebView without setting fixed layout
3451         https://bugs.webkit.org/show_bug.cgi?id=95557
3452
3453         Reviewed by Noam Rosenthal.
3454
3455         Let QRawWebView work with non-fixed layout size.
3456
3457         * UIProcess/API/qt/raw/qrawwebview.cpp:
3458         (QRawWebView::setSize): Also put the member assigment into
3459         the point where the new size is ensured to be committed.
3460
3461 2012-08-31  Balazs Kelemen  <kbalazs@webkit.org>
3462
3463         [Qt] LayerTreeRenderer::callOnMainTread method name is misleading
3464         https://bugs.webkit.org/show_bug.cgi?id=95558
3465
3466         Reviewed by Kenneth Rohde Christiansen.
3467
3468         Fix the typo in the function name so callers will really call this
3469         and not WTF::callOnMainThread. Renamed to dispatchOnMainThread to
3470         make it clear that these things are not the same.
3471
3472         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3473         (WebKit::LayerTreeRenderer::dispatchOnMainThread):
3474         (WebKit::LayerTreeRenderer::flushLayerChanges):
3475         (WebKit::LayerTreeRenderer::purgeGLResources):
3476         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
3477         (LayerTreeRenderer):
3478
3479 2012-08-31  Brady Eidson  <beidson@apple.com>
3480
3481         REGRESSION (127047): Crash in PluginProxy::windowVisibilityChanged when changing tabs
3482         <rdar://problem/12211180> and https://bugs.webkit.org/show_bug.cgi?id=95515
3483
3484         Reviewed by Dan Bernstein.
3485
3486         Plug-ins created in background tabs don't get initialized until they first become visible,
3487         so telling them they are now invisible leads to messaging on behalf of an uninitialized plug-in.
3488
3489         Many other methods related to visibility and focus only call through if the plug-in is initialized,
3490         so setWindowIsVisible should do the same.
3491
3492         * WebProcess/Plugins/PluginView.cpp:
3493         (WebKit::PluginView::setWindowIsVisible): Only tell initialized plug-ins of window visibility changes.
3494
3495 2012-08-31  Milian Wolff  <milian.wolff@kdab.com>
3496
3497         [Qt] QNX does not support SOCK_SEQPACKET socket type for socketpair in ProcessLauncherQt
3498         https://bugs.webkit.org/show_bug.cgi?id=95553
3499
3500         Reviewed by Simon Hausmann.
3501
3502         Calling socketpair with SOCK_SEQPACKET socket type fails on QNX with an error 241 (EPROTOTYPE),
3503         as can be seen by the following debug output: "Creation of socket failed with errno: 241".
3504         A test app shows that SOCK_DGRAM works properly on QNX, thus use it instead of SOCK_SEQPACKET.
3505
3506         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
3507
3508 2012-08-30  Mark Hahnenberg  <mhahnenberg@apple.com>
3509
3510         ~JSNPObject should call invalidate() if it hasn't been called already
3511         https://bugs.webkit.org/show_bug.cgi?id=95497
3512
3513         Reviewed by Geoffrey Garen.