06cd0b209daf0e8b8bfe4d443449c03707424aba
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2012-09-13  Simon Hausmann  <simon.hausmann@nokia.com>
2
3         [Qt] Fix build of WTR and the QML2 plugin on Windows
4         https://bugs.webkit.org/show_bug.cgi?id=96652
5
6         Reviewed by Tor Arne Vestbø.
7
8         Some components that we build such as WTR or the QML2 plugin include
9         WebKit2 header files as well as WebKit2's config.h. Only the include
10         paths of WebKit2 are required for that at the moment (WEBKIT +=
11         webkit2). Only on Windows WebKit2's config.h also includes
12         WebCore/config.h, which in turn requires to have WebCore/platform in
13         your include search path. That in turn means that any component that
14         wants to use WebKit2 headers also needs the WebCore headers, but only
15         one Windows. It turns out that for the Qt build we don't need it, so
16         skip it in our configuration and make the include path requirement
17         the same across all the platforms we build.
18
19         * config.h:
20
21 2012-09-13  Andras Becsi  <andras.becsi@nokia.com>
22
23         [Qt][WK2] REGRESSION(r128245): It made zillion API tests fail
24         https://bugs.webkit.org/show_bug.cgi?id=96531
25
26         Reviewed by Jocelyn Turcotte.
27
28         Preferences have to be updated after the drawing area was created
29         for compositing mode to be set.
30
31         * WebProcess/WebPage/WebPage.cpp:
32         (WebKit::WebPage::WebPage):
33
34 2012-09-13  Simon Hausmann  <simon.hausmann@nokia.com>
35
36         [Qt] Fix UIProcess build with Qt on Windows
37         https://bugs.webkit.org/show_bug.cgi?id=96635
38
39         Reviewed by Csaba Osztrogonác.
40
41         Enabling setShouldCloseConnectionOnProcessTermination on the connection
42         is something that is only implemented in ConnectionUnix, not
43         ConnectionWin.cpp, where appears to be built-in functionality.
44
45         * UIProcess/WebConnectionToWebProcess.cpp:
46         (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
47
48 2012-09-13  Oswald Buddenhagen  <oswald.buddenhagen@nokia.com>
49
50         [Qt] Fix build against namespaced Qt
51
52         Reviewed by Tor Arne Vestbø.
53
54         * UIProcess/qt/PageViewportControllerClientQt.h:
55
56 2012-09-13  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
57
58         [EFL][Qt][WK2] Implement shared undo controller for EFL and Qt port.
59         https://bugs.webkit.org/show_bug.cgi?id=92504
60
61         Reviewed by Kenneth Rohde Christiansen.
62
63         EFL port needs an undo controller similiar to one from Qt port. Instead of
64         duplicating the code existing class was renamed and moved to UIProcess
65         directory.
66
67         * PlatformEfl.cmake:
68         * Target.pri:
69         * UIProcess/API/efl/PageClientImpl.cpp:
70         (WebKit::PageClientImpl::registerEditCommand):
71         (WebKit::PageClientImpl::clearAllEditCommands):
72         (WebKit::PageClientImpl::canUndoRedo):
73         (WebKit::PageClientImpl::executeUndoRedo):
74         * UIProcess/API/efl/PageClientImpl.h:
75         (PageClientImpl):
76         * UIProcess/API/qt/qquickwebview_p_p.h:
77         (QQuickWebViewPrivate):
78         * UIProcess/DefaultUndoController.cpp: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoController.cpp.
79         (WebKit):
80         (WebKit::DefaultUndoController::registerEditCommand):
81         (WebKit::DefaultUndoController::clearAllEditCommands):
82         (WebKit::DefaultUndoController::canUndoRedo):
83         (WebKit::DefaultUndoController::executeUndoRedo):
84         * UIProcess/DefaultUndoController.h: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoController.h.
85         (WebKit):
86         (DefaultUndoController):
87         * UIProcess/qt/QtPageClient.cpp:
88         (WebKit::QtPageClient::initialize):
89         * UIProcess/qt/QtPageClient.h:
90         (WebKit):
91         (QtPageClient):
92
93 2012-09-13  Christophe Dumez  <christophe.dumez@intel.com>
94
95         [EFL][WK2] Make _ref() functions return the object
96         https://bugs.webkit.org/show_bug.cgi?id=96604
97
98         Reviewed by Gyuyoung Kim.
99
100         Make _ref() functions return the ref'd object to
101         make them more convenient to use. Also fix their
102         usage to make use of the newly returned value.
103
104         This change is consistent with eina_stringshare_ref()
105         in EFL and g_object_ref() in glib.
106
107         * UIProcess/API/efl/ewk_back_forward_list.cpp:
108         (createEinaList):
109         * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
110         (ewk_back_forward_list_item_ref):
111         * UIProcess/API/efl/ewk_back_forward_list_item.h:
112         * UIProcess/API/efl/ewk_context.cpp:
113         (ewk_context_download_job_add):
114         * UIProcess/API/efl/ewk_download_job.cpp:
115         (ewk_download_job_ref):
116         (ewk_download_job_response_set):
117         * UIProcess/API/efl/ewk_download_job.h:
118         * UIProcess/API/efl/ewk_form_submission_request.cpp:
119         (ewk_form_submission_request_ref):
120         * UIProcess/API/efl/ewk_form_submission_request.h:
121         * UIProcess/API/efl/ewk_intent.cpp:
122         (ewk_intent_ref):
123         * UIProcess/API/efl/ewk_intent.h:
124         * UIProcess/API/efl/ewk_intent_service.cpp:
125         (ewk_intent_service_ref):
126         * UIProcess/API/efl/ewk_intent_service.h:
127         * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
128         (ewk_navigation_policy_decision_ref):
129         * UIProcess/API/efl/ewk_navigation_policy_decision.h:
130         * UIProcess/API/efl/ewk_url_request.cpp:
131         (ewk_url_request_ref):
132         * UIProcess/API/efl/ewk_url_request.h:
133         * UIProcess/API/efl/ewk_url_response.cpp:
134         (ewk_url_response_ref):
135         * UIProcess/API/efl/ewk_url_response.h:
136         * UIProcess/API/efl/ewk_url_scheme_request.cpp:
137         (ewk_url_scheme_request_ref):
138         * UIProcess/API/efl/ewk_url_scheme_request.h:
139         * UIProcess/API/efl/ewk_view.cpp:
140         (ewk_view_resource_load_initiated):
141         * UIProcess/API/efl/ewk_web_resource.cpp:
142         (ewk_web_resource_ref):
143         * UIProcess/API/efl/ewk_web_resource.h:
144
145 2012-09-12  Sheriff Bot  <webkit.review.bot@gmail.com>
146
147         Unreviewed, rolling out r127876.
148         http://trac.webkit.org/changeset/127876
149         https://bugs.webkit.org/show_bug.cgi?id=96600
150
151         mouse click doesn't work for spin button if spin button in
152         iframe (Requested by yosin on #webkit).
153
154         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
155         (WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
156         * WebProcess/WebPage/WebPage.cpp:
157         (WebKit::handleContextMenuEvent):
158         (WebKit::WebPage::highlightPotentialActivation):
159         (WebKit::WebPage::findZoomableAreaForPoint):
160         * WebProcess/WebPage/mac/WebPageMac.mm:
161         (WebKit::WebPage::characterIndexForPoint):
162         (WebKit::WebPage::performDictionaryLookupAtLocation):
163         (WebKit::WebPage::shouldDelayWindowOrderingEvent):
164         (WebKit::WebPage::acceptsFirstMouse):
165         * win/WebKit2.def:
166         * win/WebKit2CFLite.def:
167
168 2012-09-12  Brady Eidson  <beidson@apple.com>
169
170         Assert in NetscapePlugin::destroy() with async plugin init
171         <rdar://problem/12277595> and https://bugs.webkit.org/show_bug.cgi?id=96576
172
173         Reviewed by Anders Carlsson.
174
175         Most of the NPN_* API calls have a plug-in protector during the calls.
176         NPN_Invoke and NPN_InvokeDefault do not.
177
178         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
179         (WebKit::NPN_Invoke): Protect the plug-in during this call.
180         (WebKit::NPN_InvokeDefault): Ditto.
181
182 2012-09-11  Alexey Proskuryakov  <ap@apple.com>
183
184         <rdar://problem/12275537> REGRESSION(r127384): Non-existent directories are no longer created for sandbox paths
185         https://bugs.webkit.org/show_bug.cgi?id=96442
186
187         Reviewed by Darin Adler.
188
189         * Shared/SandboxExtension.h:
190         (WebKit::SandboxExtension::createHandleForReadWriteDirectory):
191         * Shared/mac/SandboxExtensionMac.mm:
192         (WebKit::SandboxExtension::createHandleForReadWriteDirectory):
193         Added a function for read-write configuration directories. It matches
194         appendReadwriteSandboxDirectory() function behavior from WebProcessMac.mm.
195
196         * UIProcess/WebContext.cpp:
197         (WebKit::WebContext::createNewWebProcess):
198         * UIProcess/mac/WebContextMac.mm:
199         (WebKit::WebContext::platformInitializeWebProcess):
200         Use the new function for directories that need to be created if they don't exist.
201
202 2012-09-12  Christophe Dumez  <christophe.dumez@intel.com>
203
204         [WK2][WKTR] TestRunner needs to implement originsWithApplicationCache
205         https://bugs.webkit.org/show_bug.cgi?id=96496
206
207         Reviewed by Kenneth Rohde Christiansen.
208
209         Add Bundle C API to retrieve security origins with
210         an application cache. This is needed by WebKitTestRunner
211         to support originsWithApplicationCache.
212
213         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
214         (WKBundleCopyOriginsWithApplicationCache):
215         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
216         * WebProcess/InjectedBundle/InjectedBundle.cpp:
217         (WebKit::InjectedBundle::originsWithApplicationCache):
218         (WebKit):
219         * WebProcess/InjectedBundle/InjectedBundle.h:
220         (InjectedBundle):
221
222 2012-09-12  Christophe Dumez  <christophe.dumez@intel.com>
223
224         [WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
225         https://bugs.webkit.org/show_bug.cgi?id=96374
226
227         Reviewed by Kenneth Rohde Christiansen.
228
229         Add Bundle C API to reset the application cache quota
230         for a given origin.
231
232         Add new reachedApplicationCacheOriginQuota callback
233         to WKBundlePageUIClient which is called from
234         WebChromeClient::reachedApplicationCacheOriginQuota().
235
236         Those are needed by WebKitTestRunner to dump
237         information about the application cache callbacks
238         if instructed to.
239
240         * Shared/APIClientTraits.cpp:
241         (WebKit):
242         * Shared/APIClientTraits.h:
243         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
244         (WKBundleSetApplicationCacheOriginQuota):
245         (WKBundleResetApplicationCacheOriginQuota):
246         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
247         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
248         * WebProcess/InjectedBundle/InjectedBundle.cpp:
249         (WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
250         (WebKit):
251         * WebProcess/InjectedBundle/InjectedBundle.h:
252         (InjectedBundle):
253         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
254         (WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
255         (WebKit):
256         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
257         (WebKit):
258         (InjectedBundlePageUIClient):
259         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
260         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
261         * win/WebKit2.def:
262         * win/WebKit2CFLite.def:
263
264 2012-09-12  Sheriff Bot  <webkit.review.bot@gmail.com>
265
266         Unreviewed, rolling out r128280.
267         http://trac.webkit.org/changeset/128280
268         https://bugs.webkit.org/show_bug.cgi?id=96498
269
270         it broke compilation on windows debug bot (Requested by loislo
271         on #webkit).
272
273         * Shared/APIClientTraits.cpp:
274         (WebKit):
275         * Shared/APIClientTraits.h:
276         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
277         (WKBundleSetApplicationCacheOriginQuota):
278         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
279         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
280         * WebProcess/InjectedBundle/InjectedBundle.cpp:
281         * WebProcess/InjectedBundle/InjectedBundle.h:
282         (InjectedBundle):
283         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
284         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
285         (WebKit):
286         (InjectedBundlePageUIClient):
287         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
288         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
289
290 2012-09-12  Byungwoo Lee  <bw80.lee@samsung.com>
291
292         [EFL][WK2] WorkQueue::dispatchAfterDelay() doesn't work properly.
293         https://bugs.webkit.org/show_bug.cgi?id=91179
294
295         Reviewed by Gyuyoung Kim.
296
297         When UI Process is crashed and WebProcess's ecore main loop is very
298         busy or lockup also, watchdocCallback() function in the
299         ChildProcess.cpp doesn't triggered. And this is because of that
300         WorkQueue::dispatchAfterDelay() function uses ecore timer for getting
301         timer event.
302
303         For removing the dependency between the dispatchAfterDelay() and ecore
304         main loop, new timer event mechanism is added to WorkQueue main loop.
305
306         * Platform/WorkQueue.h:
307         (TimerWorkItem):
308         (WorkQueue::TimerWorkItem::dispatch):
309         (WorkQueue::TimerWorkItem::expireTime):
310         (WorkQueue::TimerWorkItem::expired):
311         (WorkQueue):
312         * Platform/efl/WorkQueueEfl.cpp:
313         (WorkQueue::TimerWorkItem::create):
314         (WorkQueue::TimerWorkItem::TimerWorkItem):
315         (WorkQueue::performFileDescriptorWork):
316         (WorkQueue::getCurrentTime):
317         (WorkQueue::getNextTimeOut):
318         (WorkQueue::performTimerWork):
319         (WorkQueue::workQueueThread):
320         (WorkQueue::dispatchAfterDelay):
321
322 2012-09-12  Christophe Dumez  <christophe.dumez@intel.com>
323
324         [WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
325         https://bugs.webkit.org/show_bug.cgi?id=96374
326
327         Reviewed by Kenneth Rohde Christiansen.
328
329         Add Bundle C API to reset the application cache quota
330         for a given origin.
331
332         Add new reachedApplicationCacheOriginQuota callback
333         to WKBundlePageUIClient which is called from
334         WebChromeClient::reachedApplicationCacheOriginQuota().
335
336         Those are needed by WebKitTestRunner to dump
337         information about the application cache callbacks
338         if instructed to.
339
340         * Shared/APIClientTraits.cpp:
341         (WebKit):
342         * Shared/APIClientTraits.h:
343         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
344         (WKBundleSetApplicationCacheOriginQuota):
345         (WKBundleResetApplicationCacheOriginQuota):
346         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
347         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
348         * WebProcess/InjectedBundle/InjectedBundle.cpp:
349         (WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
350         (WebKit):
351         * WebProcess/InjectedBundle/InjectedBundle.h:
352         (InjectedBundle):
353         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
354         (WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
355         (WebKit):
356         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
357         (WebKit):
358         (InjectedBundlePageUIClient):
359         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
360         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
361
362 2012-09-12  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
363
364         [WK2] [WTR] WebKitTestRunner needs TestRunner.workerThreadCount
365         https://bugs.webkit.org/show_bug.cgi?id=96388
366
367         Reviewed by Kenneth Rohde Christiansen.
368
369         Added WKBundleGetWorkerThreadCount() function to Injected Bundle private API.
370
371         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
372         (WKBundleGetWorkerThreadCount):
373         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
374         * WebProcess/InjectedBundle/InjectedBundle.cpp:
375         (WebKit::InjectedBundle::workerThreadCount): Returns count of worker threads.
376         (WebKit):
377         * WebProcess/InjectedBundle/InjectedBundle.h:
378         (InjectedBundle):
379
380 2012-09-12  Darin Adler  <darin@apple.com>
381
382         Make NetscapePlugin::m_timers use HashMap<OwnPtr> instead of deleteAllValues
383         https://bugs.webkit.org/show_bug.cgi?id=96469
384
385         Reviewed by Dan Bernstein.
386
387         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
388         (WebKit::NetscapePlugin::scheduleTimer): Call release rather than leakPtr when
389         entering a timer into the map.
390         (WebKit::NetscapePlugin::unscheduleTimer): Take an existing timer from the map
391         with the take function rather than the roundabout code needed before.
392         (WebKit::NetscapePlugin::destroy): Remove now-unneeded call to deleteAllValues.
393         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Change the value type for
394         TimerMap to OwnPtr<Timer> rather than Timer*.
395
396 2012-09-11  Anders Carlsson  <andersca@apple.com>
397
398         Accelerated compositing should always be forced when using the tiled drawing area
399         https://bugs.webkit.org/show_bug.cgi?id=96449
400
401         Reviewed by Andy Estes.
402
403         There's code in WebPage::updatePreferences that will turn off accelerated compositing unless accelerated drawing is enabled.
404         This should only be done in the non-tiled model, so move the code to DrawingAreaImpl::updatePreferences.
405
406         * WebProcess/WebPage/DrawingArea.h:
407         (WebKit::DrawingArea::updatePreferences):
408         This now takes a WebPreferencesStore.
409
410         * WebProcess/WebPage/DrawingAreaImpl.cpp:
411         (WebKit::DrawingAreaImpl::updatePreferences):
412         Move code here from WebPage::updatePreferences.
413
414         * WebProcess/WebPage/WebPage.cpp:
415         (WebKit::WebPage::updatePreferences):
416         Pass the WebPreferencesStore to DrawingArea::updatePreferences.
417
418         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
419         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
420         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
421         Remove call to updatePreferences, it's going to be called by the WebPage object later.
422
423         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
424         This now takes a WebPreferencesStore.
425
426 2012-09-11  Brady Eidson  <beidson@apple.com>
427
428         Get rid of the PluginProcessShim for 64-bit plug-ins
429         <rdar://problem/12068560> and https://bugs.webkit.org/show_bug.cgi?id=96415
430
431         Reviewed by Anders Carlsson.
432
433         * PluginProcess/PluginProcess.h:
434         (PluginProcess):
435
436         * PluginProcess/mac/PluginProcessMac.mm:
437         (WebKit::getCurrentEventButtonState):
438         (WebKit):
439         (WebKit::beginModal): Moved from the shim, to be shared with shimmed processes.
440         (WebKit::endModal): Ditto.
441         (WebKit::replacedRunModalForWindow): Only used by Cocoa overrides.
442         (WebKit::PluginProcess::initializeShim):
443         (WebKit::PluginProcess::initializeCocoaOverrides): 
444
445         * PluginProcess/mac/PluginProcessMainMac.mm:
446         (WebKit::PluginProcessMain): Only call initializeShim for 32-bit processes, always call initializeCocoaOverrides
447
448         * PluginProcess/mac/PluginProcessShim.h:
449         (PluginProcessShimCallbacks):
450         * PluginProcess/mac/PluginProcessShim.mm:
451         (WebKit):
452         (WebKit::shimModalDialog): Call beginModal/endModal from the shim callbacks.
453         (WebKit::shimAlert): Ditto.
454         (WebKit::WebKitPluginProcessShimInitialize): Don't do the Cocoa overrides as they are now handled outside the shim.
455
456 2012-09-11  Marcelo Lira  <marcelo.lira@openbossa.org>
457
458         Restore original value of mock scrollbars enabled in InternalSettings
459         https://bugs.webkit.org/show_bug.cgi?id=87680
460
461         Reviewed by Adam Barth.
462
463         Added backup support for mock scrollbars state in
464         InternalSettings::Backup, and removed support for these
465         from Qt's DumpRenderTree.
466
467         * win/WebKit2.def:
468
469 2012-09-11  Brady Eidson  <beidson@apple.com>
470
471         We should wait longer before killing the PluginProcess.
472         <rdar://problem/12067728> and https://bugs.webkit.org/show_bug.cgi?id=96407
473
474         Reviewed by Anders Carlsson.
475
476         Currently we kill the PluginProcess 15 seconds after the last plug-in is destroyed.
477         This is short enough that most users will have the process killed many times during browsing sessions,
478         which is painful because relaunching the process is I/O and kernel intensive.
479
480         In an ideal world we could keep it around forever until the system tells us resources are running low.
481
482         In reality we do want to kill it occasionally to get a clean slate from any plug-in leaks.
483
484         A reasonable balance for now is to set a minimum lifetime of 30 minutes on the plug-in process and to 
485         extend the termination timer from 15 seconds to 10 minutes.
486         
487         * PluginProcess/PluginProcess.cpp:
488         (WebKit::PluginProcess::PluginProcess):
489         (WebKit::PluginProcess::initializePluginProcess):
490         (WebKit::PluginProcess::setMinimumLifetime):
491         (WebKit):
492         (WebKit::PluginProcess::minimumLifetimeTimerFired):
493         * PluginProcess/PluginProcess.h:
494         (PluginProcess):
495
496         * Shared/Plugins/PluginProcessCreationParameters.cpp:
497         (WebKit::PluginProcessCreationParameters::encode):
498         (WebKit::PluginProcessCreationParameters::decode):
499         * Shared/Plugins/PluginProcessCreationParameters.h:
500         (PluginProcessCreationParameters):
501
502         * UIProcess/Plugins/PluginProcessProxy.cpp:
503         (WebKit):
504         (WebKit::PluginProcessProxy::didFinishLaunching):
505
506 2012-09-11  Jinwoo Song  <jinwoo7.song@samsung.com>
507
508         Deploy StringBuilder::appendNumber() and StringBuilder::appendLiteral() in more places
509         https://bugs.webkit.org/show_bug.cgi?id=96344
510
511         Reviewed by Benjamin Poulain.
512
513         Use StringBuilder::appendNumber() instead of String::number(). Also deploy 
514         StringBuilder::appendLiteral() instead of String::append() in the surrounding code.
515
516         * Shared/WebMemorySampler.cpp:
517         (WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):
518         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
519         (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
520         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
521         (WebKit::WebInspectorServer::inspectorUrlForPageID):
522         (WebKit::WebInspectorServer::buildPageList):
523
524 2012-09-11  Anders Carlsson  <andersca@apple.com>
525
526         Fix speling error in comment.
527
528         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
529         (WebKit::isTransparentSilverlightBackgroundValue):
530
531 2012-09-11  Raphael Kubo da Costa  <rakuco@webkit.org>
532
533         [EFL] Rewrite the EFL-related Find modules
534         https://bugs.webkit.org/show_bug.cgi?id=95237
535
536         Reviewed by Kenneth Rohde Christiansen.
537
538         * CMakeLists.txt: Stop setting the LINK_FLAGS property.
539         * PlatformEfl.cmake: Add libraries and include directories for
540         each Enlightenment Foundation Library used by the port.
541
542 2012-09-11  Christophe Dumez  <christophe.dumez@intel.com>
543
544         [WK2][WKTR] TestRunner needs to implement setApplicationCacheOriginQuota
545         https://bugs.webkit.org/show_bug.cgi?id=96379
546
547         Reviewed by Kenneth Rohde Christiansen.
548
549         Add Bundle C API to set the application cache quota for a
550         given security origin. This is needed by WebKitTestRunner
551         to implement setApplicationCacheOriginQuota().
552
553         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
554         (WKBundleSetApplicationCacheOriginQuota):
555         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
556         * WebProcess/InjectedBundle/InjectedBundle.cpp:
557         (WebKit::InjectedBundle::setApplicationCacheOriginQuota):
558         (WebKit):
559         * WebProcess/InjectedBundle/InjectedBundle.h:
560         (InjectedBundle):
561
562 2012-09-11  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
563
564         [WK2][WTR] WebKitTestRunner needs testRunner.setSpatialNavigationEnabled
565         https://bugs.webkit.org/show_bug.cgi?id=96269
566
567         Reviewed by Kenneth Rohde Christiansen.
568
569         Added a new setter for spacial navigation enabling to Injected Bundle private API.
570
571         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
572         (WKBundleSetSpatialNavigationEnabled):
573         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
574         * WebProcess/InjectedBundle/InjectedBundle.cpp:
575         (WebKit::InjectedBundle::setSpatialNavigationEnabled):
576         (WebKit):
577         * WebProcess/InjectedBundle/InjectedBundle.h:
578         (InjectedBundle):
579
580 2012-09-11  Marcelo Lira  <marcelo.lira@openbossa.org>
581
582         [Qt][WK2] Page loading status API lacks a status for intentionally stopped loading
583         https://bugs.webkit.org/show_bug.cgi?id=83062
584
585         Reviewed by Tor Arne Vestbø.
586
587         When the loading of a page is intentionally interrupted, the loading
588         status is set to the new state LoadStoppedStatus. This reflects
589         reality more accurately because the page was not fully loaded
590         (a LoadSucceededStatus), and it wasn't an unexpected error
591         (a LoadFailedStatus).
592
593         * UIProcess/API/qt/qquickwebview.cpp:
594         (QQuickWebViewPrivate::loadDidStop):
595         * UIProcess/API/qt/qquickwebview_p.h:
596         * UIProcess/API/qt/qquickwebview_p_p.h:
597         (QQuickWebViewPrivate):
598         * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
599         * UIProcess/API/qt/tests/qmltests/WebView/tst_loadUrl.qml:
600         * UIProcess/API/qt/tests/qmltests/common/TestWebView.qml:
601         * UIProcess/qt/QtWebPageLoadClient.cpp:
602         (WebKit::QtWebPageLoadClient::dispatchLoadStopped):
603         (WebKit):
604         (WebKit::QtWebPageLoadClient::dispatchLoadFailed):
605         * UIProcess/qt/QtWebPageLoadClient.h:
606         (QtWebPageLoadClient):
607
608 2012-09-11  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
609
610         [Qt] Add a configure step to the Qt build system
611
612         This allows building the Qt port using just 'qmake WebKit.pro'. Using
613         the build-webkit script is still supported, and will add slightly more
614         logic to the build, such as detecting the need for clean or incremental
615         builds.
616
617         Internally, the build system now uses a new variable, WEBKIT_CONFIG, for
618         all things related to configuring the build, such as use/have/enable flags,
619         and these are translated to defines in default_post. Project files should
620         no longer check contains(DEFINES,...) to detect features, but use the new
621         enable?(), use?(), and have?() functions. The no_webkit1 and no_webkit2
622         options have been translated into WEBKIT_CONFIG options as well, and can
623         be checked using build?().
624
625         Reviewed by Simon Hausmann.
626
627         * Target.pri:
628         * UIProcess/API/qt/tests/tests.pri:
629         * WebKit2.pri:
630         * config.h:
631
632 2012-09-11  Christophe Dumez  <christophe.dumez@intel.com>
633
634         [WK2][WKTR] TestRunner needs to implement clearApplicationCacheForOrigin
635         https://bugs.webkit.org/show_bug.cgi?id=96372
636
637         Reviewed by Kenneth Rohde Christiansen.
638
639         Add Bundle C API to clear the application cache for a
640         given origin. This is needed by WebKitTestRunner to
641         implement clearApplicationCacheForOrigin().
642
643         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
644         (WKBundleClearApplicationCacheForOrigin):
645         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
646         * WebProcess/InjectedBundle/InjectedBundle.cpp:
647         (WebKit::InjectedBundle::clearApplicationCacheForOrigin):
648         (WebKit):
649         * WebProcess/InjectedBundle/InjectedBundle.h:
650         (InjectedBundle):
651
652 2012-09-11  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
653
654         [WK2][WTR] WebKitTestRunner needs layoutTestController.setMinimumTimerInterval
655         https://bugs.webkit.org/show_bug.cgi?id=96256
656
657         Reviewed by Kenneth Rohde Christiansen.
658
659         Added new setter for minimum DOM timer interval to InjectedBundle private API.
660
661         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
662         (WKBundleSetMinimumTimerInterval):
663         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
664         * WebProcess/InjectedBundle/InjectedBundle.cpp:
665         (WebKit::InjectedBundle::setMinimumTimerInterval):
666         (WebKit):
667         * WebProcess/InjectedBundle/InjectedBundle.h:
668         (InjectedBundle):
669
670 2012-09-11  Kangil Han  <kangil.han@samsung.com>
671
672         [WK2][EFL] Fix compile warnings when enable tiled backing store
673         https://bugs.webkit.org/show_bug.cgi?id=95342
674
675         Reviewed by Gyuyoung Kim.
676
677         Fixed compile time warning messages when enable tiled backing store.
678
679         * UIProcess/API/efl/ewk_view.cpp:
680         (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.
681         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
682         (WebCore::CoordinatedGraphicsLayer::setChildren): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.
683         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
684         (WebKit::LayerTreeCoordinator::renderNextFrame): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.
685         (WebKit::LayerTreeCoordinator::beginContentUpdate): Replaced 'int' i with 'unsigned' because its comparing value is 'size_t'.
686
687 2012-09-11  Byungwoo Lee  <bw80.lee@samsung.com>
688
689         [EFL][WK2] WKEinaSharedString needs a function to adopt eina stringshare.
690         https://bugs.webkit.org/show_bug.cgi?id=96201
691
692         Reviewed by Kenneth Rohde Christiansen.
693
694         WKEinaSharedString needs a to adopt eina stringshare directly.
695
696         With this adopt function, an instance that is directly created with
697         eina_stringshare_add() can be easily handled by WKEinaSharedString
698         without calling eina_stringshare_del() for preventing memory leak.
699
700         * UIProcess/API/cpp/efl/WKEinaSharedString.cpp:
701         (WKEinaSharedString::adopt):
702         * UIProcess/API/cpp/efl/WKEinaSharedString.h:
703         * UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:
704         (TEST_F):
705
706 2012-09-11  Andras Becsi  <andras.becsi@nokia.com>
707
708         [Qt][WK2] Fix the build with recent Qt5
709         https://bugs.webkit.org/show_bug.cgi?id=96283
710
711         Reviewed by Simon Hausmann.
712
713         We should not use deprecated Qt API because doing that results
714         in build failure since all the deprecated API was disabled
715         in qtbase (https://codereview.qt-project.org/#change,24890).
716
717         * UIProcess/API/qt/qwebnavigationhistory.cpp:
718         (QWebNavigationListModel::roleNames):
719         (QWebNavigationListModel::reset):
720         * UIProcess/API/qt/qwebnavigationhistory_p.h:
721         * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
722         (WebView::load):
723         * UIProcess/qt/WebPopupMenuProxyQt.cpp:
724         (PopupMenuItemModel):
725         (WebKit::PopupMenuItemModel::PopupMenuItemModel):
726         (WebKit::PopupMenuItemModel::roleNames):
727         (WebKit):
728
729 2012-09-11  Christophe Dumez  <christophe.dumez@intel.com>
730
731         WTR needs an implementation of applicationCacheDiskUsageForOrigin
732         https://bugs.webkit.org/show_bug.cgi?id=87188
733
734         Reviewed by Kenneth Rohde Christiansen.
735
736         Add Bundle private C API to retrieve the application cache
737         usage for a specific security origin. This is needed by
738         WebKitTestRunner.
739
740         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
741         (WKBundleGetAppCacheUsageForOrigin):
742         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
743         * WebProcess/InjectedBundle/InjectedBundle.cpp:
744         (WebKit::InjectedBundle::appCacheUsageForOrigin):
745         (WebKit):
746         * WebProcess/InjectedBundle/InjectedBundle.h:
747         (InjectedBundle):
748
749 2012-09-11  Zhigang Gong  <zhigang.gong@linux.intel.com>
750
751         [EFL][WK2] Add necessary include directory in WebKit2
752         https://bugs.webkit.org/show_bug.cgi?id=95173
753
754         Unreviewed build fix.
755
756         revision r126694: Move TextureMapperGL to use
757         GraphicsContext3D. modify the TextureMapperGL.h to include
758         GraphicsContext3D.h. And when enable TEXTURE_MAPPER,
759         file WebKit2/Shared/ShareableSurface.cpp will include
760         TextureMapperGL.h then depends on GraphicsContext3D.h
761         thus it need to add ANGLE director. As currently, this
762         problem only affect EFL platform, according to Gyuyoung Kim's
763         suggestion, we add this include dir into EFL private file
764         PlatformEfl.cmake. Otherwise, the build will fail.
765
766         To trigger this problem by using the following command:
767         ./Tools/Scripts/build-webkit --efl --3d-rendering --tiled-backing-store
768
769         * CMakeLists.txt:
770
771 2012-09-10  Byungwoo Lee  <bw80.lee@samsung.com>
772
773         [EFL][WK2] Build warning : fix warning about extended initializer lists on EWK2UnitTestBase.cpp.
774         https://bugs.webkit.org/show_bug.cgi?id=95990
775
776         Reviewed by Gyuyoung Kim.
777
778         Fix build warning about extended initializer lists only available with
779         -std=c++0x or -std=gnu++0x.
780
781         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
782         (EWK2UnitTest::ewk2UnitTestBrowserViewSmartClass):
783         (EWK2UnitTest):
784         (EWK2UnitTest::EWK2UnitTestBase::EWK2UnitTestBase):
785
786 2012-09-10  Beth Dakin  <bdakin@apple.com>
787
788         https://bugs.webkit.org/show_bug.cgi?id=96158
789         Need API to suppress scrollbar animations
790         -and corresponding-
791         <rdar://problem/12210972>
792
793         Reviewed by Sam Weinig.
794
795         Add suppressScrollbarAnimations as a WebCreationParameter.
796         * Shared/WebPageCreationParameters.h:
797         (WebPageCreationParameters):
798
799         New API. Calls into the web process for the setter but not the 
800         getter.
801         * UIProcess/API/C/WKPage.cpp:
802         (WKPageSetSuppressScrollbarAnimations):
803         (WKPageAreScrollbarAnimationsSuppressed):
804         * UIProcess/API/C/WKPage.h:
805         * UIProcess/WebPageProxy.cpp:
806         (WebKit::WebPageProxy::WebPageProxy):
807         (WebKit::WebPageProxy::setSuppressScrollbarAnimations):
808         (WebKit):
809         (WebKit::WebPageProxy::creationParameters):
810         * UIProcess/WebPageProxy.h:
811         (WebPageProxy):
812         (WebKit::WebPageProxy::areScrollbarAnimationsSuppressed):
813         * WebProcess/WebPage/WebPage.messages.in:
814
815         Call into WebCore.
816         * WebProcess/WebPage/WebPage.cpp:
817         (WebKit::WebPage::setSuppressScrollbarAnimations):
818         (WebKit):
819         * WebProcess/WebPage/WebPage.h:
820         (WebPage):
821
822         This ScrollableArea area function is re-named by this patch in 
823         WebCore.
824         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
825         * WebProcess/Plugins/PDF/BuiltInPDFView.mm:
826         (WebKit::BuiltInPDFView::scrollbarsCanBeActive):
827
828 2012-09-10  James Robinson  <jamesr@chromium.org>
829
830         Unreviewed, rolling out r127837.
831         http://trac.webkit.org/changeset/127837
832         https://bugs.webkit.org/show_bug.cgi?id=93898
833
834         Broke ScrollingCoordinator on chromium
835
836         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
837         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
838
839 2012-09-10  Jer Noble  <jer.noble@apple.com>
840
841         Unreviewed; rolling out r128081.
842         http://trac.webkit.org/changeset/128081
843         https://bugs.webkit.org/show_bug.cgi?id=96134
844
845         New test http/tests/media/video-donottrack.html fails to run on Apple test bots.
846
847         * Shared/APIClientTraits.h:
848         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
849         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
850         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
851         (InjectedBundlePageLoaderClient):
852         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
853         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
854         (WebFrameLoaderClient):
855         * WebProcess/qt/QtBuiltinBundlePage.cpp:
856         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
857
858 2012-09-07  Jon Lee  <jonlee@apple.com>
859
860         Update notifications to latest spec
861         https://bugs.webkit.org/show_bug.cgi?id=91726
862         <rdar://problem/11910451>
863
864         Reviewed by Alexey Proskuryakov.
865
866         Expose lang and dir.
867
868         * UIProcess/API/C/WKNotification.cpp:
869         (WKNotificationCopyLang):
870         (WKNotificationCopyDir):
871         * UIProcess/API/C/WKNotification.h:
872         * UIProcess/Notifications/WebNotification.cpp:
873         (WebKit::WebNotification::WebNotification):
874         * UIProcess/Notifications/WebNotification.h:
875         (WebKit::WebNotification::create):
876         (WebKit::WebNotification::lang):
877         (WebKit::WebNotification::dir):
878         (WebNotification):
879         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
880         (WebKit::WebNotificationManagerProxy::show):
881         * UIProcess/Notifications/WebNotificationManagerProxy.h:
882         (WebNotificationManagerProxy):
883         * UIProcess/WebPageProxy.cpp:
884         (WebKit::WebPageProxy::showNotification):
885         * UIProcess/WebPageProxy.h:
886         (WebPageProxy):
887         * UIProcess/WebPageProxy.messages.in:
888         * WebProcess/Notifications/WebNotificationManager.cpp:
889         (WebKit::WebNotificationManager::show):
890
891 2012-09-10  Alexey Proskuryakov  <ap@apple.com>
892
893         Build fix.
894
895         * UIProcess/WebContext.h: Added a default value for relatedPage argment - if
896         you don't have one, null is fine.
897
898 2012-09-10  Alexey Proskuryakov  <ap@apple.com>
899
900         [WK2] Add an API to open a page in same process
901         https://bugs.webkit.org/show_bug.cgi?id=96306
902
903         Reviewed by Anders Carlsson.
904
905         The name "related" inspired by <http://wiki.whatwg.org/wiki/Links_to_Unrelated_Browsing_Contexts>.
906
907         * UIProcess/API/mac/WKView.h: Added an API. It's unwieldy, but I blame
908         WKBrowsingContextGroup, not the related view.
909
910         * UIProcess/API/mac/WKViewPrivate.h: Matching SPI for clients that mostly use
911         C APIs.
912
913         * UIProcess/API/mac/WKView.mm:
914         (-[WKView initWithFrame:processGroup:browsingContextGroup:]): Use new back-end
915         signature.
916         (-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
917         Get page from WKView, and call back-end.
918         (-[WKView initWithFrame:contextRef:pageGroupRef:]): Reimplement existing method
919         by calling new, more powerful one.
920         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Just one change,
921         pass relatedPage to the context.
922
923         * UIProcess/WebContext.cpp: (WebKit::WebContext::createWebPage): If related page
924         is not null, use its process.
925
926         * UIProcess/WebContext.h: (WebContext): Updated createWebPage signature.
927
928 2012-09-10  Brady Eidson  <beidson@apple.com>
929
930         Javascript in foreground tabs should not wait synchronously for plug-ins to load
931         <rdar://problem/12067415> and https://bugs.webkit.org/show_bug.cgi?id=96167
932
933         Reviewed by Geoff Garen.
934
935         Synchronously waiting for initialization to complete when javascript accesses the plug-in script object severely
936         reduces the effectiveness of having an asynchronous NPP_New.
937
938         Such as with background tabs that have never been viewed, we already have cases where JS calls into the plug-in 
939         element fail because we haven't bothered to initialize the plug-in.
940
941         We get a huge win by expanding that to foreground tabs that simply haven't finished initializing their plug-ins.
942
943         * WebProcess/Plugins/PluginView.cpp:
944         (WebKit::PluginView::scriptObject): If initialization is not complete just return 0 - They can get at the script object later.
945
946         Remove the notion of "wait for asynchronous initialization" altogether:
947         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
948         (NetscapePlugin):
949         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
950         (BuiltInPDFView):
951         * WebProcess/Plugins/Plugin.h:
952         (Plugin):
953         * WebProcess/Plugins/PluginProxy.cpp:
954         * WebProcess/Plugins/PluginProxy.h:
955         (PluginProxy):
956
957 2012-09-07  Jer Noble  <jer.noble@apple.com>
958
959         <audio> and <video> should send Do Not Track when appropriate
960         https://bugs.webkit.org/show_bug.cgi?id=96134
961
962         Reviewed by Eric Carlson.
963
964         Add support for the shouldSendDoNotTrackHTTPHeader by passing the request
965         on to the WebFrameLoadDelegate.
966
967         * Shared/APIClientTraits.cpp: Increment the interfaceSizes for 
968             WKBundlePageLoaderClient by the value of the new functions.
969         * Shared/APIClientTraits.h: Ditto.
970         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add a new API to 
971             WKBundlePageLoaderClient and bump the version number.
972         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
973         (WebKit::InjectedBundlePageLoaderClient::shouldSendDoNotTrackHTTPHeader):
974             Pass the question on to the client.
975         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
976         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
977         (WebKit::WebFrameLoaderClient::shouldSendDoNotTrackHTTPHeader):
978             Pass the question on to the bundle.
979         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
980         * WebProcess/qt/QtBuiltinBundlePage.cpp:
981         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
982             Add an entry for the new function in the Qt loader client.
983
984 2012-09-10  Carlos Garcia Campos  <cgarcia@igalia.com>
985
986         [SOUP] Don't convert to UTF-8 the suggestedFilename passed to Download::decideDestinationWithSuggestedFilename()
987         https://bugs.webkit.org/show_bug.cgi?id=96261
988
989         Reviewed by Martin Robinson.
990
991         * WebProcess/Downloads/soup/DownloadSoup.cpp:
992         (WebKit::DownloadClient::didReceiveResponse):
993
994 2012-09-10  Alexander Shalamov  <alexander.shalamov@intel.com>
995
996         [EFL][WK2] Add fullscreen enter / exit signals to the ewk_view API
997         https://bugs.webkit.org/show_bug.cgi?id=92362
998
999         Reviewed by Gyuyoung Kim.
1000
1001         Handle WebFullScreenManagerProxy::enterFullScreen and exitFullScreen
1002         methods, so that ewk_view could enter and exit fullscreen mode when requested.
1003         Also, two callbacks were added to ewk_view API, so that UI could customise
1004         behavior when fullscreen mode is requested, e.g. show security dialog.
1005
1006         * UIProcess/API/efl/ewk_settings.cpp:
1007         (ewk_settings_fullscreen_enabled_set):
1008         (ewk_settings_fullscreen_enabled_get):
1009         * UIProcess/API/efl/ewk_settings.h:
1010         * UIProcess/API/efl/ewk_view.cpp:
1011         (_ewk_view_initialize):
1012         (ewk_view_full_screen_enter):
1013         (ewk_view_full_screen_exit):
1014         * UIProcess/API/efl/ewk_view.h:
1015         * UIProcess/API/efl/ewk_view_private.h:
1016         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
1017         (TEST_F):
1018         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1019         (fullScreenCallback):
1020         (checkFullScreenProperty):
1021         (TEST_F):
1022         * UIProcess/efl/WebFullScreenManagerProxyEfl.cpp:
1023         (WebKit::WebFullScreenManagerProxy::enterFullScreen):
1024         (WebKit::WebFullScreenManagerProxy::exitFullScreen):
1025
1026 2012-09-10  Kevin Funk  <kevin.funk@kdab.com>
1027
1028         [Qt] Fix deprecation failures if QT_NO_DEPRECATED enabled
1029         https://bugs.webkit.org/show_bug.cgi?id=96258
1030
1031         Reviewed by Simon Hausmann.
1032
1033         Sync with latest changes in Qt5.
1034
1035         * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp:
1036         * WebProcess/qt/WebProcessQt.cpp:
1037
1038 2012-09-10  Carlos Garcia Campos  <cgarcia@igalia.com>
1039
1040         [GTK] Sanitize the suggested filename when building the download destination URI
1041         https://bugs.webkit.org/show_bug.cgi?id=96260
1042
1043         Reviewed by Gustavo Noronha Silva.
1044
1045         The suggested filename returned by the server can contain
1046         directory separators so that the filename would be interpreted as
1047         a full path.
1048
1049         * UIProcess/API/gtk/WebKitDownload.cpp:
1050         (webkitDownloadDecideDestination): Convert any directory separator
1051         contained in the suggested filename to an underscore.
1052
1053 2012-09-10  Simon Hausmann  <simon.hausmann@nokia.com>
1054
1055         [Qt] Fix generation of forward headers for generated files in WebCore on Windows
1056         https://bugs.webkit.org/show_bug.cgi?id=96245
1057
1058         Reviewed by Tor Arne Vestbø.
1059
1060         We generate the forwarding header files of generated WebCore sources by using
1061         mkdir to ensure the target directory exists, followed by
1062         echo #include "..." > file.h. On Windows mkdir returns with an error if the
1063         target directory exists. For us that is not an error, so work around it with
1064         (mkdir path 2>nul || echo>nul)
1065
1066         * DerivedSources.pri:
1067
1068 2012-09-10  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
1069
1070         [Qt][WK2] REGRESSION(r127861): It made one test fail and one test crash
1071         https://bugs.webkit.org/show_bug.cgi?id=96243
1072
1073         Reviewed by Kenneth Rohde Christiansen.
1074
1075         Skip the code if QClipboard is not available, and give WebCore a chance to handle the event first.
1076
1077         * WebProcess/WebPage/WebPage.cpp:
1078         (WebKit::handleMouseEvent):
1079         * WebProcess/WebPage/qt/WebPageQt.cpp:
1080         (WebKit::WebPage::handleMouseReleaseEvent):
1081
1082 2012-09-10  Simon Hausmann  <simon.hausmann@nokia.com>
1083
1084         [Qt] WK2 build fixes for MSVC
1085         https://bugs.webkit.org/show_bug.cgi?id=96248
1086
1087         Reviewed by Tor Arne Vestbø.
1088
1089         MSVC is picky when it comes to the use of forward declaration and the use of
1090         such forward declared types in templates. In these instances inline functions were
1091         passed parameters in RefPtrs that were only forward declared, but at compile time
1092         MSVC wants to know what type it is in order to completely instantiate RefPtr (which
1093         needs to call the type destructor for example). Therefore this patch resolves a couple
1094         of forward declarations with direct header file inclusions.
1095
1096         * UIProcess/API/qt/raw/qrawwebview_p_p.h:
1097         * UIProcess/InspectorServer/WebSocketServerClient.h:
1098         * UIProcess/qt/QtPageClient.h:
1099
1100 2012-09-10  Andras Becsi  <andras.becsi@nokia.com>
1101
1102         [Qt][WK2] QWebKitTest should retrieve the viewport state from the PageViewportController
1103         https://bugs.webkit.org/show_bug.cgi?id=96106
1104
1105         Reviewed by Simon Hausmann.
1106
1107         The functions in PageViewportControllerClientQt proxying the
1108         viewport state values can be removed if QWebKitTest uses the
1109         PageViewportController to retrieve these values.
1110
1111         * UIProcess/API/qt/qquickwebview_p_p.h:
1112         (QQuickWebViewPrivate::viewportController):
1113         * UIProcess/API/qt/qwebkittest.cpp:
1114         (QWebKitTest::viewport):
1115         (QWebKitTest::devicePixelRatio):
1116         (QWebKitTest::contentsScale):
1117         * UIProcess/PageViewportController.h:
1118         (WebKit::PageViewportController::currentContentsScale):
1119         * UIProcess/qt/PageViewportControllerClientQt.cpp:
1120         * UIProcess/qt/PageViewportControllerClientQt.h:
1121         (PageViewportControllerClientQt):
1122
1123 2012-09-10  Simon Hausmann  <simon.hausmann@nokia.com>
1124
1125         [WK2] Make WK2 C API headers compile in the Qt build on Windows
1126         https://bugs.webkit.org/show_bug.cgi?id=96246
1127
1128         Reviewed by Kenneth Rohde Christiansen.
1129
1130         WKBase.h and WKAPICast.h include files that are specific to the Safari/Windows
1131         port if WIN32 or _WIN32 is defined. When building WebKit2 on Windows with Qt, we
1132         do not want to include these files, as they define an API that is different to ours
1133         (the view aspect differs). Therefore guard the inclusion with !defined(BUILDING_QT__)
1134
1135         * Shared/API/c/WKBase.h:
1136         * UIProcess/API/C/WKAPICast.h:
1137
1138 2012-09-10  Kevin Funk  <kevin.funk@kdab.com>
1139
1140         Replace calls to QString::fromAscii which is deprecated in Qt5
1141         https://bugs.webkit.org/show_bug.cgi?id=96242
1142
1143         Reviewed by Simon Hausmann.
1144
1145         Replace with QString::fromLatin1 which does the same.
1146
1147         * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
1148
1149 2012-09-10  Christophe Dumez  <christophe.dumez@intel.com>
1150
1151         [WK2] New fast/forms/number/number-interactive-validation-required.html fails
1152         https://bugs.webkit.org/show_bug.cgi?id=95936
1153
1154         Reviewed by Kenneth Rohde Christiansen.
1155
1156         Add WKPreference private API for manipulate the interactive form
1157         validation setting. This is now needed by WebKitTestRunner.
1158
1159         * Shared/WebPreferencesStore.h:
1160         (WebKit):
1161         * UIProcess/API/C/WKPreferences.cpp:
1162         (WKPreferencesSetInteractiveFormValidationEnabled):
1163         (WKPreferencesGetInteractiveFormValidationEnabled):
1164         * UIProcess/API/C/WKPreferencesPrivate.h:
1165         * WebProcess/WebPage/WebPage.cpp:
1166         (WebKit::WebPage::updatePreferences):
1167
1168 2012-09-09  Sam Weinig  <sam@webkit.org>
1169
1170         Simplify WebKit2 XPC service backend now that I know it doesn't need to soft link WebKit2.framework
1171         https://bugs.webkit.org/show_bug.cgi?id=96228
1172
1173         Reviewed by Dan Bernstein.
1174
1175         We soft link the non-XPC service WebProcess backend to the WebKit2 framework to
1176         ensure that we can close all the necessary file descriptors at launch, without
1177         fear that we will be closing one we open while initializing WebKit2 or one of its
1178         dependencies. Since we don't need to close file descriptors in the XPC service 
1179         backend, we don't need to soft link! While here, also do some cleanup and code
1180         sharing.
1181
1182         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1183         (WebKit::launchXPCService):
1184         We don't need to send the framework executable path anymore (it was used for the
1185         soft linking), but we do need the client identifier.
1186         
1187         * WebKit2.xcodeproj/project.pbxproj:
1188         Add new files. Link the XPC service to WebKit2.framework.
1189
1190         * WebKit2Service/MainMacService.mm:
1191         Now that we don't have to soft link, just make this a stub that calls immediately
1192         into the WebKit2 framework.
1193         
1194         * WebProcess/mac/WebProcessInitialization.h: Added.
1195         * WebProcess/mac/WebProcessInitialization.mm: Added.
1196         (WebKit::InitializeWebProcess):
1197         Move initialization that is common between the XPC and non-XPC backends here.
1198
1199         * WebProcess/mac/WebProcessMainMac.mm:
1200         (WebKit::WebProcessMain):
1201         Remove XPC backend related code. Use new shared InitializeWebProcess function.
1202
1203         * WebProcess/mac/WebProcessXPCServiceMain.h: Added.
1204         * WebProcess/mac/WebProcessXPCServiceMain.mm: Added.
1205         (WebKit::WebKit2ServiceEventHandler):
1206         (WebProcessXPCServiceMain):
1207         Move XPC service backend initialization here.
1208
1209 2012-09-09  Emil A Eklund  <eae@chromium.org>
1210
1211         Rename Node::getRect/getPixelSnappedRect and remove ContainerNode::getRect
1212         https://bugs.webkit.org/show_bug.cgi?id=81413
1213
1214         Reviewed by David Hyatt.
1215
1216         Update WebPage to call pixelSnappedBoundingBox.
1217
1218         * WebProcess/WebPage/WebPage.cpp:
1219         (WebKit::WebPage::editorState):
1220
1221 2012-09-08  Sam Weinig  <sam@webkit.org>
1222
1223         Switch to entering the sandbox directly from main(), rather than waiting for the initialization message
1224         https://bugs.webkit.org/show_bug.cgi?id=96194
1225
1226         Reviewed by Dan Bernstein.
1227
1228         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1229         (WebKit::ProcessLauncher::launchProcess):
1230         Pass a client identifier to WebProcess as a command line argument
1231         so that it can be used to create private temporary and cache directories.
1232
1233         * WebProcess/WebProcess.h:
1234         (WebProcess):
1235         * WebProcess/mac/WebProcessMac.mm:
1236         (WebKit::WebProcess::initializeSandbox):
1237         (WebKit::WebProcess::platformInitializeWebProcess):
1238         Expose the initializeSandbox() function and stop calling it from platformInitializeWebProcess()
1239         since it is now going to be called from WebProcessMain.  Also, move changing the current working
1240         directory to sandbox initialization function and replace use of creation parameters with just
1241         the client identifier.
1242
1243         * WebProcess/com.apple.WebProcess.sb.in:
1244         Add some new exceptions that come from entering the sandbox earlier in the AppKit
1245         initialization process. Don't allow access to com.apple.coreservices.appleevents.
1246
1247         * WebProcess/mac/WebProcessMainMac.mm:
1248         (WebKit::WebProcessMainXPC):
1249         (WebKit::WebProcessMain):
1250         Enter the sandbox explicitly, not waiting until the initialization message.  Also,
1251         since we now have an extra parameter for the client identifier, make the WebProcess
1252         launches the UIProcess code path work by extracting a client identifier from the 
1253         client executable path.
1254
1255 2012-09-09  Patrick Gansterer  <paroga@webkit.org>
1256
1257         Make the String initialization on the function side of String::number()
1258         https://bugs.webkit.org/show_bug.cgi?id=95940
1259
1260         Reviewed by Benjamin Poulain.
1261
1262         * win/WebKit2.def:
1263         * win/WebKit2CFLite.def:
1264
1265 2012-09-09  Pierre Rossi  <pierre.rossi@gmail.com>
1266
1267         [WK2] expose element rect for color input type
1268         https://bugs.webkit.org/show_bug.cgi?id=91664
1269
1270         Reviewed by Simon Hausmann.
1271
1272         In the same way we do for select elements already. This allows placing the picker
1273         in a sensible location.
1274
1275         * UIProcess/API/efl/PageClientImpl.cpp: Update the function's signature.
1276         (WebKit::PageClientImpl::createColorChooserProxy): Ditto.
1277         * UIProcess/API/efl/PageClientImpl.h: Ditto.
1278         (PageClientImpl):
1279         * UIProcess/API/gtk/PageClientImpl.cpp:
1280         (WebKit::PageClientImpl::createColorChooserProxy): Ditto.
1281         * UIProcess/API/gtk/PageClientImpl.h: Ditto.
1282         (PageClientImpl):
1283         * UIProcess/API/mac/PageClientImpl.h: Ditto.
1284         (PageClientImpl):
1285         * UIProcess/API/mac/PageClientImpl.mm:
1286         (WebKit::PageClientImpl::createColorChooserProxy): Ditto.
1287         * UIProcess/API/qt/raw/qrawwebview.cpp:
1288         (QRawWebViewPrivate::createColorChooserProxy): Ditto.
1289         * UIProcess/API/qt/raw/qrawwebview_p_p.h: Ditto.
1290         (QRawWebViewPrivate):
1291         * UIProcess/PageClient.h: Ditto.
1292         (PageClient):
1293         * UIProcess/WebPageProxy.cpp:
1294         (WebKit::WebPageProxy::showColorChooser): Compute the rect mapped to the current view's transform.
1295         * UIProcess/WebPageProxy.h:
1296         (WebPageProxy):
1297         * UIProcess/WebPageProxy.messages.in:
1298         * UIProcess/qt/QtPageClient.cpp:
1299         (WebKit::QtPageClient::createColorChooserProxy):
1300         * UIProcess/qt/QtPageClient.h:
1301         (QtPageClient):
1302         * UIProcess/qt/WebColorChooserProxyQt.cpp:
1303         (ColorChooserContextObject):
1304         (WebKit::ColorChooserContextObject::ColorChooserContextObject):
1305         (WebKit::ColorChooserContextObject::elementRect):
1306         (WebKit::ColorChooserContextObject::accept):
1307         (WebKit::WebColorChooserProxyQt::WebColorChooserProxyQt):
1308         * UIProcess/qt/WebColorChooserProxyQt.h:
1309         (WebKit::WebColorChooserProxyQt::create):
1310         (WebColorChooserProxyQt):
1311         * UIProcess/win/WebView.cpp:
1312         (WebKit::WebView::createColorChooserProxy): Update the function's signature.
1313         * UIProcess/win/WebView.h:
1314         (WebView): Ditto.
1315         * WebProcess/WebCoreSupport/WebColorChooser.cpp:
1316         (WebKit::WebColorChooser::WebColorChooser):
1317
1318 2012-09-09  Simon Hausmann  <simon.hausmann@nokia.com>
1319
1320         [Qt] Add missing files to the WebKit2 build on Windows
1321         https://bugs.webkit.org/show_bug.cgi?id=96177
1322
1323         Reviewed by Kenneth Rohde Christiansen.
1324
1325         For the build on Windows we can re-use existing functionality from the Safari/Windows
1326         build, such as the IPC implementation.
1327
1328         * Target.pri:
1329
1330 2012-09-09  Simon Hausmann  <simon.hausmann@nokia.com>
1331
1332         [WK2] Fix PLATFORM(WIN) vs. OS(WINDOWS) in various files
1333         https://bugs.webkit.org/show_bug.cgi?id=96178
1334
1335         Reviewed by Kenneth Rohde Christiansen.
1336
1337         PLATFORM(WIN) is used in various places, where it is safe to use OS(WINDOWS) to allow
1338         the re-use of that code path in ports beyond Safari/Windows.
1339
1340         * Platform/CoreIPC/BinarySemaphore.h:
1341         (BinarySemaphore):
1342         * Platform/CoreIPC/Connection.h:
1343         (Connection):
1344         * Platform/SharedMemory.h:
1345         (Handle):
1346         (SharedMemory):
1347         * Platform/WorkQueue.h:
1348
1349 2012-09-08  Jinwoo Song  <jinwoo7.song@samsung.com>
1350
1351         [EFL][WK2] Minibrowser crashes on right mouse click
1352         https://bugs.webkit.org/show_bug.cgi?id=95955
1353
1354         Reviewed by Simon Hausmann.
1355
1356         Make early return if the PageClient does not create a ContextMenuProxy.
1357
1358         * UIProcess/WebPageProxy.cpp:
1359         (WebKit::WebPageProxy::internalShowContextMenu):
1360
1361 2012-09-08  Simon Hausmann  <simon.hausmann@nokia.com>
1362
1363         [Qt] Fix CoreIPC setup between ProcessLauncher and WebProcessMain on Windows
1364         https://bugs.webkit.org/show_bug.cgi?id=96179
1365
1366         Reviewed by Kenneth Rohde Christiansen.
1367
1368         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
1369         (WebKit::ProcessLauncher::launchProcess): Hide Unixy platform specific code
1370         and includes behind appropriate platform #ifdefs and use
1371         CoreIPC::Connection::createServerAndClientIdentifiers to set up the IPC pipes.
1372         We also need to tell Windows about our intent of using the client handle in
1373         the child web process.
1374         * WebProcess/qt/WebProcessMainQt.cpp:
1375         (WebKit::WebProcessMainQt): After retrieving the IPC identifier we call
1376         WebKit::WebProcess::shared().initialize with it. That function actually
1377         cares a CIPC::Connection::Identifier as argument, which happens to be an
1378         int on Unix, but it's actually a HANDLE on Windows. Change the parameter
1379         type according to and a reinterpret_cast from the converted unsigned integer,
1380         similar to WebProcessMainWin.cpp.
1381
1382 2012-09-08  Christophe Dumez  <christophe.dumez@intel.com>
1383
1384         [WK2] New fast/events/tab-focus-link-in-canvas fails from r126908
1385         https://bugs.webkit.org/show_bug.cgi?id=95329
1386
1387         Reviewed by Kenneth Rohde Christiansen.
1388
1389         Add implementation for overriding the WebKitTabToLinksPreferenceKey
1390         preference as well as the corresponding WKPreferences API that
1391         is needed by WebKitTestRunner.
1392
1393         * Shared/WebPreferencesStore.h:
1394         (WebKit):
1395         * UIProcess/API/C/WKPreferences.cpp:
1396         (WKPreferencesSetTabToLinksEnabled):
1397         (WKPreferencesGetTabToLinksEnabled):
1398         * UIProcess/API/C/WKPreferencesPrivate.h:
1399         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1400         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
1401         * WebProcess/WebPage/WebPage.h:
1402         (WebKit::WebPage::setTabToLinksEnabled):
1403         (WebKit::WebPage::tabToLinksEnabled):
1404
1405 2012-09-07  Benjamin Poulain  <bpoulain@apple.com>
1406
1407         Rename the ustring() accessor to string()
1408         https://bugs.webkit.org/show_bug.cgi?id=95919
1409
1410         Reviewed by Geoffrey Garen.
1411
1412         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
1413         (WebKit::NPJSObject::enumerate):
1414
1415 2012-09-06  Jeffrey Pfau  <jpfau@apple.com>
1416
1417         Extend third-party storage blocking API to optionally allow blocking all storage
1418         https://bugs.webkit.org/show_bug.cgi?id=95915
1419
1420         Reviewed by Brady Eidson.
1421
1422         Update WK2 API to use revised Settings API.
1423
1424         * Shared/WebPreferencesStore.h:
1425         (WebKit):
1426         * UIProcess/API/C/WKAPICast.h:
1427         (WebKit::toStorageBlockingPolicy):
1428         (WebKit):
1429         (WebKit::toAPI):
1430         * UIProcess/API/C/WKPreferences.cpp:
1431         (WKPreferencesSetStorageBlockingPolicy):
1432         (WKPreferencesGetStorageBlockingPolicy):
1433         * UIProcess/API/C/WKPreferences.h:
1434         * WebProcess/WebPage/WebPage.cpp:
1435         (WebKit::WebPage::updatePreferences):
1436
1437 2012-09-07  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
1438
1439         [EFL] [WK2] Set theme for the inspector view
1440         https://bugs.webkit.org/show_bug.cgi?id=96108
1441
1442         Reviewed by Kenneth Rohde Christiansen.
1443
1444         Set the theme for the inspector view when it is created.
1445
1446         * UIProcess/efl/WebInspectorProxyEfl.cpp:
1447         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1448
1449 2012-09-07  Christophe Dumez  <christophe.dumez@intel.com>
1450
1451         [EFL] Use same default minimum logical font size in DRT and WTR
1452         https://bugs.webkit.org/show_bug.cgi?id=96116
1453
1454         Reviewed by Martin Robinson.
1455
1456         Add private bundle C API to set the minimum logicial font
1457         size setting. This is needed by WebKitTestRunner.
1458
1459         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1460         (WKBundleSetMinimumLogicalFontSize):
1461         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1462         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1463         (WebKit::InjectedBundle::setMinimumLogicalFontSize):
1464         (WebKit):
1465         * WebProcess/InjectedBundle/InjectedBundle.h:
1466         (InjectedBundle):
1467
1468 2012-09-07  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
1469
1470         Simplify hitTestResultAtPoint and nodesFromRect APIs
1471         https://bugs.webkit.org/show_bug.cgi?id=95720
1472
1473         Reviewed by Antonio Gomes.
1474
1475         Update calls to new API and update exported symbols.
1476
1477         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
1478         (WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
1479         * WebProcess/WebPage/WebPage.cpp:
1480         (WebKit::handleContextMenuEvent):
1481         (WebKit::WebPage::highlightPotentialActivation): Corrects the misplaced arguments while converting them.
1482         (WebKit::WebPage::findZoomableAreaForPoint):
1483         * WebProcess/WebPage/mac/WebPageMac.mm:
1484         (WebKit::WebPage::characterIndexForPoint):
1485         (WebKit::WebPage::performDictionaryLookupAtLocation):
1486         (WebKit::WebPage::shouldDelayWindowOrderingEvent):
1487         (WebKit::WebPage::acceptsFirstMouse):
1488         * win/WebKit2.def:
1489         * win/WebKit2CFLite.def:
1490
1491 2012-09-07  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
1492
1493         X11 Global Selection
1494         https://bugs.webkit.org/show_bug.cgi?id=88238
1495
1496         Reviewed by Tony Chang.
1497
1498         Implements the hooks for supporting global selections in Qt WebKit2.
1499
1500         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1501         (WebKit::WebEditorClient::respondToChangedSelection):
1502         (WebKit::WebEditorClient::updateGlobalSelection):
1503         (WebKit::WebEditorClient::supportsGlobalSelection):
1504         * WebProcess/WebCoreSupport/WebEditorClient.h:
1505         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
1506         (WebKit::WebEditorClient::updateGlobalSelection):
1507         * WebProcess/WebPage/WebPage.cpp:
1508         (WebKit::handleMouseEvent):
1509         * WebProcess/WebPage/WebPage.h:
1510         (WebPage):
1511         * WebProcess/WebPage/qt/WebPageQt.cpp:
1512         (WebKit::WebPage::handleMouseReleaseEvent):
1513
1514 2012-09-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1515
1516         [WK2] APIClientTraits<WKPageLoaderClient> and APIClientTraits<WKBundlePageLoaderClient> are not initialized properly
1517         https://bugs.webkit.org/show_bug.cgi?id=96079
1518
1519         Reviewed by Kenneth Rohde Christiansen.
1520
1521         APIClientTraits<WKPageLoaderClient> was missing offset for version number 2 and
1522         APIClientTraits<WKBundlePageLoaderClient> was missing offset for version number 3.
1523
1524         * Shared/APIClientTraits.cpp:
1525         (WebKit):
1526
1527 2012-09-07  Eunmi Lee  <eunmi15.lee@samsung.com>
1528
1529         [EFL][WK2] Add APIs to enable or disable the mouse events of the ewk_view.
1530         https://bugs.webkit.org/show_bug.cgi?id=88631
1531
1532         Reviewed by Gyuyoung Kim.
1533
1534         We can turn on/off the mouse events of the ewk_view using the mouse
1535         events enabling API. This API can be used when we want to turn off the
1536         mouse events on the touchscreen device to process the touch events
1537         instead of the mouse events.
1538
1539         * UIProcess/API/efl/ewk_view.cpp:
1540         (_Ewk_View_Private_Data):
1541         (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
1542         (_ewk_view_smart_add):
1543         (ewk_view_mouse_events_enabled_set):
1544         (ewk_view_mouse_events_enabled_get):
1545         * UIProcess/API/efl/ewk_view.h:
1546         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1547         (TEST_F):
1548
1549 2012-09-07  Tim Horton  <timothy_horton@apple.com>
1550
1551         Add optional debug logging when we fall into/out of threaded scrolling
1552         https://bugs.webkit.org/show_bug.cgi?id=93898
1553         <rdar://problem/12089098>
1554
1555         Reviewed by Simon Fraser.
1556
1557         Update the scrolling tree's scrollingPerformanceLoggingEnabled preference
1558         before the early-return if we don't have layer debugging borders on.
1559
1560         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1561         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
1562
1563 2012-09-06  Jinwoo Song  <jinwoo7.song@samsung.com>
1564
1565         Deploy StringBuilder in more places in WebKit2
1566         https://bugs.webkit.org/show_bug.cgi?id=95924
1567
1568         Reviewed by Benjamin Poulain.
1569
1570         Deploy StringBuilder to concatenate strings more efficiently.
1571
1572         * Shared/WebMemorySampler.cpp:
1573         (WebKit):
1574         (WebKit::WebMemorySampler::WebMemorySampler):
1575         (WebKit::WebMemorySampler::stop):
1576         (WebKit::WebMemorySampler::writeHeaders):
1577         (WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):
1578         * Shared/WebMemorySampler.h:
1579         (WebMemorySampler):
1580         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
1581         (WebKit::capitalizeRFC822HeaderFieldName):
1582         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1583         (WebKit::WebContextMenuClient::searchWithGoogle):
1584
1585 2012-09-06  Ryuan Choi  <ryuan.choi@samsung.com>
1586
1587         [EFL][WK2] Add API unit tests for ewk_view_theme_set.
1588         https://bugs.webkit.org/show_bug.cgi?id=94670
1589
1590         Reviewed by Gyuyoung Kim.
1591
1592         Added unit tests for ewk_view_theme_set.
1593
1594         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
1595         (EWK2UnitTest::EWK2UnitTestEnvironment::pathForResource):
1596         Added to get path of resource.
1597         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
1598         Ditto.
1599         * UIProcess/API/efl/tests/resources/big_button_theme.edj:
1600         Added test theme file which has text_confinement of button as
1601         rel1 { ... offset : 150 8; } rel2 { ... offset : -150 -11; }.
1602         * UIProcess/API/efl/tests/resources/empty_theme.edj:
1603         Added test theme file which includes nothing.
1604         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1605         Added unit test for ewk_view_theme_set.
1606
1607 2012-09-06  Csaba Osztrogonác  <ossy@webkit.org>
1608
1609         Move RenderView::setFixedPositionedObjectsNeedLayout to FrameView
1610         https://bugs.webkit.org/show_bug.cgi?id=96017
1611
1612         Unreviewed Qt-WK2 buildfix after r127783.
1613
1614         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1615         (WebKit::LayerTreeCoordinator::syncFixedLayers):
1616
1617 2012-09-05  Alexey Proskuryakov  <ap@apple.com>
1618
1619         [WK2] Annotate multi-process FIXMEs with bug numbers
1620         https://bugs.webkit.org/show_bug.cgi?id=95916
1621
1622         Reviewed by Eric Carlson.
1623
1624         * UIProcess/WebContext.cpp:
1625         (WebKit::WebContext::setProcessModel): Ensure that plug-in process is enabled.
1626         Comments in WebPluginSiteDataManager said that it's required for multi-process.
1627         (WebKit::WebContext::createNewWebProcess): Added a bug number.
1628         (WebKit::WebContext::disconnectProcess): Ditto.
1629         (WebKit::WebContext::createWebPage): Ditto.
1630         (WebKit::WebContext::download): Ditto.
1631         (WebKit::WebContext::getWebCoreStatistics): Ditto.
1632
1633         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
1634         (WebKit::WebPluginSiteDataManager::getSitesWithData):
1635         (WebKit::WebPluginSiteDataManager::clearSiteData):
1636         Removed FIXMEs - some ports haven't switched to plugin process yet, but that
1637         doesn't stop others from having a multi-process model. Added an ASSERT to document
1638         this requirement (in addition to the check in WebContext).
1639
1640         * UIProcess/Downloads/DownloadProxy.cpp:
1641         (WebKit::DownloadProxy::cancel):
1642         (WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
1643         (WebKit::DownloadProxy::startTransfer):
1644         * UIProcess/WebApplicationCacheManagerProxy.cpp:
1645         (WebKit::WebApplicationCacheManagerProxy::getApplicationCacheOrigins):
1646         (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin):
1647         (WebKit::WebApplicationCacheManagerProxy::deleteAllEntries):
1648         * UIProcess/WebCookieManagerProxy.cpp:
1649         (WebKit::WebCookieManagerProxy::getHostnamesWithCookies):
1650         (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy):
1651         * UIProcess/WebDatabaseManagerProxy.cpp:
1652         (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin):
1653         (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins):
1654         (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
1655         (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
1656         (WebKit::WebDatabaseManagerProxy::deleteAllDatabases):
1657         (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):
1658         * UIProcess/WebIconDatabase.cpp:
1659         (WebKit::WebIconDatabase::getLoadDecisionForIconURL):
1660         (WebKit::WebIconDatabase::didFinishURLImport):
1661         * UIProcess/WebKeyValueStorageManagerProxy.cpp:
1662         (WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins):
1663         (WebKit::WebKeyValueStorageManagerProxy::deleteEntriesForOrigin):
1664         (WebKit::WebKeyValueStorageManagerProxy::deleteAllEntries):
1665         * UIProcess/WebMediaCacheManagerProxy.cpp:
1666         (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache):
1667         * UIProcess/WebResourceCacheManagerProxy.cpp:
1668         (WebKit::WebResourceCacheManagerProxy::getCacheOrigins):
1669         (WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin):
1670         (WebKit::WebResourceCacheManagerProxy::clearCacheForAllOrigins):
1671         Added bug numbers.
1672
1673 2012-09-06  Michael Saboff  <msaboff@apple.com>
1674
1675         WebKit2 IPC always sends strings using 16 bit data format
1676         https://bugs.webkit.org/show_bug.cgi?id=95811
1677
1678         Reviewed by Benjamin Poulain.
1679
1680         Changed string encoding to pass an 8bit flag and then send either 8 or 16 bit
1681         character data.
1682
1683         * Platform/CoreIPC/ArgumentCoders.cpp:
1684         (CoreIPC::::encode):
1685         (CoreIPC::decodeStringText): New templatized string creation and decoder method.
1686         (CoreIPC::::decode):
1687
1688 2012-09-06  Carlos Garcia Campos  <cgarcia@igalia.com>
1689
1690         [GTK] [WK2] Crash when navigating between pages
1691         https://bugs.webkit.org/show_bug.cgi?id=95949
1692
1693         Reviewed by Martin Robinson.
1694
1695         Do not trust isMainResource parameter in
1696         webkitWebViewResourceLoadStarted(), because it's always true for
1697         all subresources of pages loaded from the history cache. We can
1698         simply assume that the first resource loaded for the main frame
1699         is the main web view resource.
1700
1701         * UIProcess/API/gtk/WebKitResourceLoadClient.cpp:
1702         (didInitiateLoadForResource):
1703         * UIProcess/API/gtk/WebKitWebView.cpp:
1704         (webkitWebViewResourceLoadStarted):
1705         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
1706
1707 2012-09-06  Balazs Kelemen  <kbalazs@webkit.org>
1708
1709         [WK2] Crash in WebPageProxy::showPopupMenu if PageClient does not implement createPopupMenuProxy
1710         https://bugs.webkit.org/show_bug.cgi?id=95862
1711
1712         Reviewed by Simon Hausmann.
1713
1714         Bail out early if the PageClient does not create a PopupMenuProxy for us.
1715
1716         * UIProcess/WebPageProxy.cpp:
1717         (WebKit::WebPageProxy::showPopupMenu):
1718
1719 2012-09-06  Christophe Dumez  <christophe.dumez@intel.com>
1720
1721         [EFL][WK2] Provide implementation for WebPage::performDefaultBehaviorForKeyEvent()
1722         https://bugs.webkit.org/show_bug.cgi?id=95943
1723
1724         Reviewed by Kenneth Rohde Christiansen.
1725
1726         Provide implementation for WebPage::performDefaultBehaviorForKeyEvent()
1727         in EFL WK2.
1728
1729         * WebProcess/WebPage/efl/WebPageEfl.cpp:
1730         (WebKit::WebPage::performDefaultBehaviorForKeyEvent):
1731
1732 2012-09-06  Patrick Gansterer  <paroga@webkit.org>
1733
1734         Remove String::operator+=() from windows platform code
1735         https://bugs.webkit.org/show_bug.cgi?id=95904
1736
1737         Reviewed by Benjamin Poulain.
1738
1739         Use StringBuilder and operator+() to concatenate strings instead of operator+=().
1740
1741         * UIProcess/win/WebView.cpp:
1742         (WebKit::imeCompositionArgumentNames):
1743
1744 2012-09-06  Kihong Kwon  <kihong.kwon@samsung.com>
1745
1746         [CMake] Add notifications path to the WebKit2/CMakeLists.txt
1747         https://bugs.webkit.org/show_bug.cgi?id=95843
1748
1749         Reviewed by Laszlo Gombos.
1750
1751         Add WebCore/Modules/Notifications to the WebKit2_INCLUDE_DIRECTORIES of WebKit2/CMakeLists.txt.
1752         There are some build errors when ENABLE_NOTIFICATIONS feature is enabled.
1753
1754         * CMakeLists.txt:
1755
1756 2012-09-06  Simon Hausmann  <simon.hausmann@nokia.com>
1757
1758         [Qt] Various small Windows / MSVC build fixes
1759         https://bugs.webkit.org/show_bug.cgi?id=95934
1760
1761         Reviewed by Kenneth Rohde Christiansen.
1762
1763         * Shared/LayerTreeContext.h: Include stdint.h due to the use of uint32_t as layer id.
1764         * UIProcess/API/qt/qquickwebview_p.h:
1765         (WebKit): Fix struct vs. class forward declaration mismatch, causing linking errors.
1766         * UIProcess/API/qt/tests/bytearraytestdata.h: Remove export macro from internal test class
1767         that is not used anymore. Using the export macro from a DLL when the code in question is not
1768         part of the DLL results in the export macro expanding to dllimport, giving incorrect linkage
1769         for the unit test.
1770         * WebProcess/qt/WebProcessMainQt.cpp:
1771         (WebKit::WebProcessMainQt): Removed explicit call to srandom(), which is not available on Windows.
1772         The call appears to be unnecessary in the light of the WTF::initializeThreading() call below, which
1773         in turn calls WTF::initializeRandomNumberGenerator(), which does the same thing already (and isn't
1774         needed on Windows, as per comment in wtf/RandomNumberSeed.h)
1775
1776 2012-09-06  Simon Hausmann  <simon.hausmann@nokia.com>
1777
1778         [Qt] Fix build with ANGLE on platforms that provide EGL/GLESv2
1779         https://bugs.webkit.org/show_bug.cgi?id=95965
1780
1781         Reviewed by Tor Arne Vestbø.
1782
1783         Depend on ANGLE if necessary, due to the use WebCore types that pull in ANGLE
1784         headers (GraphicsContext3D.h in particular).
1785
1786         * Target.pri:
1787
1788 2012-09-06  Andras Becsi  <andras.becsi@nokia.com>
1789
1790         [WK2] Make [Qt]ViewportHandler cross platform
1791         https://bugs.webkit.org/show_bug.cgi?id=91257
1792
1793         Reviewed by Kenneth Rohde Christiansen and Simon Hausmann.
1794
1795         Since QtViewportHandler includes behaviour that is not platform
1796         specific together with hooks to the QtQuick API layer, a platform
1797         independent implementation would allow other ports to use the
1798         viewport controlling functionality provided.
1799
1800         This patch removes QtViewportHandler and introduces a platform
1801         independent PageViewportController class that is responsible
1802         for handling requests from the web process (eg. content size
1803         changes, viewport attributes changes and scroll position requests).
1804         Requests from the web process are acted on by a platform specific
1805         client class which implements the PageViewportControllerClient
1806         interface which provides hooks to the platform specific API layer.
1807
1808         The PageViewportController is also responsible to notify the web
1809         process about changes in the viewport state (eg. viewport size,
1810         visible rect, content scale and movement trajectory).
1811         The client is responsible to delegate these UI changes to the
1812         PageViewportController.
1813
1814         For now only PageViewportControllerClientQt implements the client
1815         interface besides providing other QQuick specific functionality
1816         (gestures, animations, etc).
1817
1818         * Target.pri:
1819         * UIProcess/API/qt/qquickwebpage_p_p.h:
1820         * UIProcess/API/qt/qquickwebview.cpp:
1821         (QQuickWebViewPrivate::onComponentComplete):
1822         (QQuickWebViewFlickablePrivate::~QQuickWebViewFlickablePrivate):
1823         (QQuickWebViewFlickablePrivate::didChangeViewportProperties):
1824         (QQuickWebViewFlickablePrivate::updateViewportSize):
1825         (QQuickWebViewFlickablePrivate::pageDidRequestScroll):
1826         (QQuickWebViewFlickablePrivate::didChangeContentsSize):
1827         * UIProcess/API/qt/qquickwebview_p.h:
1828         (WebKit):
1829         * UIProcess/API/qt/qquickwebview_p_p.h:
1830         (WebKit):
1831         (QQuickWebViewPrivate::pageViewportControllerClient):
1832         (QQuickWebViewPrivate):
1833         (QQuickWebViewFlickablePrivate):
1834         * UIProcess/API/qt/qwebkittest.cpp:
1835         (QWebKitTest::viewport):
1836         (QWebKitTest::devicePixelRatio):
1837         (QWebKitTest::contentsScale):
1838         * UIProcess/PageViewportController.cpp: Added.
1839         (WebKit):
1840         (WebKit::bound):
1841         (WebKit::fuzzyCompare):
1842         (WebKit::boundPosition):
1843         (WebKit::ViewportUpdateDeferrer::ViewportUpdateDeferrer):
1844         (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
1845         (WebKit::PageViewportController::PageViewportController):
1846         (WebKit::PageViewportController::convertFromViewport):
1847         (WebKit::PageViewportController::convertToViewport):
1848         (WebKit::PageViewportController::innerBoundedContentsScale):
1849         (WebKit::PageViewportController::outerBoundedContentsScale):
1850         (WebKit::PageViewportController::didChangeContentsSize):
1851         (WebKit::PageViewportController::pageDidRequestScroll):
1852         (WebKit::PageViewportController::setViewportSize):
1853         (WebKit::PageViewportController::setVisibleContentsRect):
1854         (WebKit::PageViewportController::syncVisibleContents):
1855         (WebKit::PageViewportController::didChangeViewportAttributes):
1856         (WebKit::PageViewportController::suspendContent):
1857         (WebKit::PageViewportController::resumeContent):
1858         (WebKit::PageViewportController::positionRangeForContentAtScale):
1859         * UIProcess/PageViewportController.h: Added.
1860         (WebCore):
1861         (WebKit):
1862         (ViewportUpdateDeferrer):
1863         (PageViewportController):
1864         (WebKit::PageViewportController::~PageViewportController):
1865         (WebKit::PageViewportController::hasSuspendedContent):
1866         (WebKit::PageViewportController::hadUserInteraction):
1867         (WebKit::PageViewportController::allowsUserScaling):
1868         (WebKit::PageViewportController::contentsLayoutSize):
1869         (WebKit::PageViewportController::devicePixelRatio):
1870         (WebKit::PageViewportController::minimumContentsScale):
1871         (WebKit::PageViewportController::maximumContentsScale):
1872         (WebKit::PageViewportController::setHadUserInteraction):
1873         * UIProcess/PageViewportControllerClient.h: Added.
1874         (WebKit):
1875         (PageViewportControllerClient):
1876         (WebKit::PageViewportControllerClient::PageViewportControllerClient):
1877         (WebKit::PageViewportControllerClient::~PageViewportControllerClient):
1878         * UIProcess/qt/PageViewportControllerClientQt.cpp: Added.
1879         (WebKit):
1880         (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
1881         (WebKit::PageViewportControllerClientQt::ScaleAnimation::updateCurrentValue):
1882         (WebKit::PageViewportControllerClientQt::~PageViewportControllerClientQt):
1883         (WebKit::PageViewportControllerClientQt::setContentRectVisiblePositionAtScale):
1884         (WebKit::PageViewportControllerClientQt::animateContentRectVisible):
1885         (WebKit::PageViewportControllerClientQt::flickMoveStarted):
1886         (WebKit::PageViewportControllerClientQt::flickMoveEnded):
1887         (WebKit::PageViewportControllerClientQt::pageItemPositionChanged):
1888         (WebKit::PageViewportControllerClientQt::scaleAnimationStateChanged):
1889         (WebKit::PageViewportControllerClientQt::touchBegin):
1890         (WebKit::PageViewportControllerClientQt::touchEnd):
1891         (WebKit::PageViewportControllerClientQt::focusEditableArea):
1892         (WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded):
1893         (WebKit::PageViewportControllerClientQt::nearestValidVisibleContentsRect):
1894         (WebKit::PageViewportControllerClientQt::setContentsPosition):
1895         (WebKit::PageViewportControllerClientQt::setContentsScale):
1896         (WebKit::PageViewportControllerClientQt::setContentsRectToNearestValidBounds):
1897         (WebKit::PageViewportControllerClientQt::didResumeContent):
1898         (WebKit::PageViewportControllerClientQt::allowsUserScaling):
1899         (WebKit::PageViewportControllerClientQt::devicePixelRatio):
1900         (WebKit::PageViewportControllerClientQt::minimumContentsScale):
1901         (WebKit::PageViewportControllerClientQt::maximumContentsScale):
1902         (WebKit::PageViewportControllerClientQt::currentContentsScale):
1903         (WebKit::PageViewportControllerClientQt::contentsLayoutSize):
1904         (WebKit::PageViewportControllerClientQt::scrollAnimationActive):
1905         (WebKit::PageViewportControllerClientQt::panGestureActive):
1906         (WebKit::PageViewportControllerClientQt::panGestureStarted):
1907         (WebKit::PageViewportControllerClientQt::panGestureRequestUpdate):
1908         (WebKit::PageViewportControllerClientQt::panGestureEnded):
1909         (WebKit::PageViewportControllerClientQt::panGestureCancelled):
1910         (WebKit::PageViewportControllerClientQt::scaleAnimationActive):
1911         (WebKit::PageViewportControllerClientQt::cancelScrollAnimation):
1912         (WebKit::PageViewportControllerClientQt::interruptScaleAnimation):
1913         (WebKit::PageViewportControllerClientQt::pinchGestureActive):
1914         (WebKit::PageViewportControllerClientQt::pinchGestureStarted):
1915         (WebKit::PageViewportControllerClientQt::pinchGestureRequestUpdate):
1916         (WebKit::PageViewportControllerClientQt::pinchGestureEnded):
1917         (WebKit::PageViewportControllerClientQt::pinchGestureCancelled):
1918         (WebKit::PageViewportControllerClientQt::visibleContentsRect):
1919         (WebKit::PageViewportControllerClientQt::didChangeContentsSize):
1920         (WebKit::PageViewportControllerClientQt::didChangeVisibleContents):
1921         (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):
1922         (WebKit::PageViewportControllerClientQt::updateViewportController):
1923         (WebKit::PageViewportControllerClientQt::scaleContent):
1924         (WebKit::PageViewportControllerClientQt::viewportScaleForRect):
1925         * UIProcess/qt/PageViewportControllerClientQt.h: Added.
1926         (WebKit):
1927         (PageViewportControllerClientQt):
1928         (WebKit::PageViewportControllerClientQt::setController):
1929         (ScaleAnimation):
1930         (WebKit::PageViewportControllerClientQt::ScaleAnimation::ScaleAnimation):
1931         (WebKit::PageViewportControllerClientQt::ScaleStackItem::ScaleStackItem):
1932         (ScaleStackItem):
1933         * UIProcess/qt/QtGestureRecognizer.cpp:
1934         (WebKit::QtGestureRecognizer::viewportController):
1935         * UIProcess/qt/QtGestureRecognizer.h:
1936         (WebKit):
1937         * UIProcess/qt/QtPanGestureRecognizer.cpp:
1938         (WebKit::QtPanGestureRecognizer::update):
1939         (WebKit::QtPanGestureRecognizer::finish):
1940         (WebKit::QtPanGestureRecognizer::cancel):
1941         * UIProcess/qt/QtPinchGestureRecognizer.cpp:
1942         (WebKit::QtPinchGestureRecognizer::update):
1943         (WebKit::QtPinchGestureRecognizer::finish):
1944         (WebKit::QtPinchGestureRecognizer::cancel):
1945         * UIProcess/qt/QtViewportHandler.cpp: Removed.
1946         * UIProcess/qt/QtWebPageEventHandler.cpp:
1947         (WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
1948         (WebKit::QtWebPageEventHandler::setViewportController):
1949         (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
1950         (WebKit::QtWebPageEventHandler::handleInputEvent):
1951         (WebKit::QtWebPageEventHandler::doneWithTouchEvent):
1952         (WebKit::QtWebPageEventHandler::didFindZoomableArea):
1953         * UIProcess/qt/QtWebPageEventHandler.h:
1954         (WebKit):
1955         (QtWebPageEventHandler):
1956         (WebKit::QtWebPageEventHandler::viewportController):
1957
1958 2012-09-06  Ryuan Choi  <ryuan.choi@samsung.com>
1959
1960         [EFL][WK2] WebMemorySampler.cpp is included twice.
1961         https://bugs.webkit.org/show_bug.cgi?id=95910
1962
1963         Reviewed by Kentaro Hara.
1964
1965         Now WebMemorySampler.cpp is in CMakeLists.txt and PlatformEfl.cmake.
1966
1967         * PlatformEfl.cmake: Removed WebMemorySampler.cpp from source lists.
1968
1969 2012-09-05  Ryuan Choi  <ryuan.choi@samsung.com>
1970
1971         [EFL][WK2] Implement missing feature to support <select> tag
1972         https://bugs.webkit.org/show_bug.cgi?id=95708
1973
1974         Reviewed by Gyuyoung Kim.
1975
1976         Added missing APIs for select tag.
1977
1978         This patch provides all functionality of current WebPopupItem to applications.
1979
1980         * UIProcess/API/efl/ewk_popup_menu_item.cpp:
1981         (_Ewk_Popup_Menu_Item):
1982         (_Ewk_Popup_Menu_Item::_Ewk_Popup_Menu_Item):
1983         (ewk_popup_menu_item_new):
1984         (ewk_popup_menu_item_text_direction_get):
1985         (ewk_popup_menu_item_text_direction_override_get):
1986         (ewk_popup_menu_item_tooltip_get):
1987         (ewk_popup_menu_item_accessibility_text_get):
1988         (ewk_popup_menu_item_enabled_get):
1989         (ewk_popup_menu_item_is_label_get):
1990         (ewk_popup_menu_item_selected_get):
1991         * UIProcess/API/efl/ewk_popup_menu_item.h:
1992         * UIProcess/API/efl/ewk_popup_menu_item_private.h:
1993         * UIProcess/API/efl/ewk_view.cpp:
1994         (ewk_view_popup_menu_request):
1995         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1996         (checkBasicPopupMenuItem):
1997         (showPopupMenu): Updated test case to cover new APIs.
1998         (TEST_F):
1999
2000 2012-09-05  Christophe Dumez  <christophe.dumez@intel.com>
2001
2002         [EFL][WK2] Provide implementation for WebProcess functions
2003         https://bugs.webkit.org/show_bug.cgi?id=95857
2004
2005         Reviewed by Kenneth Rohde Christiansen.
2006
2007         Rename WebProcessGtk to WebProcessSoup and reuse it in
2008         EFL port since all the code is soup-related. We now
2009         have a proper implementation for the WebProcess
2010         platform methods.
2011
2012         * GNUmakefile.list.am:
2013         * PlatformEfl.cmake:
2014         * WebProcess/efl/WebProcessEfl.cpp: Removed.
2015         * WebProcess/efl/WebProcessMainEfl.cpp:
2016         (WebKit::WebProcessMainEfl): Enable soup cache for the soup session similarly to GTK port.
2017         * WebProcess/soup/WebProcessSoup.cpp: Renamed from Source/WebKit2/WebProcess/gtk/WebProcessGtk.cpp.
2018         (WebKit):
2019         (WebKit::getCacheDiskFreeSize):
2020         (WebKit::getMemorySize):
2021         (WebKit::WebProcess::platformSetCacheModel):
2022         (WebKit::WebProcess::platformClearResourceCaches):
2023         (WebKit::buildAcceptLanguages):
2024         (WebKit::setSoupSessionAcceptLanguage):
2025         (WebKit::languageChanged):
2026         (WebKit::WebProcess::platformInitializeWebProcess):
2027         (WebKit::WebProcess::platformTerminate):
2028
2029 2012-09-05  Benjamin Poulain  <bpoulain@apple.com>
2030
2031         More fixes for String::operator+=() on Mac
2032         https://bugs.webkit.org/show_bug.cgi?id=95880
2033
2034         Reviewed by Adam Barth.
2035
2036         * UIProcess/WebInspectorProxy.cpp:
2037         (WebKit::WebInspectorProxy::createInspectorPage): This is a legitimate use of append(),
2038         there is no other concatenation outside that branch.
2039         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2040         (WebKit::parseRFC822HeaderFields): Use string operators instead of +=.
2041         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2042         (WebKit::NetscapePlugin::userAgent): Another legitimate use of append().
2043
2044 2012-09-05  Alexey Proskuryakov  <ap@apple.com>
2045
2046         [WK2] Make visited link tracking work in multi-process mode
2047         https://bugs.webkit.org/show_bug.cgi?id=95869
2048
2049         Reviewed by Dan Bernstein.
2050
2051         * UIProcess/VisitedLinkProvider.h:
2052         * UIProcess/VisitedLinkProvider.cpp:
2053         (WebKit::VisitedLinkProvider::VisitedLinkProvider): m_webProcessHasVisitedLinkState
2054         was making no sense in multi-process world, so it was let go.
2055         (WebKit::VisitedLinkProvider::processDidFinishLaunching): Track new processes.
2056         (WebKit::VisitedLinkProvider::processDidClose): Clean up pointers that are going
2057         to become stale.
2058         (WebKit::VisitedLinkProvider::pendingVisitedLinksTimerFired): Added comments. Fixed
2059         a bug where we would churn table size in some cases. Added debug logging in failure
2060         case. Re-implemented messaging code to work with multiple web processes.
2061
2062         * UIProcess/WebContext.cpp:
2063         (WebKit::WebContext::processDidFinishLaunching): Pass process proxy pointer to
2064         m_visitedLinkProvider, as it now needs to track processes.
2065         (WebKit::WebContext::disconnectProcess): Ditto. Also re-enabled visited link provider
2066         cleanup in multi-process mode.
2067
2068 2012-09-05  Brady Eidson  <beidson@apple.com>
2069
2070         Frequent crashes in PluginView::scriptObject under runtimeObjectCustomGetOwnPropertySlot
2071         <rdar://problem/12142226> and https://bugs.webkit.org/show_bug.cgi?id=95026
2072
2073         Patch partially by Andras Becsi  <andras.becsi@nokia.com>
2074
2075         Reviewed by Andy Estes.
2076
2077         If a plug-in fails to initialize then the m_plugin pointer is cleared out.
2078         When accessing the script object it is appropriate to unconditionally null check m_plugin.
2079
2080         * WebProcess/Plugins/PluginView.cpp:
2081         (WebKit::PluginView::scriptObject): Null check m_plugin before trying to use it.
2082
2083 2012-09-05  Christophe Dumez  <christophe.dumez@intel.com>
2084
2085         [EFL][WK2] Provide implementation for WebFrameNetworkingContext
2086         https://bugs.webkit.org/show_bug.cgi?id=95826
2087
2088         Reviewed by Kenneth Rohde Christiansen.
2089
2090         Remove EFL-specific and empty implementation for WebFrameNetworkingContext
2091         and use the existing soup implementation instead.
2092
2093         * PlatformEfl.cmake:
2094         * WebProcess/WebCoreSupport/efl/WebFrameNetworkingContext.h: Removed.
2095
2096 2012-09-05  Kaustubh Atrawalkar  <kaustubh@motorola.com>
2097
2098         [DRT] LTC:: Move printing related APIs from LayoutTestController to Internals
2099         https://bugs.webkit.org/show_bug.cgi?id=92735
2100
2101         Reviewed by Hajime Morita.
2102
2103         Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.
2104         Add symbols for Mac Win builds for corresponding newly added APIs.
2105
2106         * win/WebKit2.def:
2107         * win/WebKit2CFLite.def:
2108
2109 2012-09-05  Balazs Kelemen  <kbalazs@webkit.org>
2110
2111         [Qt] QRawWebViewPrivate does not initialize some members
2112         https://bugs.webkit.org/show_bug.cgi?id=95709
2113
2114         Reviewed by Luiz Agostini.
2115
2116         Don't miss initializing the bool flags.
2117
2118         * UIProcess/API/qt/raw/qrawwebview.cpp:
2119         (QRawWebViewPrivate::QRawWebViewPrivate):
2120
2121 2012-09-04  Kangil Han  <kangil.han@samsung.com>
2122
2123         [WK2] Use explicit constructor in InjectedBundle.
2124         https://bugs.webkit.org/show_bug.cgi?id=95746
2125
2126         Reviewed by Sam Weinig.
2127
2128         Added explicit keyword in constructor of InjectedBundle in order to avoid implicit type conversion.
2129
2130         * WebProcess/InjectedBundle/InjectedBundle.h:
2131         (InjectedBundle):
2132
2133 2012-09-03  Sam Weinig  <sam@webkit.org>
2134
2135         Part 1 of removing PlatformString.h, move remaining functions to new homes
2136         https://bugs.webkit.org/show_bug.cgi?id=95702
2137
2138         Reviewed by Beth Dakin.
2139
2140         * UIProcess/WebPageProxy.h:
2141         Forward declare SharedBuffer.
2142
2143 2012-09-04  Jeffrey Pfau  <jpfau@apple.com>
2144
2145         Make plugins respect third-party storage blocking setting
2146         https://bugs.webkit.org/show_bug.cgi?id=94888
2147
2148         Reviewed by Brady Eidson.
2149
2150         Plugins that are in a third-party context should be put into private browsing mode so their storage is temporary.
2151
2152         * WebProcess/Plugins/PluginView.cpp:
2153         (WebKit::PluginView::isPrivateBrowsingEnabled): Put the plugin into private browsing mode if it is in a third-party context.
2154         (WebKit::PluginView::privateBrowsingStateChanged): Make sure a plugin doesn't leave private browsing mode if it's in a third-party context.
2155
2156 2012-09-04  Pekka Vuorela  <pvuorela@iki.fi>
2157
2158         [Qt] Remove use of deprecated QInputMethod method
2159         https://bugs.webkit.org/show_bug.cgi?id=95741
2160
2161         Reviewed by Simon Hausmann.
2162
2163         Adapt from deprecated QInputMethod::visible() to isVisible().
2164
2165         * UIProcess/qt/QtWebPageEventHandler.cpp:
2166         (WebKit::setInputPanelVisible):
2167         (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
2168
2169 2012-09-04  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
2170
2171         Allow child-frame content in hit-tests.
2172         https://bugs.webkit.org/show_bug.cgi?id=95204
2173
2174         Reviewed by Antonio Gomes.
2175
2176         Update symbols for the Windows build-system.
2177
2178         * win/WebKit2.def:
2179         * win/WebKit2CFLite.def:
2180
2181 2012-09-04  Ryuan Choi  <ryuan.choi@samsung.com>
2182
2183         [EFL] Drop default theme concept
2184         https://bugs.webkit.org/show_bug.cgi?id=94778
2185
2186         Reviewed by Gyuyoung Kim.
2187
2188         * PlatformEfl.cmake: Removed DEFAULT_THEME_PATH definitions.
2189         * UIProcess/API/efl/ewk_view.cpp:
2190         (_ewk_view_initialize): Removed default theme concept.
2191         * UIProcess/API/efl/ewk_view.h:
2192         Updated doxygen document not to mention default theme.
2193
2194 2012-09-03  Kangil Han  <kangil.han@samsung.com>
2195
2196         [WK2][WTR] Implement WebKitEnableCaretBrowsing attribute in testRunner.overridePreference
2197         https://bugs.webkit.org/show_bug.cgi?id=95576
2198
2199         Reviewed by Maciej Stachowiak.
2200
2201         Added a line of macro to implement WebKitEnableCaretBrowsing attribute in testRunner.overridePreference
2202
2203         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2204         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
2205
2206 2012-09-03  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
2207
2208         [Qt] Not all activated elements highlighted, but some frames are
2209         https://bugs.webkit.org/show_bug.cgi?id=95683
2210
2211         Reviewed by Kenneth Rohde Christiansen.
2212
2213         Use the new function Node::willRespondToMouseClickEvents to better determine if the element
2214         can be tap-activated and avoid documents and frames completely.
2215
2216         * WebProcess/WebPage/WebPage.cpp:
2217         (WebKit::WebPage::highlightPotentialActivation):
2218
2219 2012-09-03  Eunmi Lee  <eunmi15.lee@samsung.com>
2220
2221         [EFL][WK2] Add ewk_settings.
2222         https://bugs.webkit.org/show_bug.cgi?id=91206
2223
2224         Reviewed by Gyuyoung Kim.
2225
2226         Add the ewk_settings which wraps the WKPreferencesRef.
2227         The ewk_settings will be created by the ewk_view and it will be
2228         destroyed when the ewk_view is destroyed. I make each view to have
2229         its own group to make one ewk_settings sets preferences only for
2230         one ewk_view.
2231         The application can get the ewk_settings from ewk_view using
2232         ewk_view_settings_get() API.
2233
2234         * UIProcess/API/efl/EWebKit2.h:
2235         * UIProcess/API/efl/ewk_settings.cpp: Added.
2236         (ewk_settings_enable_scripts_set):
2237         (ewk_settings_enable_scripts_get):
2238         (ewk_settings_auto_load_images_set):
2239         (ewk_settings_auto_load_images_get):
2240         * UIProcess/API/efl/ewk_settings.h: Added.
2241         * UIProcess/API/efl/ewk_settings_private.h: Added.
2242         (_Ewk_Settings):
2243         (_Ewk_Settings::_Ewk_Settings):
2244         * UIProcess/API/efl/ewk_view.cpp:
2245         (_Ewk_View_Private_Data):
2246         (_ewk_view_initialize):
2247         (ewk_view_settings_get):
2248         * UIProcess/API/efl/ewk_view.h:
2249         * UIProcess/API/efl/tests/test_ewk2_settings.cpp: Added.
2250         (TEST_F):
2251         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2252         (TEST_F):
2253
2254 2012-09-03  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
2255
2256         Wheel-events fails temporarily after reload
2257         https://bugs.webkit.org/show_bug.cgi?id=94934
2258
2259         Reviewed by Kenneth Rohde Christiansen.
2260
2261         Set fixed visible content rect using visibleContentBounds instead of WebPage::size. Otherwise the 
2262         content rect will be incorrectly set to the entire document size, when resizesToContents is active.
2263
2264         Test: UIProcess/API/qt/tests/qmltests/WebView/tst_wheelEventHandling.qml
2265
2266         * UIProcess/API/qt/tests/qmltests/WebView/tst_wheelEventHandling.qml:
2267         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2268         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
2269
2270 2012-09-03  Jinwoo Song  <jinwoo7.song@samsung.com>
2271
2272         [EFL] Use WebKitVersion.h to get version information
2273         https://bugs.webkit.org/show_bug.cgi?id=95669
2274
2275         Reviewed by Gyuyoung Kim.
2276
2277         Use WEBKIT_MAJOR_VERSION and WEBKIT_MINOR_VERSION 
2278         in the WebKitVersion.h
2279
2280         * UIProcess/efl/WebPageProxyEfl.cpp:
2281         (WebKit::WebPageProxy::standardUserAgent):
2282
2283 2012-09-03  Christophe Dumez  <christophe.dumez@intel.com>
2284
2285         [EFL][WK2] Skip EWK2UnitTestBase.ewk_cookie_manager_permanent_storage API test
2286         https://bugs.webkit.org/show_bug.cgi?id=95671
2287
2288         Reviewed by Kenneth Rohde Christiansen.
2289
2290         Skip EWK2UnitTestBase.ewk_cookie_manager_permanent_storage
2291         API test since it is flaky on the bots.
2292
2293         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
2294         (TEST_F):
2295
2296 2012-09-02  Kenichi Ishibashi  <bashi@chromium.org>
2297
2298         WK2: Build failure on SnowLeopard after r127384
2299         https://bugs.webkit.org/show_bug.cgi?id=95665
2300
2301         Reviewed by Dan Bernstein.
2302
2303         Add SandboxExtension::consumePermanently(const Handle&) for !ENABLE(WEB_PROCESS_SANDBOX) to fix link error.
2304
2305         * Shared/SandboxExtension.h:
2306         (WebKit::SandboxExtension::consumePermanently):
2307
2308 2012-09-02  Ryuan Choi  <ryuan.choi@samsung.com>
2309
2310         [EFL][WK2] Keep activePopupMenu to call valueChangedForPopupMenu() outside showPopupMenu()
2311         https://bugs.webkit.org/show_bug.cgi?id=95355
2312
2313         Reviewed by Gyuyoung Kim.
2314
2315         Efl does not have a proper way to support nested loop so that applications
2316         may change value after showPopupMenu() is finished.
2317
2318         * UIProcess/API/efl/tests/test_ewk2_view.cpp: Improved test case to cover this bug.
2319         (selectItemAfterDelayed):
2320         (showPopupMenu):
2321         * UIProcess/WebPageProxy.cpp:
2322         (WebKit::WebPageProxy::showPopupMenu):
2323         Guard with !PLATFORM(EFL) to keep the activePopupMenu valid to call valueChangedForPopupMenu
2324         outside showPopupMenu().
2325
2326 2012-09-02  Byungwoo Lee  <bw80.lee@gmail.com>
2327
2328         [EFL] Add missing semicolon at the end of some lines.
2329         https://bugs.webkit.org/show_bug.cgi?id=95640
2330
2331         Reviewed by Gyuyoung Kim.
2332
2333         EWK_VIEW_PRIV_GET_OR_RETURN macro and other related macro can be used
2334         without semicolon, because it ends with a semicolon or complete block.
2335         This can make a human mistake about missing semicolon.
2336
2337         Fixed the macros to require semicolon, and added missing semicolons.
2338
2339         * UIProcess/API/efl/ewk_view.cpp:
2340         (_ewk_view_smart_focus_in):
2341         (_ewk_view_smart_focus_out):
2342         (_ewk_view_smart_mouse_wheel):
2343         (_ewk_view_smart_mouse_down):
2344         (_ewk_view_smart_mouse_up):
2345         (_ewk_view_smart_mouse_move):
2346         (_ewk_view_smart_key_down):
2347         (_ewk_view_smart_key_up):
2348         (_ewk_view_initialize):
2349
2350 2012-09-01  Sam Weinig  <sam@webkit.org>
2351
2352         Remove unused member variable from WebProcess.
2353
2354         Rubber-stamped by Dan Bernstein.
2355
2356         * WebProcess/WebProcess.h:
2357         (WebProcess):
2358         Remove m_applicationCachePathExtension.
2359
2360 2012-09-01  Sam Weinig  <sam@webkit.org>
2361
2362         Use dynamic sandbox extension rather than sandbox parameters for paths provided by the UIProcess
2363         https://bugs.webkit.org/show_bug.cgi?id=95651
2364
2365         Reviewed by Dan Bernstein.
2366
2367         This is the first step to not relying on the initialization message to initialize
2368         the sandbox.
2369
2370         * Shared/SandboxExtension.h:
2371         (SandboxExtension):
2372         * Shared/mac/SandboxExtensionMac.mm:
2373         (WebKit::SandboxExtension::consumePermanently):
2374         Add static version of SandboxExtension::consumePermanently which takes a
2375         SandboxExtension::Handle. There is no reason to create a SandboxExtension
2376         just to consume it forever.
2377
2378         * Shared/WebProcessCreationParameters.cpp:
2379         (WebKit::WebProcessCreationParameters::encode):
2380         (WebKit::WebProcessCreationParameters::decode):
2381         * Shared/WebProcessCreationParameters.h:
2382         (WebProcessCreationParameters):
2383         Add SandboxExtension::Handles for paths we need access to, and remove
2384         webInspectorBaseDirectory, which is unused.
2385
2386         * UIProcess/WebContext.cpp:
2387         (WebKit::WebContext::createNewWebProcess):
2388         * UIProcess/mac/WebContextMac.mm:
2389         (WebKit::WebContext::platformInitializeWebProcess):
2390         Create SandboxExtension::Handles for paths we need access to, and move
2391         getting the presenterApplicationPid to platformInitializeWebProcess, since
2392         it is Mac only.
2393
2394         * WebProcess/WebProcess.cpp:
2395         (WebKit::WebProcess::initializeWebProcess):
2396         Move setting the presenterApplicationPid to platformInitializeWebProcess.
2397
2398         * WebProcess/mac/WebProcessMac.mm:
2399         (WebKit::initializeSandbox):
2400         (WebKit::WebProcess::platformInitializeWebProcess):
2401         Replace the use of sandbox parameters for opening access for necessary paths
2402         with permanent consumption of sandbox extensions.
2403
2404         * WebProcess/com.apple.WebProcess.sb.in:
2405         Remove sandbox rules that are now handled via extensions.
2406
2407 2012-08-31  Byungwoo Lee  <bw80.lee@samsung.com>
2408
2409         Build warning : -Wformat on WebMemorySampler.cpp.
2410         https://bugs.webkit.org/show_bug.cgi?id=95550
2411
2412         Reviewed by Darin Adler.
2413
2414         Fix build warning.
2415         Use String::number instead of String::format.
2416
2417         * Shared/WebMemorySampler.cpp:
2418         (WebKit::WebMemorySampler::appendCurrentMemoryUsageToFile):
2419
2420 2012-08-31  Alexey Proskuryakov  <ap@apple.com>
2421
2422         [WK2] Use initial process in multi-process mode, too
2423         https://bugs.webkit.org/show_bug.cgi?id=95612
2424
2425         Reviewed by Sam Weinig.
2426
2427         * UIProcess/WebContext.cpp:
2428         (WebKit::WebContext::WebContext):
2429         (WebKit::WebContext::warmInitialProcess):
2430         (WebKit::WebContext::disconnectProcess):
2431         (WebKit::WebContext::createWebPage):
2432         * UIProcess/WebContext.h:
2433         Added a boolean telling whether the last (normally, the only) process in m_processes
2434         is available for use in a new page.
2435
2436 2012-08-31  Alexey Proskuryakov  <ap@apple.com>
2437
2438         [WK2] WebProcesses should not wait 60 seconds to close in multi-process mode
2439         https://bugs.webkit.org/show_bug.cgi?id=95616
2440
2441         Reviewed by Darin Adler.
2442
2443         * Shared/ChildProcess.cpp: (WebKit::ChildProcess::ChildProcess):
2444         * Shared/ChildProcess.h: (WebKit::ChildProcess::setTerminationTimeout):
2445         Expose a setter for timeout instead of taking it at construction time. If a derived
2446         class doesn't call the setter, default to 0.
2447
2448         * PluginProcess/PluginProcess.cpp:
2449         (WebKit::PluginProcess::PluginProcess):
2450         (WebKit::PluginProcess::initializePluginProcess):
2451         Use timeout from initialization message.
2452
2453         * WebProcess/WebProcess.cpp:
2454         (WebKit::WebProcess::WebProcess):
2455         (WebKit::WebProcess::initializeWebProcess):
2456         Ditto.
2457
2458         * Shared/Plugins/PluginProcessCreationParameters.cpp:
2459         (WebKit::PluginProcessCreationParameters::encode):
2460         (WebKit::PluginProcessCreationParameters::decode):
2461         * Shared/Plugins/PluginProcessCreationParameters.h:
2462         * Shared/WebProcessCreationParameters.cpp:
2463         (WebKit::WebProcessCreationParameters::encode):
2464         (WebKit::WebProcessCreationParameters::decode):
2465         * Shared/WebProcessCreationParameters.h:
2466         Funnel timeout across process boundary.
2467
2468         * UIProcess/Plugins/PluginProcessProxy.cpp: (WebKit::PluginProcessProxy::didFinishLaunching):
2469         Pass timeout as initialization message after launch.
2470
2471         * UIProcess/WebContext.cpp:
2472         (WebKit::WebContext::createNewWebProcess): Pass timeout as initialization message
2473         (unlike plugin process proxy, web process proxy doesn't wait, and relies on the message
2474         being queued).
2475         (WebKit::WebContext::disconnectProcess): Skip invalidating global managers when
2476         one process quits. We still need to do something, but running this code would just
2477         result in assertion failures any time a page was closed.
2478
2479 2012-08-31  Brady Eidson  <beidson@apple.com>
2480
2481        REGRESSION (r127252): incomplete repaint on Flash element after pinch to zoom
2482        <rdar://problem/12217897> and https://bugs.webkit.org/show_bug.cgi?id=95607
2483
2484        Reviewed by Simon Fraser.
2485
2486        * WebProcess/Plugins/PluginView.cpp:
2487        (WebKit::PluginView::viewGeometryDidChange): Only give the window coordinate clip rect a chance
2488          to override the boundsRect() if the page scale factor is 1.
2489
2490 2012-08-31  Tony Chang  <tony@chromium.org>
2491
2492         Remove ENABLE_CSS3_FLEXBOX compile time flag
2493         https://bugs.webkit.org/show_bug.cgi?id=95382
2494
2495         Reviewed by Ojan Vafai.
2496
2497         Everyone is already enabling this by default and the spec has stablized.
2498
2499         * Configurations/FeatureDefines.xcconfig:
2500
2501 2012-08-31  Pratik Solanki  <psolanki@apple.com>
2502
2503         objc_msgSend and IMP should be cast appropriately before using
2504         https://bugs.webkit.org/show_bug.cgi?id=95242
2505
2506         Reviewed by Benjamin Poulain.
2507
2508         Follow on fix for Mac EWS - use objc-runtime.h instead of runtime.h so
2509         that it finds the declaration for objc_msgSend.
2510
2511         * UIProcess/API/mac/PDFViewController.mm:
2512
2513 2012-08-31  Jon Lee  <jonlee@apple.com>
2514
2515         [Tests] Add basic tests to http/tests/notifications
2516         https://bugs.webkit.org/show_bug.cgi?id=95493
2517         <rdar://problem/12209303>
2518
2519         Reviewed by Alexey Proskuryakov.
2520
2521         Simplify the passing of the permission policy to just a boolean instead of converting it
2522         back and forth from the NotificationClient::Permission enum.
2523
2524         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Move the declaration to the section
2525         of functions that are TestRunner SPI.
2526         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2527         (WebKit::InjectedBundle::setWebNotificationPermission): Use a boolean.
2528         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
2529         (WebKit::NotificationPermissionRequestManager::setPermissionLevelForTesting):
2530         * WebProcess/Notifications/NotificationPermissionRequestManager.h:
2531         (NotificationPermissionRequestManager):
2532
2533         * win/WebKit2.vcproj: Add WKNotificationPermissionRequest.{h,cpp}.
2534         * win/WebKit2Generated.make: Export WKNotificationPermissionRequest.h.
2535
2536 2012-08-31  Balazs Kelemen  <kbalazs@webkit.org>
2537
2538         [Qt] ASSERT(m_useFixedLayout) in WebPage when using QRawWebView without setting fixed layout
2539         https://bugs.webkit.org/show_bug.cgi?id=95557
2540
2541         Reviewed by Noam Rosenthal.
2542
2543         Let QRawWebView work with non-fixed layout size.
2544
2545         * UIProcess/API/qt/raw/qrawwebview.cpp:
2546         (QRawWebView::setSize): Also put the member assigment into
2547         the point where the new size is ensured to be committed.
2548
2549 2012-08-31  Balazs Kelemen  <kbalazs@webkit.org>
2550
2551         [Qt] LayerTreeRenderer::callOnMainTread method name is misleading
2552         https://bugs.webkit.org/show_bug.cgi?id=95558
2553
2554         Reviewed by Kenneth Rohde Christiansen.
2555
2556         Fix the typo in the function name so callers will really call this
2557         and not WTF::callOnMainThread. Renamed to dispatchOnMainThread to
2558         make it clear that these things are not the same.
2559
2560         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2561         (WebKit::LayerTreeRenderer::dispatchOnMainThread):
2562         (WebKit::LayerTreeRenderer::flushLayerChanges):
2563         (WebKit::LayerTreeRenderer::purgeGLResources):
2564         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2565         (LayerTreeRenderer):
2566
2567 2012-08-31  Brady Eidson  <beidson@apple.com>
2568
2569         REGRESSION (127047): Crash in PluginProxy::windowVisibilityChanged when changing tabs
2570         <rdar://problem/12211180> and https://bugs.webkit.org/show_bug.cgi?id=95515
2571
2572         Reviewed by Dan Bernstein.
2573
2574         Plug-ins created in background tabs don't get initialized until they first become visible,
2575         so telling them they are now invisible leads to messaging on behalf of an uninitialized plug-in.
2576
2577         Many other methods related to visibility and focus only call through if the plug-in is initialized,
2578         so setWindowIsVisible should do the same.
2579
2580         * WebProcess/Plugins/PluginView.cpp:
2581         (WebKit::PluginView::setWindowIsVisible): Only tell initialized plug-ins of window visibility changes.
2582
2583 2012-08-31  Milian Wolff  <milian.wolff@kdab.com>
2584
2585         [Qt] QNX does not support SOCK_SEQPACKET socket type for socketpair in ProcessLauncherQt
2586         https://bugs.webkit.org/show_bug.cgi?id=95553
2587
2588         Reviewed by Simon Hausmann.
2589
2590         Calling socketpair with SOCK_SEQPACKET socket type fails on QNX with an error 241 (EPROTOTYPE),
2591         as can be seen by the following debug output: "Creation of socket failed with errno: 241".
2592         A test app shows that SOCK_DGRAM works properly on QNX, thus use it instead of SOCK_SEQPACKET.
2593
2594         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
2595
2596 2012-08-30  Mark Hahnenberg  <mhahnenberg@apple.com>
2597
2598         ~JSNPObject should call invalidate() if it hasn't been called already
2599         https://bugs.webkit.org/show_bug.cgi?id=95497
2600
2601         Reviewed by Geoffrey Garen.
2602
2603         Finalization is no longer eager, just like destruction, so the original intent behind 
2604         this ASSERT in ~JSNPObject is no longer relevant. Therefore, we can just call invalidate() 
2605         ourselves in ~JSNPObject.
2606
2607         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2608         (WebKit::JSNPObject::~JSNPObject):
2609
2610 2012-08-30  Sam Weinig  <sam@webkit.org>
2611
2612         Allow dynamic mach-lookup extensions in the WebProcess
2613         <rdar://problem/12207996>
2614
2615         Reviewed by Gavin Barraclough.
2616
2617         Like we allow file read/write dynamic sandbox extensions, we should allow
2618         mach-lookup extensions.
2619
2620         * WebProcess/com.apple.WebProcess.sb.in:
2621
2622 2012-08-30  Geoffrey Garen  <ggaren@apple.com>
2623
2624         Use one object instead of two for closures, eliminating ScopeChainNode
2625         https://bugs.webkit.org/show_bug.cgi?id=95501
2626
2627         Reviewed by Filip Pizlo.
2628
2629         Mechanical changes to update for JSC interface change.
2630
2631 2012-08-30  JungJik Lee  <jungjik.lee@samsung.com>
2632
2633         [EFL][WK2] Add WebMemorySampler feature.
2634         https://bugs.webkit.org/show_bug.cgi?id=91214
2635
2636         Reviewed by Kenneth Rohde Christiansen.
2637
2638         Add WebMemorySampler feature to EFL port. WebMemorySampler records memory usage of
2639         WebProcess and UI Process and also it records application memory status in real time.
2640         Included items on the result are JIT, JS heap, fastmalloc bytes and
2641         application memory info from /proc/process_id/statm.
2642
2643         * PlatformEfl.cmake:
2644         * Shared/linux/WebMemorySamplerLinux.cpp: Added.
2645         (WebKit):
2646         (ApplicationMemoryStats):
2647         (WebKit::nextToken):
2648         (WebKit::appendKeyValuePair):
2649         (WebKit::sampleMemoryAllocatedForApplication):
2650         (WebKit::WebMemorySampler::processName):
2651         (WebKit::WebMemorySampler::sampleWebKit):
2652         (WebKit::WebMemorySampler::sendMemoryPressureEvent):
2653         * UIProcess/API/efl/ewk_context.cpp:
2654         (_Ewk_Context::_Ewk_Context):
2655
2656 2012-08-30  Pratik Solanki  <psolanki@apple.com>
2657
2658         objc_msgSend and IMP should be cast appropriately before using
2659         https://bugs.webkit.org/show_bug.cgi?id=95242
2660
2661         Reviewed by Benjamin Poulain.
2662
2663         Use wtfObjcMsgSend and wtfCallIMP templates which do appropriate casts
2664         to a function pointer with right types when calling objc_msgSend and an
2665         IMP method directly.
2666
2667         * UIProcess/API/mac/PDFViewController.mm:
2668         (WebKit::PDFViewScrollView_scrollWheel):
2669
2670 2012-08-30  Benjamin Poulain  <bpoulain@apple.com>
2671
2672         Replace JSC::UString by WTF::String
2673         https://bugs.webkit.org/show_bug.cgi?id=95271
2674
2675         Reviewed by Geoffrey Garen.
2676
2677         Update to code to switch from UString to String.
2678
2679         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
2680         (WebKit::JSNPMethod::finishCreation):
2681         * WebProcess/Plugins/Netscape/JSNPMethod.h:
2682         (WebKit::JSNPMethod::create):
2683         (JSNPMethod):
2684         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2685         (WebKit::npIdentifierFromIdentifier):
2686         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
2687         (WebKit::NPRuntimeObjectMap::evaluate):
2688         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
2689
2690 2012-08-29  Mark Hahnenberg  <mhahnenberg@apple.com>
2691
2692         JSNPObject doesn't always protect its data when calling into plugin code
2693         https://bugs.webkit.org/show_bug.cgi?id=95394
2694
2695         Reviewed by Brady Eidson.
2696
2697         We need to use NPRuntimeObjectMap::PluginProtector when calling into plugin code since 
2698         there's no telling what the plugin will do, including destroying itself.
2699
2700         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2701         (WebKit::JSNPObject::getOwnPropertySlot):
2702         (WebKit::JSNPObject::getOwnPropertyDescriptor):
2703
2704 2012-08-30  Mike Sierra  <mike.sierra@nokia.com>
2705
2706         [QT][WK2] webview API doc
2707         https://bugs.webkit.org/show_bug.cgi?id=81701
2708
2709         Reviewed by Simon Hausmann.
2710
2711         Various improvements and additions to the documentation of the QML WebView element.
2712
2713         * UIProcess/API/qt/qquickwebview.cpp:
2714
2715 2012-08-29  Kangil Han  <kangil.han@samsung.com>
2716
2717         [EFL][WK2] Replace PageClientImpl with ewk view in constructor of EflViewportHandler.
2718         https://bugs.webkit.org/show_bug.cgi?id=95408
2719
2720         Reviewed by Gyuyoung Kim.
2721
2722         To keep consistency of implementation, derived classes(from ewk view) should have view reference.
2723         From this, derived classes would have less interference from changes that would happen in port specific classes, i.e. PageClientImpl.
2724
2725         * UIProcess/API/efl/EflViewportHandler.cpp:
2726         (WebKit::EflViewportHandler::EflViewportHandler):
2727         (WebKit::EflViewportHandler::drawingArea):
2728         (WebKit):
2729         (WebKit::EflViewportHandler::updateViewportSize):
2730         * UIProcess/API/efl/EflViewportHandler.h:
2731         (WebKit::EflViewportHandler::create):
2732         (EflViewportHandler):
2733         * UIProcess/API/efl/ewk_view.cpp:
2734         (_ewk_view_initialize):
2735
2736 2012-08-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2737
2738         [WK2] Use ASCIILiteral hotness for DEFINE_STATIC_LOCAL string
2739         https://bugs.webkit.org/show_bug.cgi?id=95318
2740
2741         Reviewed by Benjamin Poulain.
2742
2743         As recommended by http://trac.webkit.org/wiki/EfficientStrings,
2744         WebKit2 needs to use ASCIILiteral for the string of DEFINE_STATIC_LOCAL.
2745
2746         * Shared/WebError.cpp:
2747         (WebKit::WebError::webKitErrorDomain):
2748         * Shared/WebPreferencesStore.cpp:
2749         (WebPreferencesKey):
2750         * UIProcess/InspectorServer/WebInspectorServer.cpp:
2751         (WebKit::WebInspectorServer::didReceiveWebSocketUpgradeHTTPRequest):
2752         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
2753         (WebKit::remoteInspectorPagePath):
2754         * UIProcess/WebDatabaseManagerProxy.cpp:
2755         (WebKit::WebDatabaseManagerProxy::originKey):
2756         (WebKit::WebDatabaseManagerProxy::originQuotaKey):
2757         (WebKit::WebDatabaseManagerProxy::originUsageKey):
2758         (WebKit::WebDatabaseManagerProxy::databaseDetailsKey):
2759         (WebKit::WebDatabaseManagerProxy::databaseDetailsNameKey):
2760         (WebKit::WebDatabaseManagerProxy::databaseDetailsDisplayNameKey):
2761         (WebKit::WebDatabaseManagerProxy::databaseDetailsExpectedUsageKey):
2762         (WebKit::WebDatabaseManagerProxy::databaseDetailsCurrentUsageKey):
2763         * UIProcess/WebPageProxy.cpp:
2764         (WebKit::WebPageProxy::executeEditCommand):
2765         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2766         (WebKit::WebEditorClient::didBeginEditing):
2767         (WebKit::WebEditorClient::respondToChangedContents):
2768         (WebKit::WebEditorClient::respondToChangedSelection):
2769         (WebKit::WebEditorClient::didEndEditing):
2770         * WebProcess/WebProcess.cpp:
2771         (WebKit::getWebCoreMemoryCacheStatistics):
2772
2773 2012-08-29  Luciano Wolf  <luciano.wolf@openbossa.org>
2774
2775         [Qt][WK2] ApplicationCache LayoutTests failed
2776         https://bugs.webkit.org/show_bug.cgi?id=69541
2777
2778         Reviewed by Kenneth Rohde Christiansen.
2779
2780         Returns defaultDiskCacheDirectory when no cache directory was provided.
2781         It's used by setOfflineWebApplicationCacheEnabled method that won't work
2782         with an invalid cache directory.
2783
2784         * UIProcess/qt/WebContextQt.cpp:
2785         (WebKit::WebContext::applicationCacheDirectory):
2786
2787 2012-08-29  José Dapena Paz  <jdapena@igalia.com>
2788
2789         [Gtk] Process Gtk 3.4 smooth scroll events properly.
2790         https://bugs.webkit.org/show_bug.cgi?id=88070
2791
2792         Gtk 3.3.18 added smooth scroll events, adding a new scroll direction that
2793         provides detailed delta information.
2794
2795         Added GDK_SMOOTH_SCROLL_MASK to the events listened, and added
2796         code to process properly the new direction GDK_SCROLL_SMOOTH and
2797         its deltas.
2798
2799         Reviewed by Martin Robinson.
2800
2801         * Shared/gtk/WebEventFactory.cpp:
2802         (WebKit::WebEventFactory::createWebWheelEvent):
2803         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2804         (webkitWebViewBaseRealize):
2805
2806 2012-08-29  Brady Eidson  <beidson@apple.com>
2807
2808         REGRESSION: Not sending NPP_SetWindow is causing Flash to not throttle itself
2809         <rdar://problem/12133021> and https://bugs.webkit.org/show_bug.cgi?id=95274
2810
2811         Reviewed by Sam Weinig.
2812
2813         * UIProcess/API/mac/WKView.mm:
2814         (-[WKView viewDidMoveToWindow]): Previously we'd only update window visibility when the window is hidden.
2815           Now we also update window visibility when the window is shown.
2816
2817         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2818         (WebKit::NetscapePlugin::callSetWindowInvisible): Call set window with a manufactured empty clip rect to tell
2819           the plug-in that it is complete hidden.
2820         (WebKit):
2821         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2822         (NetscapePlugin):
2823         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
2824         (WebKit::NetscapePlugin::windowVisibilityChanged): Call "callSetWindow" or "callSetWindowInvisible" as appropriate.
2825
2826         * WebProcess/Plugins/PluginView.cpp:
2827         (WebKit::PluginView::setWindowIsVisible): Tell the plugin that its visibility changed.
2828         (WebKit::PluginView::viewGeometryDidChange): Grab a clip rect that - although incorrect - at least is correct if
2829           the PluginView is completely hidden.
2830
2831 2012-08-29  Jon Lee  <jonlee@apple.com>
2832
2833         Build patch for Qt
2834
2835         * Target.pri: Missing WKMutableArray.cpp.
2836
2837 2012-08-29  Jon Lee  <jonlee@apple.com>
2838
2839         Build patch for Qt.
2840
2841         * Target.pri: Export WKArray and WKMutableArray for Qt.
2842
2843 2012-08-29  Jon Lee  <jonlee@apple.com>
2844
2845         Added missing exports for Windows.
2846
2847         * win/WebKit2Generated.make:
2848
2849 2012-08-29  Jon Lee  <jonlee@apple.com>
2850
2851         Windows build fix.
2852
2853         * win/WebKit2Generated.make: Export WKNotificationManager.h.
2854
2855 2012-08-29  Jon Lee  <jonlee@apple.com>
2856
2857         [WK2] Add SPI to retrieve internal IDs for web notifications
2858         https://bugs.webkit.org/show_bug.cgi?id=95100
2859         <rdar://problem/12180208>
2860
2861         Reviewed by Alexey Proskuryakov.
2862
2863         This is work toward providing Mac support for web notifications in DRT and WTR (77969).
2864
2865         Add function to retrieve the internal ID for a notification. This is needed by tests to support simulating
2866         a user click on a notification.
2867
2868         * DerivedSources.pri: Expose JSNotification.h as private header.
2869         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
2870         (WKBundleGetWebNotificationID): Calls into notification manager to get internal ID.
2871         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Add WKBundleGetWebNotificationID() to be able
2872         retrieve notification ID.
2873         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2874         (WebKit::InjectedBundle::webNotificationID):
2875         (WebKit):
2876         * WebProcess/InjectedBundle/InjectedBundle.h:
2877         (InjectedBundle):
2878         * WebProcess/Notifications/WebNotificationManager.cpp:
2879         (WebKit::WebNotificationManager::notificationIDForTesting):
2880         (WebKit):
2881         * WebProcess/Notifications/WebNotificationManager.h:
2882         (WebNotificationManager):
2883
2884 2012-08-28  Martin Robinson  <mrobinson@igalia.com>
2885
2886         [GTK] Enable the edge distance anti-aliasing for accelerated compositing layers
2887         https://bugs.webkit.org/show_bug.cgi?id=95272
2888
2889         Reviewed by No'am Rosenthal.
2890
2891         Turn on edge-distance anti-aliasing for GTK+ WebKit2. This
2892         improves the quality of layer rendering.
2893
2894         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2895         (WebKit::LayerTreeHostGtk::initialize):
2896
2897 2012-08-28  Kangil Han  <kangil.han@samsung.com>
2898
2899         [WK2] Use explicit constructor in PageClientImpl.
2900         https://bugs.webkit.org/show_bug.cgi?id=95170
2901
2902         Reviewed by Darin Adler.
2903
2904         Added explicit keyword in constructor of PageClientImpl in order to avoid implicit type conversion.
2905
2906         * UIProcess/API/gtk/PageClientImpl.h:
2907         (PageClientImpl):
2908         * UIProcess/API/mac/PageClientImpl.h:
2909         (PageClientImpl):
2910
2911 2012-08-28  Rik Cabanier  <cabanier@adobe.com>
2912
2913         Add ENABLE_CSS_COMPOSITING flag to WebKit2 project
2914         https://bugs.webkit.org/show_bug.cgi?id=95227
2915
2916         Reviewed by Dirk Schulze.
2917
2918         The WebKit2 project was not updated to compile with the CSS_COMPOSITING flag.
2919         This caused crashes when the webkit2 code had to use that flag.
2920
2921         * Configurations/FeatureDefines.xcconfig:
2922
2923 2012-08-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2924
2925         Unreviewed, rolling out r126914.
2926         http://trac.webkit.org/changeset/126914
2927         https://bugs.webkit.org/show_bug.cgi?id=95239
2928
2929         it breaks everything and fixes nothing (Requested by pizlo on
2930         #webkit).
2931
2932         * Platform/CoreIPC/ArgumentCoders.h:
2933         * Platform/CoreIPC/Connection.cpp:
2934         (CoreIPC::Connection::SyncMessageState::getOrCreate):
2935         (CoreIPC::Connection::waitForMessage):
2936         (CoreIPC::Connection::processIncomingMessage):
2937         * Platform/gtk/WorkQueueGtk.cpp:
2938         (WorkQueue::registerEventSourceHandler):
2939         (WorkQueue::unregisterEventSourceHandler):
2940         * Platform/mac/WorkQueueMac.cpp:
2941         (WorkQueue::unregisterMachPortEventHandler):
2942         * Shared/Plugins/NPRemoteObjectMap.cpp:
2943         (WebKit::NPRemoteObjectMap::pluginDestroyed):
2944         * Shared/UserMessageCoders.h:
2945         (WebKit::UserMessageEncoder::baseEncode):
2946         * Shared/WebPreferencesStore.cpp:
2947         (WebKit::valueForKey):
2948         (WebKit::WebPreferencesStore::getBoolValueForKey):
2949         * Shared/mac/WebCoreArgumentCodersMac.mm:
2950         (CoreIPC::::decode):
2951         * Shared/qt/ArgumentCodersQt.cpp:
2952         (CoreIPC::::decode):
2953         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
2954         (CoreIPC::::decode):
2955         * UIProcess/API/efl/ewk_back_forward_list.cpp:
2956         (_Ewk_Back_Forward_List::~_Ewk_Back_Forward_List):
2957         * UIProcess/API/efl/ewk_context.cpp:
2958         (_Ewk_Context::~_Ewk_Context):
2959         * UIProcess/API/efl/ewk_view.cpp:
2960         (_ewk_view_priv_loading_resources_clear):
2961         * UIProcess/API/gtk/WebKitWebView.cpp:
2962         (webkit_web_view_get_subresources):
2963         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2964         (webkitWebViewBaseContainerForall):
2965         * UIProcess/API/mac/WKPrintingView.mm:
2966         (-[WKPrintingView _expectedPreviewCallbackForRect:]):
2967         (pageDidDrawToPDF):
2968         (-[WKPrintingView _drawPreview:]):
2969         * UIProcess/API/mac/WKView.mm:
2970         (commandNameForSelector):
2971         (-[WKView validateUserInterfaceItem:]):
2972         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
2973         (WebKit::CoordinatedBackingStore::updateTile):
2974         (WebKit::CoordinatedBackingStore::texture):
2975         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
2976         (WebKit::CoordinatedBackingStore::commitTileOperations):
2977         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2978         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
2979         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2980         (WebKit::LayerTreeRenderer::adjustPositionForFixedLayers):
2981         (WebKit::LayerTreeRenderer::syncCanvas):
2982         (WebKit::LayerTreeRenderer::setLayerChildren):
2983         (WebKit::LayerTreeRenderer::setLayerFilters):
2984         (WebKit::LayerTreeRenderer::setLayerState):
2985         (WebKit::LayerTreeRenderer::assignImageToLayer):
2986         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
2987         (WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests):
2988         * UIProcess/InspectorServer/WebInspectorServer.cpp:
2989         (WebKit::WebInspectorServer::~WebInspectorServer):
2990         (WebKit::WebInspectorServer::registerPage):
2991         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
2992         (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
2993         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
2994         (WebKit::WebInspectorServer::buildPageList):
2995         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
2996         (WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests):
2997         * UIProcess/Plugins/PluginProcessProxy.cpp:
2998         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
2999         * UIProcess/WebContext.cpp:
3000         (WebKit::createDictionaryFromHashMap):
3001         * UIProcess/WebIconDatabase.cpp:
3002         (WebKit::WebIconDatabase::didFinishURLImport):
3003         * UIProcess/WebIntentData.cpp:
3004         (WebKit::WebIntentData::extras):
3005         * UIProcess/WebProcessProxy.cpp:
3006         (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
3007         (WebKit::WebProcessProxy::addBackForwardItem):
3008         (WebKit::WebProcessProxy::frameCountInPage):
3009         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
3010         (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
3011         (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
3012         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
3013         (WebKit::InjectedBundleNodeHandle::getOrCreate):
3014         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
3015         (WebKit::InjectedBundleRangeHandle::getOrCreate):
3016         * WebProcess/InjectedBundle/InjectedBundleIntent.cpp:
3017         (WebKit::InjectedBundleIntent::extras):
3018         * WebProcess/Notifications/WebNotificationManager.cpp:
3019         (WebKit::WebNotificationManager::policyForOrigin):
3020         (WebKit::WebNotificationManager::show):
3021         (WebKit::WebNotificationManager::clearNotifications):
3022         (WebKit::WebNotificationManager::removeNotificationFromContextMap):
3023         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3024         (WebKit::NPRuntimeObjectMap::invalidate):
3025         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3026         (WebKit::NetscapePlugin::destroyStream):
3027         (WebKit::NetscapePlugin::unscheduleTimer):
3028         (WebKit::NetscapePlugin::frameDidFinishLoading):
3029         (WebKit::NetscapePlugin::frameDidFail):
3030         * WebProcess/Plugins/PluginView.cpp:
3031         (WebKit::buildHTTPHeaders):
3032         (WebKit::PluginView::~PluginView):
3033         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3034         (WebCore::CoordinatedGraphicsLayer::layerByID):
3035         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3036         (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
3037         (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
3038         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
3039         (WebKit::WebBackForwardListProxy::removeItem):
3040         * WebProcess/WebPage/mac/WebPageMac.mm:
3041         (WebKit::commandNameForSelectorName):
3042         * WebProcess/WebProcess.cpp:
3043         (WebKit::WebProcess::visitedLinkStateChanged):
3044         (WebKit::WebProcess::allVisitedLinkStateChanged):
3045         (WebKit::WebProcess::focusedWebPage):
3046         (WebKit::WebProcess::createWebPage):
3047         (WebKit::WebProcess::webPageGroup):
3048         (WebKit::fromCountedSetToHashMap):
3049         (WebKit::WebProcess::setTextCheckerState):
3050
3051 2012-08-28  Alexey Proskuryakov  <ap@apple.com>
3052
3053         [WK2] Expose process model as API
3054         https://bugs.webkit.org/show_bug.cgi?id=95228
3055
3056         Reviewed by Jon Honeycutt.
3057
3058         * UIProcess/API/C/WKAPICast.h:
3059         (WebKit::toProcessModel):
3060         (WebKit::toAPI):
3061         Convert ProcessModel values.
3062
3063         * UIProcess/API/C/WKContext.cpp:
3064         (WKContextSetProcessModel):
3065         (WKContextGetProcessModel):
3066         * UIProcess/API/C/WKContext.h:
3067         * UIProcess/WebContext.cpp: (WebKit::WebContext::setProcessModel):
3068         * UIProcess/WebContext.h:
3069         Added a setter and a getter. Setting process model is only allowed when there are
3070         no processes yet - that's checked with a CRASH to guarantee that clients using
3071         production builds of WebKit2 don't misstep.
3072
3073 2012-08-28  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
3074
3075         Rename first/second to key/value in HashMap iterators
3076         https://bugs.webkit.org/show_bug.cgi?id=82784
3077
3078         Reviewed by Eric Seidel.
3079
3080         * Platform/CoreIPC/ArgumentCoders.h:
3081         * Platform/CoreIPC/Connection.cpp:
3082         (CoreIPC::Connection::SyncMessageState::getOrCreate):
3083         (CoreIPC::Connection::waitForMessage):
3084         (CoreIPC::Connection::processIncomingMessage):
3085         * Platform/gtk/WorkQueueGtk.cpp:
3086         (WorkQueue::registerEventSourceHandler):
3087         (WorkQueue::unregisterEventSourceHandler):
3088         * Platform/mac/WorkQueueMac.cpp:
3089         (WorkQueue::unregisterMachPortEventHandler):
3090         * Shared/Plugins/NPRemoteObjectMap.cpp:
3091         (WebKit::NPRemoteObjectMap::pluginDestroyed):
3092         * Shared/UserMessageCoders.h:
3093         (WebKit::UserMessageEncoder::baseEncode):
3094         * Shared/WebPreferencesStore.cpp:
3095         (WebKit::valueForKey):
3096         (WebKit::WebPreferencesStore::getBoolValueForKey):
3097         * Shared/mac/WebCoreArgumentCodersMac.mm:
3098         (CoreIPC::::decode):
3099         * Shared/qt/ArgumentCodersQt.cpp:
3100         (CoreIPC::::decode):
3101         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
3102         (CoreIPC::::decode):
3103         * UIProcess/API/efl/ewk_back_forward_list.cpp:
3104         (_Ewk_Back_Forward_List::~_Ewk_Back_Forward_List):
3105         * UIProcess/API/efl/ewk_context.cpp:
3106         (_Ewk_Context::~_Ewk_Context):
3107         * UIProcess/API/efl/ewk_view.cpp:
3108         (_ewk_view_priv_loading_resources_clear):
3109         * UIProcess/API/gtk/WebKitWebView.cpp:
3110         (webkit_web_view_get_subresources):
3111         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3112         (webkitWebViewBaseContainerForall):
3113         * UIProcess/API/mac/WKPrintingView.mm:
3114         (-[WKPrintingView _expectedPreviewCallbackForRect:]):
3115         (pageDidDrawToPDF):
3116         (-[WKPrintingView _drawPreview:]):
3117         * UIProcess/API/mac/WKView.mm:
3118         (commandNameForSelector):
3119         (-[WKView validateUserInterfaceItem:]):
3120         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
3121         (WebKit::CoordinatedBackingStore::updateTile):
3122         (WebKit::CoordinatedBackingStore::texture):
3123         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
3124         (WebKit::CoordinatedBackingStore::commitTileOperations):
3125         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
3126         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
3127         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3128         (WebKit::LayerTreeRenderer::adjustPositionForFixedLayers):
3129         (WebKit::LayerTreeRenderer::syncCanvas):
3130         (WebKit::LayerTreeRenderer::setLayerChildren):
3131         (WebKit::LayerTreeRenderer::setLayerFilters):
3132         (WebKit::LayerTreeRenderer::setLayerState):
3133         (WebKit::LayerTreeRenderer::assignImageToLayer):
3134         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
3135         (WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests):
3136         * UIProcess/InspectorServer/WebInspectorServer.cpp:
3137         (WebKit::WebInspectorServer::~WebInspectorServer):
3138         (WebKit::WebInspectorServer::registerPage):
3139         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
3140         (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
3141         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
3142         (WebKit::WebInspectorServer::buildPageList):
3143         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
3144         (WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests):
3145         * UIProcess/Plugins/PluginProcessProxy.cpp:
3146         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
3147         * UIProcess/WebContext.cpp:
3148         (WebKit::createDictionaryFromHashMap):
3149         * UIProcess/WebIconDatabase.cpp:
3150         (WebKit::WebIconDatabase::didFinishURLImport):
3151         * UIProcess/WebIntentData.cpp:
3152         (WebKit::WebIntentData::extras):
3153         * UIProcess/WebProcessProxy.cpp:
3154         (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
3155         (WebKit::WebProcessProxy::addBackForwardItem):
3156         (WebKit::WebProcessProxy::frameCountInPage):
3157         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
3158         (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
3159         (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
3160         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
3161         (WebKit::InjectedBundleNodeHandle::getOrCreate):
3162         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
3163         (WebKit::InjectedBundleRangeHandle::getOrCreate):
3164         * WebProcess/InjectedBundle/InjectedBundleIntent.cpp:
3165         (WebKit::InjectedBundleIntent::extras):
3166         * WebProcess/Notifications/WebNotificationManager.cpp:
3167         (WebKit::WebNotificationManager::policyForOrigin):
3168         (WebKit::WebNotificationManager::show):
3169         (WebKit::WebNotificationManager::clearNotifications):
3170         (WebKit::WebNotificationManager::removeNotificationFromContextMap):
3171         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3172         (WebKit::NPRuntimeObjectMap::invalidate):
3173         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3174         (WebKit::NetscapePlugin::destroyStream):
3175         (WebKit::NetscapePlugin::unscheduleTimer):
3176         (WebKit::NetscapePlugin::frameDidFinishLoading):
3177         (WebKit::NetscapePlugin::frameDidFail):
3178         * WebProcess/Plugins/PluginView.cpp:
3179         (WebKit::buildHTTPHeaders):
3180         (WebKit::PluginView::~PluginView):
3181         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3182         (WebCore::CoordinatedGraphicsLayer::layerByID):
3183         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3184         (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
3185         (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
3186         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
3187         (WebKit::WebBackForwardListProxy::removeItem):
3188         * WebProcess/WebPage/mac/WebPageMac.mm:
3189         (WebKit::commandNameForSelectorName):
3190         * WebProcess/WebProcess.cpp:
3191         (WebKit::WebProcess::visitedLinkStateChanged):
3192         (WebKit::WebProcess::allVisitedLinkStateChanged):
3193         (WebKit::WebProcess::focusedWebPage):
3194         (WebKit::WebProcess::createWebPage):
3195         (WebKit::WebProcess::webPageGroup):
3196         (WebKit::fromCountedSetToHashMap):
3197         (WebKit::WebProcess::setTextCheckerState):
3198
3199 2012-08-28  Jon Lee  <jonlee@apple.com>
3200
3201         [WK2] Bugs in maintenance of internal state when user decides whether to grant notification permissions
3202         https://bugs.webkit.org/show_bug.cgi?id=95220
3203         <rdar://problem/12189895>
3204
3205         Reviewed by Jessie Berlin.
3206
3207         A couple of the maps maintained by the request manager should have been cleaned up when the user decided on
3208         whether to grant a website permission to post notifications.
3209
3210         Also, the web process' copy of the permissions was not updated appropriately. This meant that in the
3211         permission callback, Notification.permission was not the same value as the permission value included as
3212         the first parameter of the callback.
3213
3214         This first surfaced as part of the work to bring Mac support for web notifications. I have a test that
3215         will check for regressions in this area, once all of that has been checked in (bug 77969).
3216
3217         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
3218         (WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision):
3219
3220 2012-08-28  Jon Lee  <jonlee@apple.com>
3221
3222         [WK2] Add SPI for injected bundle to manually set permissions
3223         https://bugs.webkit.org/show_bug.cgi?id=95127
3224         <rdar://problem/12182635>
3225
3226         Reviewed by Jessie Berlin.
3227
3228         This is work toward providing Mac support for web notifications in DRT and WTR (77969).
3229
3230         Add support functions to WebKit2 which maintain the map of permissions to origins for web notifications.
3231         For WebKit1 the map is managed by DumpRenderTree.
3232
3233         * WebProcess/InjectedBundle/InjectedBundle.h: Add TestRunner SPI.
3234         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3235         (WebKit::InjectedBundle::setWebNotificationPermission):
3236         (WebKit::InjectedBundle::removeAllWebNotificationPermissions):
3237
3238         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Expose as WK API. Also, rearrange the ordering of the
3239         functions so that it reflects the same order found in InjectedBundle.h.
3240         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
3241
3242         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
3243         (WebKit::NotificationPermissionRequestManager::setPermissionLevelForTesting): Manually set the permission
3244         level for an origin.
3245         (WebKit::NotificationPermissionRequestManager::removeAllPermissionsForTesting):
3246         * WebProcess/Notifications/NotificationPermissionRequestManager.h:
3247         (NotificationPermissionRequestManager):
3248         * WebProcess/Notifications/WebNotificationManager.cpp:
3249         (WebKit::WebNotificationManager::removeAllPermissionsForTesting): Clear the permission map.
3250         * WebProcess/Notifications/WebNotificationManager.h: Promote didUpdateNotificationDecision message as public
3251         function, so that NotificationPermissionRequestManager can update the permission map.
3252
3253 2012-08-28  Christophe Dumez  <christophe.dumez@intel.com>
3254
3255         [EFL] WebKit EFL updates view on HTTP 204 response
3256         https://bugs.webkit.org/show_bug.cgi?id=95199
3257
3258         Reviewed by Kenneth Rohde Christiansen.
3259
3260         Ignore HTTP responses which have status code equal
3261         to 204 (No Content).
3262
3263         * UIProcess/API/efl/ewk_view_policy_client.cpp:
3264         (decidePolicyForResponseCallback):
3265
3266 2012-08-28  Zeno Albisser  <zeno@webkit.org>
3267
3268         LayerTreeCoordinatorProxy should use uint64_t for surface key.
3269         https://bugs.webkit.org/show_bug.cgi?id=95175
3270
3271         GraphicsSurface tokens are of type uint64_t.
3272         Therefore LayerTreeCoordinatorProxy must use the same type to
3273         identify a GraphicsSurface/ShareableSurface.
3274
3275         Reviewed by Noam Rosenthal.
3276
3277         * Shared/ShareableSurface.h:
3278         (WebKit::ShareableSurface::Handle::graphicsSurfaceToken):
3279         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
3280         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
3281         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
3282         (LayerTreeCoordinatorProxy):
3283
3284 2012-08-28  Ryuan Choi  <ryuan.choi@samsung.com>
3285
3286         [EFL][WK2] Implement WebPopupMenuProxyEfl to support <select>
3287         https://bugs.webkit.org/show_bug.cgi?id=88616
3288
3289         Reviewed by Gyuyoung Kim.
3290
3291         Implemented popup menu proxy and interface for Efl.
3292
3293         Applications should implement popup menu by overriding
3294         smart class function to support select tag.
3295
3296         * PlatformEfl.cmake:
3297         * UIProcess/API/efl/EWebKit2.h: Included ewk_popup_menu_item.h
3298         * UIProcess/API/efl/PageClientImpl.cpp:
3299         (WebKit::PageClientImpl::createPopupMenuProxy):
3300         * UIProcess/API/efl/ewk_popup_menu_item.cpp: Added.
3301         (_Ewk_Popup_Menu_Item):
3302         (_Ewk_Popup_Menu_Item::_Ewk_Popup_Menu_Item):
3303         (ewk_popup_menu_item_new):
3304         (ewk_popup_menu_item_free):
3305         (ewk_popup_menu_item_type_get): Added API to retrieve type of item.
3306         (ewk_popup_menu_item_text_get): Added API to retrieve text of item.
3307         * UIProcess/API/efl/ewk_popup_menu_item.h: Added.
3308         * UIProcess/API/efl/ewk_popup_menu_item_private.h: Added.
3309         * UIProcess/API/efl/ewk_view.cpp:
3310         (_Ewk_View_Private_Data):
3311         (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
3312         (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
3313         (ewk_view_popup_menu_request): Added to call popup_menu_show, smart class function.
3314         (ewk_view_popup_menu_close): Added API to call popup_menu_hide, smart class function.
3315         (ewk_view_popup_menu_select): Added API to change selected index.
3316         * UIProcess/API/efl/ewk_view.h:
3317         Added smart class function for applications to override.
3318         * UIProcess/API/efl/ewk_view_private.h:
3319         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
3320         (EWK2UnitTest::EWK2UnitTestBase::EWK2UnitTestBase):
3321         (EWK2UnitTest::EWK2UnitTestBase::SetUp):
3322         (EWK2UnitTest::EWK2UnitTestBase::loadUrlSync):
3323         (EWK2UnitTest::EWK2UnitTestBase::waitUntilLoadFinished):
3324         Extracted from loadUrlSync for tests using ewk_view_html_string_load to
3325         share onLoadFinished.
3326         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
3327         (EWK2UnitTest::EWK2UnitTestBase::ewkViewClass):
3328         Added ewkViewClass to test smart methods such as popup_menu_show.
3329         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3330         (popup_menu_show):
3331         (TEST_F): Added a test case for ewk_view_popup_menu_select and related codes.
3332         * UIProcess/efl/WebPopupMenuProxyEfl.cpp: Added.
3333         (WebKit):
3334         (WebKit::WebPopupMenuProxyEfl::WebPopupMenuProxyEfl):
3335         (WebKit::WebPopupMenuProxyEfl::showPopupMenu):
3336         (WebKit::WebPopupMenuProxyEfl::hidePopupMenu):
3337         (WebKit::WebPopupMenuProxyEfl::valueChanged):
3338         * UIProcess/efl/WebPopupMenuProxyEfl.h: Added.
3339         (WebPopupMenuProxyEfl):
3340         (WebKit::WebPopupMenuProxyEfl::create):
3341
3342 2012-08-27  Kangil Han  <kangil.han@samsung.com>
3343
3344         [EFL][WK2] Fix PageClientImpl layer violation
3345         https://bugs.webkit.org/show_bug.cgi?id=94906
3346
3347         Reviewed by Gyuyoung Kim.
3348
3349         Given WK2 hierarchy, current PageClientImpl has violated API layer by having WebPageProxy.
3350         Subsequently, it has been given WebContext, static singleton object, in its argument unnecessarily.
3351         Therefore, this patch moved WebPageProxy from PageClientImpl to Ewk_View_Private_Data.
3352         Plus, WebContext was removed from PageClientImpl since it is not needed anymore.
3353         As a result, EFL has same form of PageClientImpl with other ports, i.e. gtk+ and mac.
3354         From API point of view, nothing has been changed because all things done locally.
3355
3356         * UIProcess/API/efl/PageClientImpl.cpp:
3357         (WebKit::PageClientImpl::PageClientImpl):
3358         (WebKit::PageClientImpl::createDrawingAreaProxy):
3359         * UIProcess/API/efl/PageClientImpl.h:
3360         (WebKit::PageClientImpl::create):
3361         (PageClientImpl):
3362         * UIProcess/API/efl/ewk_view.cpp:
3363         (_Ewk_View_Private_Data):
3364         (_ewk_view_smart_focus_in):
3365         (_ewk_view_smart_focus_out):
3366         (_ewk_view_smart_mouse_wheel):
3367         (_ewk_view_smart_mouse_down):
3368         (_ewk_view_smart_mouse_up):
3369         (_ewk_view_smart_mouse_move):
3370         (_ewk_view_smart_key_down):
3371         (_ewk_view_smart_key_up):
3372         (_ewk_view_smart_calculate):
3373         (_ewk_view_smart_color_set):
3374         (_ewk_view_initialize):
3375         (ewk_view_uri_update):
3376         (ewk_view_uri_set):
3377         (ewk_view_reload):
3378         (ewk_view_reload_bypass_cache):
3379         (ewk_view_stop):
3380         (ewk_view_title_get):
3381         (ewk_view_load_progress_get):
3382         (ewk_view_scale_set):
3383         (ewk_view_scale_get):
3384         (ewk_view_device_pixel_ratio_set):
3385         (ewk_view_device_pixel_ratio_get):
3386         (ewk_view_theme_set):
3387         (ewk_view_back):
3388         (ewk_view_forward):
3389         (ewk_view_intent_deliver):
3390         (ewk_view_back_possible):
3391         (ewk_view_forward_possible):
3392         (ewk_view_html_string_load):
3393         (ewk_view_page_get):
3394         (ewk_view_setting_encoding_custom_get):
3395         (ewk_view_setting_encoding_custom_set):
3396         (ewk_view_text_find):
3397         (ewk_view_text_find_highlight_clear):
3398
3399 2012-08-27  Sheriff Bot  <webkit.review.bot@gmail.com>
3400
3401         Unreviewed, rolling out r126836.
3402         http://trac.webkit.org/changeset/126836
3403         https://bugs.webkit.org/show_bug.cgi?id=95163
3404
3405         Broke all Apple ports, EFL, and Qt. (Requested by tkent on
3406         #webkit).
3407
3408         * Platform/CoreIPC/ArgumentCoders.h:
3409         * Platform/CoreIPC/Connection.cpp:
3410         (CoreIPC::Connection::SyncMessageState::getOrCreate):
3411         (CoreIPC::Connection::waitForMessage):
3412         (CoreIPC::Connection::processIncomingMessage):
3413         * Platform/gtk/WorkQueueGtk.cpp:
3414         (WorkQueue::registerEventSourceHandler):
3415         (WorkQueue::unregisterEventSourceHandler):
3416         * Platform/mac/WorkQueueMac.cpp:
3417         (WorkQueue::unregisterMachPortEventHandler):
3418         * Shared/Plugins/NPRemoteObjectMap.cpp:
3419         (WebKit::NPRemoteObjectMap::pluginDestroyed):
3420         * Shared/UserMessageCoders.h:
3421         (WebKit::UserMessageEncoder::baseEncode):
3422         * Shared/WebPreferencesStore.cpp:
3423         (WebKit::valueForKey):
3424         (WebKit::WebPreferencesStore::getBoolValueForKey):
3425         * Shared/mac/WebCoreArgumentCodersMac.mm:
3426         (CoreIPC::::decode):
3427         * Shared/qt/ArgumentCodersQt.cpp:
3428         (CoreIPC::::decode):
3429         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
3430         (CoreIPC::::decode):
3431         * UIProcess/API/efl/ewk_back_forward_list.cpp:
3432         (_Ewk_Back_Forward_List::~_Ewk_Back_Forward_List):
3433         * UIProcess/API/efl/ewk_context.cpp:
3434         (_Ewk_Context::~_Ewk_Context):
3435         * UIProcess/API/efl/ewk_view.cpp:
3436         (_ewk_view_priv_loading_resources_clear):
3437         * UIProcess/API/gtk/WebKitWebView.cpp:
3438         (webkit_web_view_get_subresources):
3439         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3440         (webkitWebViewBaseContainerForall):
3441         * UIProcess/API/mac/WKPrintingView.mm:
3442         (-[WKPrintingView _expectedPreviewCallbackForRect:]):
3443         (pageDidDrawToPDF):
3444         (-[WKPrintingView _drawPreview:]):
3445         * UIProcess/API/mac/WKView.mm:
3446         (commandNameForSelector):
3447         (-[WKView validateUserInterfaceItem:]):
3448         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
3449         (WebKit::CoordinatedBackingStore::updateTile):
3450         (WebKit::CoordinatedBackingStore::texture):
3451         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
3452         (WebKit::CoordinatedBackingStore::commitTileOperations):
3453         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
3454         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
3455         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3456         (WebKit::LayerTreeRenderer::adjustPositionForFixedLayers):
3457         (WebKit::LayerTreeRenderer::syncCanvas):
3458         (WebKit::LayerTreeRenderer::setLayerChildren):
3459         (WebKit::LayerTreeRenderer::setLayerFilters):
3460         (WebKit::LayerTreeRenderer::setLayerState):
3461         (WebKit::LayerTreeRenderer::assignImageToLayer):
3462         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
3463         (WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests):
3464         * UIProcess/InspectorServer/WebInspectorServer.cpp:
3465         (WebKit::WebInspectorServer::~WebInspectorServer):
3466         (WebKit::WebInspectorServer::registerPage):
3467         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
3468         (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
3469         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
3470         (WebKit::WebInspectorServer::buildPageList):
3471         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
3472         (WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests):
3473         * UIProcess/Plugins/PluginProcessProxy.cpp:
3474         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
3475         * UIProcess/WebContext.cpp:
3476         (WebKit::createDictionaryFromHashMap):
3477         * UIProcess/WebIconDatabase.cpp:
3478         (WebKit::WebIconDatabase::didFinishURLImport):
3479         * UIProcess/WebIntentData.cpp:
3480         (WebKit::WebIntentData::extras):
3481         * UIProcess/WebProcessProxy.cpp:
3482         (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
3483         (WebKit::WebProcessProxy::addBackForwardItem):
3484         (WebKit::WebProcessProxy::frameCountInPage):
3485         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
3486         (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
3487         (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
3488         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
3489         (WebKit::InjectedBundleNodeHandle::getOrCreate):
3490         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
3491         (WebKit::InjectedBundleRangeHandle::getOrCreate):
3492         * WebProcess/InjectedBundle/InjectedBundleIntent.cpp:
3493         (WebKit::InjectedBundleIntent::extras):
3494         * WebProcess/Notifications/WebNotificationManager.cpp:
3495         (WebKit::WebNotificationManager::policyForOrigin):
3496         (WebKit::WebNotificationManager::show):
3497         (WebKit::WebNotificationManager::clearNotifications):
3498         (WebKit::WebNotificationManager::removeNotificationFromContextMap):
3499         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3500         (WebKit::NPRuntimeObjectMap::invalidate):
3501         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3502         (WebKit::NetscapePlugin::destroyStream):
3503         (WebKit::NetscapePlugin::unscheduleTimer):
3504         (WebKit::NetscapePlugin::frameDidFinishLoading):
3505         (WebKit::NetscapePlugin::frameDidFail):
3506         * WebProcess/Plugins/PluginView.cpp:
3507         (WebKit::buildHTTPHeaders):
3508         (WebKit::PluginView::~PluginView):
3509         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3510         (WebCore::CoordinatedGraphicsLayer::layerByID):
3511         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3512         (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
3513         (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
3514         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
3515         (WebKit::WebBackForwardListProxy::removeItem):
3516         * WebProcess/WebPage/mac/WebPageMac.mm:
3517         (WebKit::commandNameForSelectorName):
3518         * WebProcess/WebProcess.cpp:
3519         (WebKit::WebProcess::visitedLinkStateChanged):
3520         (WebKit::WebProcess::allVisitedLinkStateChanged):
3521         (WebKit::WebProcess::focusedWebPage):
3522         (WebKit::WebProcess::createWebPage):
3523         (WebKit::WebProcess::webPageGroup):
3524         (WebKit::fromCountedSetToHashMap):
3525         (WebKit::WebProcess::setTextCheckerState):
3526
3527 2012-08-27  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
3528
3529         Rename first/second to key/value in HashMap iterators
3530         https://bugs.webkit.org/show_bug.cgi?id=82784
3531
3532         Reviewed by Eric Seidel.
3533
3534         * Platform/CoreIPC/ArgumentCoders.h:
3535         * Platform/CoreIPC/Connection.cpp:
3536         (CoreIPC::Connection::SyncMessageState::getOrCreate):
3537         (CoreIPC::Connection::waitForMessage):
3538         (CoreIPC::Connection::processIncomingMessage):
3539         * Platform/gtk/WorkQueueGtk.cpp:
3540         (WorkQueue::registerEventSourceHandler):
3541         (WorkQueue::unregisterEventSourceHandler):
3542         * Platform/mac/WorkQueueMac.cpp:
3543         (WorkQueue::unregisterMachPortEventHandler):
3544         * Shared/Plugins/NPRemoteObjectMap.cpp:
3545         (WebKit::NPRemoteObjectMap::pluginDestroyed):
3546         * Shared/UserMessageCoders.h:
3547         (WebKit::UserMessageEncoder::baseEncode):
3548         * Shared/WebPreferencesStore.cpp:
3549         (WebKit::valueForKey):
3550         (WebKit::WebPreferencesStore::getBoolValueForKey):
3551         * Shared/mac/WebCoreArgumentCodersMac.mm:
3552         (CoreIPC::::decode):
3553         * Shared/qt/ArgumentCodersQt.cpp:
3554         (CoreIPC::::decode):
3555         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
3556         (CoreIPC::::decode):
3557         * UIProcess/API/efl/ewk_back_forward_list.cpp:
3558         (_Ewk_Back_Forward_List::~_Ewk_Back_Forward_List):
3559         * UIProcess/API/efl/ewk_context.cpp:
3560         (_Ewk_Context::~_Ewk_Context):
3561         * UIProcess/API/efl/ewk_view.cpp:
3562         (_ewk_view_priv_loading_resources_clear):
3563         * UIProcess/API/gtk/WebKitWebView.cpp:
3564         (webkit_web_view_get_subresources):
3565         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3566         (webkitWebViewBaseContainerForall):
3567         * UIProcess/API/mac/WKPrintingView.mm:
3568         (-[WKPrintingView _expectedPreviewCallbackForRect:]):
3569         (pageDidDrawToPDF):
3570         (-[WKPrintingView _drawPreview:]):
3571         * UIProcess/API/mac/WKView.mm:
3572         (commandNameForSelector):
3573         (-[WKView validateUserInterfaceItem:]):
3574         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
3575         (WebKit::CoordinatedBackingStore::updateTile):
3576         (WebKit::CoordinatedBackingStore::texture):
3577         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
3578         (WebKit::CoordinatedBackingStore::commitTileOperations):
3579         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
3580         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
3581         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3582         (WebKit::LayerTreeRenderer::adjustPositionForFixedLayers):
3583         (WebKit::LayerTreeRenderer::syncCanvas):
3584         (WebKit::LayerTreeRenderer::setLayerChildren):
3585         (WebKit::LayerTreeRenderer::setLayerFilters):
3586         (WebKit::LayerTreeRenderer::setLayerState):
3587         (WebKit::LayerTreeRenderer::assignImageToLayer):
3588         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
3589         (WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests):
3590         * UIProcess/InspectorServer/WebInspectorServer.cpp:
3591         (WebKit::WebInspectorServer::~WebInspectorServer):
3592         (WebKit::WebInspectorServer::registerPage):
3593         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
3594         (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
3595         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
3596         (WebKit::WebInspectorServer::buildPageList):
3597         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
3598         (WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests):
3599         * UIProcess/Plugins/PluginProcessProxy.cpp:
3600         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
3601         * UIProcess/WebContext.cpp:
3602         (WebKit::createDictionaryFromHashMap):
3603         * UIProcess/WebIconDatabase.cpp:
3604         (WebKit::WebIconDatabase::didFinishURLImport):
3605         * UIProcess/WebIntentData.cpp:
3606         (WebKit::WebIntentData::extras):
3607         * UIProcess/WebProcessProxy.cpp:
3608         (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
3609         (WebKit::WebProcessProxy::addBackForwardItem):
3610         (WebKit::WebProcessProxy::frameCountInPage):
3611         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
3612         (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
3613         (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
3614         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
3615         (WebKit::InjectedBundleNodeHandle::getOrCreate):
3616         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
3617         (WebKit::InjectedBundleRangeHandle::getOrCreate):
3618         * WebProcess/InjectedBundle/InjectedBundleIntent.cpp:
3619         (WebKit::InjectedBundleIntent::extras):
3620         * WebProcess/Notifications/WebNotificationManager.cpp:
3621         (WebKit::WebNotificationManager::policyForOrigin):
3622         (WebKit::WebNotificationManager::show):
3623         (WebKit::WebNotificationManager::clearNotifications):
3624         (WebKit::WebNotificationManager::removeNotificationFromContextMap):
3625         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3626         (WebKit::NPRuntimeObjectMap::invalidate):
3627         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
3628         (WebKit::NetscapePlugin::destroyStream):
3629         (WebKit::NetscapePlugin::unscheduleTimer):
3630         (WebKit::NetscapePlugin::frameDidFinishLoading):
3631         (WebKit::NetscapePlugin::frameDidFail):
3632         * WebProcess/Plugins/PluginView.cpp:
3633         (WebKit::buildHTTPHeaders):
3634         (WebKit::PluginView::~PluginView):
3635         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3636         (WebCore::CoordinatedGraphicsLayer::layerByID):
3637         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3638         (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
3639         (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
3640         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
3641         (WebKit::WebBackForwardListProxy::removeItem):
3642         * WebProcess/WebPage/mac/WebPageMac.mm:
3643         (WebKit::commandNameForSelectorName):
3644         * WebProcess/WebProcess.cpp:
3645         (WebKit::WebProcess::visitedLinkStateChanged):
3646         (WebKit::WebProcess::allVisitedLinkStateChanged):
3647         (WebKit::WebProcess::focusedWebPage):
3648         (WebKit::WebProcess::createWebPage):
3649         (WebKit::WebProcess::webPageGroup):
3650         (WebKit::fromCountedSetToHashMap):
3651         (WebKit::WebProcess::setTextCheckerState):
3652
3653 2012-08-27  Simon Fraser  <simon.fraser@apple.com>
3654
3655         Make Force Repaint work with tiled backing store
3656         https://bugs.webkit.org/show_bug.cgi?id=95102
3657
3658         Reviewed by Dan Bernstein.
3659
3660         Have forceRepaint() call down to the tiled backing of each FrameView,
3661         so they can repaint.
3662
3663         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3664         (WebKit::TiledCoreAnimationDrawingArea::forceRepaint):
3665
3666 2012-08-27  Rafael Brandao  <rafael.lobo@openbossa.org>
3667
3668         [Qt] Fix typo in CoordinatedGraphicsLayer::syncAnimatedProperties
3669         https://bugs.webkit.org/show_bug.cgi?id=95085
3670
3671         Reviewed by Noam Rosenthal.
3672
3673         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp: The flag should be disabled
3674         once we process the sync for animated properties. Previously, it was never disabling it once enabled.
3675
3676 2012-08-27  Philippe Normand  <pnormand@igalia.com>
3677
3678         [GStreamer][Qt] WebAudio support
3679         https://bugs.webkit.org/show_bug.cgi?id=94806
3680
3681         Reviewed by Simon Hausmann.
3682
3683         New boolean webAudioEnabled WebSetting to be used at runtime to
3684         toggle WebAudio support on or off.
3685
3686         * UIProcess/API/qt/qwebpreferences.cpp:
3687         (QWebPreferencesPrivate::testAttribute):
3688         (QWebPreferencesPrivate::setAttribute):
3689         (QWebPreferences::webAudioEnabled):
3690         (QWebPreferences::setWebAudioEnabled):
3691         * UIProcess/API/qt/qwebpreferences_p.h:
3692         * UIProcess/API/qt/qwebpreferences_p_p.h:
3693
3694 2012-08-27  Simon Hausmann  <simon.hausmann@nokia.com>
3695
3696         [Qt][WK2] REGRESSION(r126067): It made qmltests::DoubleTapToZoom::test_basic() fail
3697         https://bugs.webkit.org/show_bug.cgi?id=94949
3698
3699         Reviewed by Kenneth Rohde Christiansen.
3700
3701         Use JSON to serialize the client rect for the async evaluateJavaScript call.
3702
3703         * UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:
3704
3705 2012-08-27  Simon Hausmann  <simon.hausmann@nokia.com>
3706
3707         [Qt] Fix failing QML2 auto tests due to conflicting signal declaration
3708         https://bugs.webkit.org/show_bug.cgi?id=95059
3709
3710         Reviewed by Kenneth Rohde Christiansen.
3711
3712         Don't define a scaleChanged signal when QQuickItem already declares one to notify about changes
3713         in the scale property. As it turns out there is not need for declaring a signal in the test case
3714         at all.
3715
3716         * UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:
3717         * UIProcess/API/qt/tests/qmltests/WebView/tst_fitToView.qml:
3718
3719 2012-08-27  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3720
3721         Rename RegisterProtocolHandler API to NavigatorContentUtils
3722         https://bugs.webkit.org/show_bug.cgi?id=94920
3723
3724         Reviewed by Adam Barth.
3725
3726         Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
3727
3728         * Configurations/FeatureDefines.xcconfig:
3729         * WebProcess/WebCoreSupport/WebNavigatorContentUtilsClient.h: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebRegisterProtocolHandlerClient.h.
3730         (WebKit):
3731         (WebNavigatorContentUtilsClient):
3732         (WebKit::WebNavigatorContentUtilsClient::~WebNavigatorContentUtilsClient):
3733         (WebKit::WebNavigatorContentUtilsClient::isProtocolHandlerRegistered):
3734         (WebKit::WebNavigatorContentUtilsClient::unregisterProtocolHandler):
3735
3736 2012-08-25  Vivek Galatage  <vivekgalatage@gmail.com>
3737
3738         WinCairo Build Broken due to missing export definitions
3739         https://bugs.webkit.org/show_bug.cgi?id=95007
3740
3741         Reviewed by Ryosuke Niwa.
3742
3743         Export symbols were missing from the def file for WinCairo port. Added
3744         these missing symbols to avoid build break
3745
3746         * win/WebKit2CFLite.def:
3747
3748 2012-08-24  Alexey Proskuryakov  <ap@apple.com>
3749
3750         <rdar://problem/12157689> REGRESSION: WebProcessProxy destructor is sometimes called recursively
3751         https://bugs.webkit.org/show_bug.cgi?id=94997
3752
3753         Reviewed by Dan Bernstein.
3754
3755         * UIProcess/WebContext.cpp: (WebKit::WebContext::disconnectProcess): Make sure that
3756         we don't try to delete WebProcessProxy while the vector still contains it. Previously,
3757         we used RefPtr::clear, which zeroes out the value before destructing, but doing that
3758         in every RefPtr destructor would be bad for performance.
3759
3760 2012-08-24  Benjamin Poulain  <bpoulain@apple.com>
3761
3762         Unify Number to StringImpl conversion
3763         https://bugs.webkit.org/show_bug.cgi?id=94879
3764
3765         Reviewed by Geoffrey Garen.
3766
3767         * win/WebKit2.def: Update the exported symbols.
3768
3769 2012-08-24  Andras Becsi  <andras.becsi@nokia.com>
3770
3771         [Qt][WK2] Fix custom device pixel ratio propagation and add QML API tests
3772         https://bugs.webkit.org/show_bug.cgi?id=88531
3773
3774         Reviewed by Kenneth Rohde Christiansen.
3775
3776         Defer setting the custom device pixel ratio until the page item has
3777         a valid size to make sure that the scale factor reaches the web process.
3778
3779         QML test based on patch by Alexander Færøy.
3780
3781         * UIProcess/API/qt/qquickwebview.cpp:
3782         (QQuickWebViewPrivate::QQuickWebViewPrivate):
3783         (QQuickWebViewPrivate::didRelaunchProcess):
3784         (QQuickWebViewPrivate::didChangeContentsSize):
3785         (QQuickWebViewFlickablePrivate::didChangeContentsSize):
3786         (QQuickWebViewExperimental::devicePixelRatio):
3787         (QQuickWebViewExperimental::setDevicePixelRatio):
3788         * UIProcess/API/qt/qquickwebview_p.h:
3789         * UIProcess/API/qt/qquickwebview_p_p.h:
3790         (QQuickWebViewPrivate):
3791         * UIProcess/API/qt/tests/qmltests/WebView/tst_devicePixelRatio.qml: Added.
3792           Test case for the QML device pixel ratio API.
3793
3794 2012-08-24  Kangil Han  <kangil.han@samsung.com>
3795
3796         [EFL] Fix compile warning
3797         https://bugs.webkit.org/show_bug.cgi?id=94930
3798
3799         Reviewed by Kenneth Rohde Christiansen.
3800
3801         Fixed compile warning.
3802
3803         * UIProcess/API/efl/ewk_back_forward_list.cpp:
3804         (ewk_back_forward_list_n_back_items_copy): NULL used in arithmetic [-Wpointer-arith]
3805         (ewk_back_forward_list_n_forward_items_copy): NULL used in arithmetic [-Wpointer-arith]
3806
3807 2012-08-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3808
3809         [EFL][WK2] Back-forward list API needs extension
3810         https://bugs.webkit.org/show_bug.cgi?id=94582
3811
3812         Reviewed by Kenneth Rohde Christiansen.
3813
3814         Added several new functions wrapping existing WK2 C back-forward list API
3815         and returning list of items preceding or following the current one.
3816         Corresponding API unit tests are also added.
3817
3818         * UIProcess/API/efl/ewk_back_forward_list.cpp:
3819         (createEinaList):
3820         (ewk_back_forward_list_n_back_items_copy):
3821         (ewk_back_forward_list_n_forward_items_copy):
3822         * UIProcess/API/efl/ewk_back_forward_list.h:
3823         * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
3824         (freeEinaList):
3825         (TEST_F):
3826
3827 2012-08-24  Michael Brüning  <michaelbruening@gmail.com>
3828
3829         [Qt][WK2] Make viewport related experimental.test properties encapsulated.
3830         https://bugs.webkit.org/show_bug.cgi?id=88320
3831
3832         Reviewed by Kenneth Rohde Christiansen.
3833
3834         Introducing a new viewport attribute to QWebKitTest to group the viewport related
3835         attributes into one QJsonObject. Also adding a static method to convert a QSizeF to
3836         a QJsonObject.
3837
3838         * UIProcess/API/qt/qwebkittest.cpp:
3839         (qSizeFToJsonObject):
3840         (QWebKitTest::viewport):
3841         (QWebKitTest::devicePixelRatio):
3842         (QWebKitTest::contentsScale):
3843         * UIProcess/API/qt/qwebkittest_p.h:
3844         * UIProcess/qt/QtViewportHandler.cpp:
3845         (WebKit::QtViewportHandler::viewportAttributesChanged):
3846
3847 2012-08-23  Frederik Gladhorn  <gladhorn@kde.org>
3848
3849         Make it possible to build WebKit with Python 3 (and 2)
3850         https://bugs.webkit.org/show_bug.cgi?id=94814
3851
3852         Reviewed by Ryosuke Niwa.
3853
3854         Exceptions need a hack to work with both.
3855         string.join was already deprecated in Python 2.
3856         Relative imports are no longer supported, use package name instead.
3857
3858         * Scripts/webkit2/messages.py:
3859         * Scripts/webkit2/parser.py:
3860
3861 2012-08-24  Mark Rowe  <mrowe@apple.com>
3862
3863         <http://webkit.org/b/94910> Copy the entire webkit2 module in to the WebKit2 framework wrapper.
3864
3865         Reviewed by Dan Bernstein.
3866
3867         This will allow relative imports within the webkit2 module to be removed in the future without
3868         requiring future changes to clients of the module.
3869
3870         * WebKit2.xcodeproj/project.pbxproj: Remove the webkit2 group from the project, and add it back
3871         as a folder reference. This allows the directory and its contents to be copied in to the PrivateHeaders
3872         directory. We also need to add a script phase to clean up any .pyc files that may be present in
3873         the module.
3874
3875 2012-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3876
3877         Unreviewed, rolling out r126542.
3878         http://trac.webkit.org/changeset/126542
3879         https://bugs.webkit.org/show_bug.cgi?id=94907
3880
3881         Broke WK2 build on OS X (Requested by tronical_ on #webkit).
3882
3883         * Scripts/webkit2/messages.py:
3884         * Scripts/webkit2/parser.py:
3885
3886 2012-08-23  Frederik Gladhorn  <gladhorn@kde.org>
3887
3888         Make it possible to build WebKit with Python 3 (and 2)
3889         https://bugs.webkit.org/show_bug.cgi?id=94814
3890
3891         Reviewed by Ryosuke Niwa.
3892
3893         Exceptions need a hack to work with both.
3894         string.join was already deprecated in Python 2.
3895         Relative imports are no longer supported, use package name instead.
3896
3897         * Scripts/webkit2/messages.py:
3898         * Scripts/webkit2/parser.py:
3899
3900 2012-08-23  Mark Hahnenberg  <mhahnenberg@apple.com>
3901
3902         Change behavior of MasqueradesAsUndefined to better accommodate DFG changes
3903         https://bugs.webkit.org/show_bug.cgi?id=93884
3904
3905         Reviewed by Filip Pizlo.
3906
3907         With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of  
3908         MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,  
3909         we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined  
3910         objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).  
3911         For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not  
3912         masquerade as undefined within frame B, but it will continue to masquerade in frame A.
3913
3914         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3915         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant): Passing ExecState to toBoolean call.
3916
3917 2012-08-23  Brady Eidson  <beidson@apple.com>
3918
3919         REGRESSION (r124815): PDF in frame does not display any more
3920         <rdar://problem/12063306> and https://bugs.webkit.org/show_bug.cgi?id=94869
3921
3922         Reviewed by Alexey Proskuryakov.
3923
3924         * WebProcess/Plugins/PDF/BuiltInPDFView.mm:
3925         (WebKit::BuiltInPDFView::initialize): Tell the controller that initialization was successful.
3926
3927 2012-08-23  Mark Rowe  <mrowe@apple.com>
3928
3929         Make WebKit2 build with the latest version of clang.
3930
3931         Reviewed by Dan Bernstein.
3932
3933         * Configurations/Base.xcconfig: Ensure that operator new isn't exported as a weak external symbol.
3934
3935 2012-08-22  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
3936
3937         [EFL] Use WTF_USE_SOUP instead BUILDING_SOUP__
3938         https://bugs.webkit.org/show_bug.cgi?id=94744
3939
3940         Reviewed by Gustavo Noronha Silva.
3941
3942         Use #if defined(WTF_USE_SOUP) instead of #if defined(BUILDING_SOUP__)
3943         since the former is used everywhere.
3944
3945         * Shared/API/c/WKBase.h:
3946
3947 2012-08-23  Christophe Dumez  <christophe.dumez@intel.com>
3948
3949         [EFL][WK2] Free ewk context data on program exit.
3950         https://bugs.webkit.org/show_bug.cgi?id=94808
3951
3952         Reviewed by Kenneth Rohde Christiansen.
3953
3954         Make sure the default Ewk_Context gets freed
3955         on program exit.
3956
3957         The patch also fixes leaking of WKContextRef
3958         inside Ewk_Context which should have been
3959         adopted.
3960
3961         * UIProcess/API/efl/ewk_context.cpp:
3962         (_Ewk_Context::_Ewk_Context):
3963         (ewk_context_default_get):
3964
3965 2012-08-23  Adrienne Walker  <enne@google.com>
3966
3967         Convert ScrollableArea ASSERT_NOT_REACHED virtuals
3968         https://bugs.webkit.org/show_bug.cgi?id=93306
3969
3970         Reviewed by Darin Adler.
3971
3972         Add implementations where necessary to make derived classes concrete.
3973         Add OVERRIDE for ScrollableArea functions.
3974
3975         * UIProcess/win/WebPopupMenuProxyWin.cpp:
3976         (WebKit::WebPopupMenuProxyWin::visibleHeight):
3977         (WebKit):
3978         (WebKit::WebPopupMenuProxyWin::visibleWidth):
3979         (WebKit::WebPopupMenuProxyWin::contentsSize):
3980         (WebKit::WebPopupMenuProxyWin::scrollableAreaBoundingBox):
3981         * UIProcess/win/WebPopupMenuProxyWin.h:
3982         (WebPopupMenuProxyWin):
3983         * WebProcess/Plugins/PDF/BuiltInPDFView.h:
3984
3985 2012-08-23  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3986
3987         [EFL][WK2] ewk_intent_request API test does not free Eina_List
3988         https://bugs.webkit.org/show_bug.cgi?id=94809
3989
3990         Reviewed by Kenneth Rohde Christiansen.
3991
3992         The used Eina_List should be freed due to ewk_intent_suggestions_get() documentation.
3993
3994         * UIProcess/API/efl/tests/test_ewk2_intents.cpp:
3995         (onIntentReceived):
3996
3997 2012-08-23  Andras Becsi  <andras.becsi@nokia.com>
3998
3999         [Qt][WK2] Helper functions used by the raw webview tests should not be guarded by HAVE_QTQUICK
4000
4001         Reviewed by Simon Hausmann.
4002
4003         This fixes the build if the QtQuick module is not present.
4004
4005         * UIProcess/API/qt/tests/util.cpp:
4006         (messageHandler):
4007         (suppressDebugOutput):
4008         * UIProcess/API/qt/tests/util.h:
4009
4010 2012-08-23  Carlos Garcia Campos  <cgarcia@igalia.com>
4011
4012         REGRESSION(r126306): it broke the plugin process
4013         https://bugs.webkit.org/show_bug.cgi?id=94797
4014
4015         Reviewed by Xan Lopez.
4016
4017         * GNUmakefile.am:
4018
4019 2012-08-23  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
4020
4021         [WK2] Refactoring: WebBackForwardList getters should be const
4022         https://bugs.webkit.org/show_bug.cgi?id=94711
4023
4024         Reviewed by Kenneth Rohde Christiansen.
4025
4026         Before the change were not consistent with each other
4027         (WebBackForwardList::entries() was const but WebBackForwardList::currentIndex() was not).
4028         Besides having not const getters is not a good practice in C++. (Please read
4029         Scott Meyers. Effective C++ (3rd edition). ISBN: 0-321-33487-6.
4030         Item 3: 'Use const whenever possible').
4031
4032         * UIProcess/WebBackForwardList.cpp:
4033         (WebKit::WebBackForwardList::backListCount):
4034         (WebKit::WebBackForwardList::forwardListCount):
4035         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
4036         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
4037         * UIProcess/WebBackForwardList.h:
4038         (WebKit::WebBackForwardList::currentIndex):
4039         (WebBackForwardList):
4040
4041 2012-08-22  Nikhil Bhargava  <nbhargava@google.com>
4042
4043         Reduce Font.h includes across project -- improves RenderObject.h compile time
4044         https://bugs.webkit.org/show_bug.cgi?id=93629
4045
4046         Reviewed by Eric Seidel.
4047
4048         Adds includes due to change in RenderStyle.h
4049
4050         * WebProcess/WebPage/mac/WebPageMac.mm:
4051
4052 2012-08-22  Beth Dakin  <bdakin@apple.com>
4053
4054         https://bugs.webkit.org/show_bug.cgi?id=94401
4055         Add support for making a web site become paginated using overflow: 
4056         paged-x | paged-y
4057         -and corresponding-
4058         <rdar://problem/11831783> 
4059
4060         Reviewed by Dave Hyatt.
4061
4062         WebCore::Page::Pagination is now just WebCore::Pagination.
4063         * Shared/WebPageCreationParameters.h:
4064         (WebPageCreationParameters):
4065         * UIProcess/API/C/WKPage.cpp:
4066         (WKPageSetPaginationMode):
4067         (WKPageGetPaginationMode):
4068         * UIProcess/WebPageProxy.cpp:
4069         (WebKit::WebPageProxy::WebPageProxy):
4070         (WebKit::WebPageProxy::setPaginationMode):
4071         * UIProcess/WebPageProxy.h:
4072         (WebPageProxy):
4073         (WebKit::WebPageProxy::paginationMode):
4074         * WebProcess/WebPage/WebPage.cpp:
4075         (WebKit::WebPage::setPaginationMode):
4076         (WebKit::WebPage::setPaginationBehavesLikeColumns):
4077         (WebKit::WebPage::setPageLength):
4078         (WebKit::WebPage::setGapBetweenPages):
4079         * WebProcess/WebPage/WebPage.h:
4080         (WebPage):
4081
4082 2012-08-22  Jer Noble  <jer.noble@apple.com>
4083
4084         Browser menu visible when calling webkitRequestFullscreen after user manually enters full screen mode
4085         https://bugs.webkit.org/show_bug.cgi?id=93892
4086
4087         Reviewed by Eric Carlson.
4088
4089         Allow the full screen window to "Join All Spaces", so that once it's original full screen space is destroyed,
4090         it can join the new one.
4091
4092         * UIProcess/mac/WKFullScreenWindowController.mm:
4093         (-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]):
4094
4095 2012-08-22  Alexey Proskuryakov  <ap@apple.com>
4096
4097         [WK2] Support posting injected bundle messages to a page
4098         https://bugs.webkit.org/show_bug.cgi?id=94630
4099
4100         Reviewed by Sam Weinig.
4101
4102         * Shared/APIClientTraits.cpp:
4103         * Shared/APIClientTraits.h:
4104         * Shared/CoreIPCSupport/InjectedBundleMessageKinds.h:
4105         * UIProcess/API/C/WKPage.cpp:
4106         (WKPagePostMessageToInjectedBundle):
4107         * UIProcess/API/C/WKPage.h:
4108         * UIProcess/WebPageProxy.cpp:
4109         (WebKit::WebPageProxy::postMessageToInjectedBundle):