<http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system...
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2012-07-11  Mark Rowe  <mrowe@apple.com>
2
3         <http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros
4
5         This removal was handled by a script that translates the relevant macros in to the equivalent checks
6         using the system availability macros.
7
8         Reviewed by Filip Pizlo.
9
10         * Shared/DictionaryPopupInfo.cpp:
11         * Shared/DictionaryPopupInfo.h:
12         * Shared/mac/PasteboardTypes.mm:
13         * Shared/mac/WebEventFactory.mm:
14         * UIProcess/API/mac/PDFViewController.mm:
15         * UIProcess/API/mac/PageClientImpl.mm:
16         * UIProcess/API/mac/WKView.mm:
17         * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h:
18         * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
19         * UIProcess/Launcher/mac/EnvironmentVariables.cpp:
20         * UIProcess/Launcher/mac/EnvironmentVariables.h:
21         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
22         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
23         * UIProcess/WebPageProxy.cpp:
24         * UIProcess/WebPageProxy.h:
25         * UIProcess/WebPageProxy.messages.in:
26         * UIProcess/mac/TextCheckerMac.mm:
27         * UIProcess/mac/WKFullScreenWindowController.mm:
28         * UIProcess/mac/WebContextMac.mm:
29         * UIProcess/mac/WebPageProxyMac.mm:
30         * WebKit2Prefix.h:
31         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
32         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
33         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
34         * WebProcess/WebCoreSupport/WebEditorClient.h:
35         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
36         * WebProcess/WebPage/WebPage.cpp:
37         * WebProcess/WebPage/WebPage.h:
38         * WebProcess/WebPage/WebPage.messages.in:
39         * WebProcess/WebPage/mac/WebPageMac.mm:
40         * WebProcess/com.apple.WebProcess.sb.in:
41         * WebProcess/mac/KeychainItemShimMethods.mm:
42         * WebProcess/mac/SecItemShimMethods.mm:
43         * WebProcess/mac/WebProcessMac.mm:
44         * WebProcess/mac/WebProcessMainMac.mm:
45         * WebProcess/mac/WebProcessShim.mm:
46
47 2012-07-11  Simon Fraser  <simon.fraser@apple.com>
48
49         pagesPerView param is misnamed for WKPageSetPageLength()
50         https://bugs.webkit.org/show_bug.cgi?id=91033
51
52         Rubber-stamped by Dan Bernstein.
53
54         The name of the second parameter to WKPageSetPageLength(),
55         'pagesPerView', was confusing; it's a page size (normally width)
56         in pixels.
57
58         * UIProcess/API/C/WKPagePrivate.h:
59
60 2012-07-11  Anders Carlsson  <andersca@apple.com>
61
62         Add -Wtautological-compare and -Wsign-compare warning flags
63         https://bugs.webkit.org/show_bug.cgi?id=90994
64
65         Reviewed by Mark Rowe.
66
67         * Configurations/Base.xcconfig:
68
69 2012-07-11  No'am Rosenthal  <noam.rosenthal@nokia.com>
70
71         [Qt][WK2] Test actual rendering results in API tests
72         https://bugs.webkit.org/show_bug.cgi?id=80609
73
74         Reviewed by Alexis Menard.
75
76         Added a very basic test to tst_QQuickWebView to make sure rendering actually occurs.
77
78         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
79         (tst_QQuickWebView):
80         (tst_QQuickWebView::basicRenderingSanity):
81
82 2012-07-11  Mark Rowe  <mrowe@apple.com>
83
84         Add a Mountain Lion version of libWebKitSystemInterface.a.
85
86         Reviewed by John Sullivan.
87
88         * Configurations/DebugRelease.xcconfig: Look for the library under its expected name.
89
90 2012-07-11  No'am Rosenthal  <noam.rosenthal@nokia.com>
91
92         [Qt] QRawWebView should notify when rendering is done, so that pixel results can be grabbed at the appropriate moment.
93         https://bugs.webkit.org/show_bug.cgi?id=90641
94
95         Reviewed by Jocelyn Turcotte.
96
97         Implement LayerTreeCoordinator::forceRepaint with logic equivalent to the one in
98         LayerTreeHostCA. If we flush the layers synchronously when forceRepaint is called,when
99         WKPageForceRepaint returns we are guaranteed to have an up-to-date image, as the visible
100         tiles are also synchronously updated.
101
102         * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
103         (WebView::WebView):
104         (WebView::viewNeedsDisplay):
105         (WebView::frameLoaded):
106         (WebView):
107         (WebView::onRepaintDone):
108         (WebView::finishForceRepaint):
109         (WebView::finishFirstLayoutForFrame):
110         (tst_qrawwebview::doNoBackground1):
111         (tst_qrawwebview::doNoBackground2):
112         (tst_qrawwebview::doNoBackground3):
113         (tst_qrawwebview::run):
114             The test for QRawWebView has been updated to use the WebKit2 ForcePaint API prior to
115             generating the pixel results. This has exposed a timing bug in the test - setting the
116             transparentBackground property of a page has to be done before it's created. This has
117             been fixed in the test.
118
119         * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
120         (WebKit::LayerTreeCoordinator::forceRepaint):
121         (WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
122         (WebKit):
123
124 2012-07-11  MORITA Hajime  <morrita@google.com>
125
126         WebCoreSupport needs objects each of which follows major WebCore objects
127         https://bugs.webkit.org/show_bug.cgi?id=88499
128
129         Reviewed by Alexey Proskuryakov.
130
131         Added exporting symbols.
132
133         * win/WebKit2.def:
134         * win/WebKit2CFLite.def:
135
136 2012-07-11  Sheriff Bot  <webkit.review.bot@gmail.com>
137
138         Unreviewed, rolling out r122318.
139         http://trac.webkit.org/changeset/122318
140         https://bugs.webkit.org/show_bug.cgi?id=90961
141
142         It made 11 fast/events/touch fail (Requested by bbandix on
143         #webkit).
144
145         * UIProcess/API/qt/qquickwebview.cpp:
146         * UIProcess/API/qt/qquickwebview_p.h:
147
148 2012-07-11  Keunsoon Lee  <keunsoon.lee@samsung.com>
149
150         [EFL][Wk2] WebErrorsEfl.cpp needs to return non-empty errors
151         https://bugs.webkit.org/show_bug.cgi?id=90688
152
153         Reviewed by Hajime Morita.
154
155         Return meaningful error for each case.
156
157         * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
158         (WebKit::cancelledError): create ResourceError for "request canceled".
159         (WebKit::blockedError): create ResourceError for "request blocked".
160         (WebKit::cannotShowURLError): create ResourceError for "cannot show url".
161         (WebKit::interruptedForPolicyChangeError): create ResourceError for "Frame load interrupted by policy change".
162         (WebKit::cannotShowMIMETypeError): create ResourceError for "Cannot show mimetype".
163         (WebKit::fileDoesNotExistError): create ResourceError for "File does not exist".
164         (WebKit::pluginWillHandleLoadError): create ResourceError for "Plugin will handle load".
165
166 2012-07-11  Andras Becsi  <andras.becsi@nokia.com>
167
168         [Qt][WK2] Fix wheel scrolling for simple pages
169         https://bugs.webkit.org/show_bug.cgi?id=90793
170
171         Reviewed by Kenneth Rohde Christiansen.
172
173         Call WebPage::setFixedLayoutSize in setResizesToContentsUsingLayoutSize
174         instead of setting the view size manually and scheduling a relayout.
175         Since setFixedLayoutSize forces a relayout it also updates the scrollbars
176         after the visible rect is available.
177         This fixes scrolling with wheel events for a QML WebView loading a simple
178         local page which previously ended up in a state where scrolling was disabled
179         because the scrollbar update happened before the correct visible rect size was
180         available.
181
182         Add a QML test and infrastructure to QWebKitTest to cover this case.
183
184         * UIProcess/API/qt/qwebkittest.cpp:
185         (QWebKitTest::wheelEvent):
186         * UIProcess/API/qt/qwebkittest_p.h:
187         * UIProcess/API/qt/tests/qmltests/WebView/tst_wheelEventHandling.qml: Added.
188         * UIProcess/API/qt/tests/qmltests/common/test4.html: Added.
189         * WebProcess/WebPage/WebPage.cpp:
190         (WebKit::WebPage::setResizesToContentsUsingLayoutSize):
191
192 2012-07-11  Andras Becsi  <andras.becsi@nokia.com>
193
194         [Qt][WK2] ASSERT: "!m_viewportItem->isMoving()" in QtViewportHandler::flickMoveEnded()
195         https://bugs.webkit.org/show_bug.cgi?id=90875
196
197         Reviewed by Kenneth Rohde Christiansen.
198
199         Since MultiPointTouchArea and PinchArea use the childMouseEventFilter
200         method to filter touch events too, and because Flickable filters child
201         mouse events the canvas calls this function before propagating the touch
202         event to the WebView. Since Flickable does not accept touch events the
203         canvas tries to propagate a synthesized mouse event through the base
204         class childMouseEventFilter function which is accepted by Flickable and
205         interferes with the input events we send to Flicakble hence messes up
206         the internal state of the WebView.
207         This patch reimplements the virtual childMouseEventFilter method so that all
208         the mouse and touch events can be processed by WebKit before they arrive to
209         Flickable.
210
211         * UIProcess/API/qt/qquickwebview.cpp:
212         (QQuickWebView::childMouseEventFilter):
213         * UIProcess/API/qt/qquickwebview_p.h:
214
215 2012-07-10  Christophe Dumez  <christophe.dumez@intel.com>
216
217         [WK2][EFL] Add Battery Status Provider
218         https://bugs.webkit.org/show_bug.cgi?id=90543
219
220         Reviewed by Kenneth Rohde Christiansen.
221
222         Define a battery status provider for WebKit2 EFL which
223         relies on WebCore::BatteryProviderEfl.
224
225         * CMakeLists.txt: Add WebCore/Modules/battery to include
226         paths.
227         * PlatformEfl.cmake: Add BatteryProvider class to CMake.
228         * UIProcess/API/efl/BatteryProvider.cpp: Added.
229         (toBatteryProvider):
230         (startUpdatingCallback):
231         (stopUpdatingCallback):
232         (BatteryProvider::~BatteryProvider):
233         (BatteryProvider::create):
234         (BatteryProvider::BatteryProvider):
235         (BatteryProvider::startUpdating):
236         (BatteryProvider::stopUpdating):
237         (BatteryProvider::didChangeBatteryStatus):
238         * UIProcess/API/efl/BatteryProvider.h: Added.
239         (BatteryProvider):
240         * UIProcess/API/efl/ewk_context.cpp:
241         (_Ewk_Context): Add BatteryProvider to Ewk_Context.
242         (createDefaultEwkContext):
243         (ewk_context_default_get):
244
245 2012-07-10  No'am Rosenthal  <noam.rosenthal@nokia.com>
246
247         [Qt] Enable antialiasing for TextureMapper
248         https://bugs.webkit.org/show_bug.cgi?id=90915
249
250         Reviewed by Martin Robinson.
251
252         Enable the new antialiasing functionality for WebLayerTreeRendering.
253         This will make one-tile layers antialiased when using UI_SIDE_COMPOSITING.
254
255         * UIProcess/WebLayerTreeRenderer.cpp:
256         (WebKit::WebLayerTreeRenderer::ensureRootLayer):
257
258 2012-07-10  Adam Barth  <abarth@webkit.org>
259
260         WebCore::Settings for Hixie76 WebSocket protocol doesn't do anything and should be removed
261         https://bugs.webkit.org/show_bug.cgi?id=90910
262
263         Reviewed by Eric Seidel.
264
265         * Shared/WebPreferencesStore.h:
266         (WebKit):
267         * UIProcess/API/C/WKPreferences.cpp:
268         (WKPreferencesSetHixie76WebSocketProtocolEnabled):
269         (WKPreferencesGetHixie76WebSocketProtocolEnabled):
270         * WebProcess/InjectedBundle/InjectedBundle.cpp:
271         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
272         * WebProcess/WebPage/WebPage.cpp:
273         (WebKit::WebPage::updatePreferences):
274
275 2012-07-10  Helder Correia  <helder.correia@nokia.com>
276
277         [Qt] Repaint counter for accelerated compositing
278         https://bugs.webkit.org/show_bug.cgi?id=90116
279
280         Reviewed by Noam Rosenthal.
281
282         No new tests, just introducing a debug feature.
283
284         For this feature to be enabled, the environment variable
285         QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS must be set to 1. Once enabled,
286         both repaint counters and tile borders will be painted.
287
288         Important notes:
289         - Only WebKit2 is targetted for now.
290         - There is no integration with Preferences. That aproach was
291         taken initially but revealed complex and overkill for such a
292         debugging-only functionality. Thus, to disable it simply restart with
293         the environment variable unset or set to some other value.
294
295         A Qt-specific drawRepaintCounter() function was added to
296         TextureMapperGL. A QImage is used as scratch buffer to paint borders and
297         counters. It is then uploaded to a BitmapTexture acquired from the pool
298         and finally draw by TextureMapper. The actual compositing happens inside
299         LayerBackingStore::paintToTextureMapper(). Each LayerBackingStoreTile
300         now has a repaint counter which gets incremented in
301         LayerBackingStore::updateTile().
302
303         * UIProcess/texmap/LayerBackingStore.cpp:
304         (WebKit::LayerBackingStore::updateTile):
305         (WebKit):
306         (WebKit::shouldShowTileDebugVisuals):
307         (WebKit::LayerBackingStore::paintToTextureMapper):
308         * UIProcess/texmap/LayerBackingStore.h:
309         (WebKit::LayerBackingStoreTile::LayerBackingStoreTile):
310         (LayerBackingStoreTile):
311         (WebKit::LayerBackingStoreTile::incrementRepaintCount):
312         (WebKit::LayerBackingStoreTile::repaintCount):
313
314 2012-07-10  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
315
316         [WK2] Add Vibration API support for WebKit2
317         https://bugs.webkit.org/show_bug.cgi?id=90058
318
319         Reviewed by Anders Carlsson.
320
321         Add support for Vibration API to WebKit2.
322
323         * CMakeLists.txt:
324         * DerivedSources.pri:
325         * GNUmakefile.list.am:
326         * Platform/CoreIPC/MessageID.h:
327         * Shared/API/c/WKBase.h:
328         * Shared/APIObject.h:
329         * Target.pri:
330         * UIProcess/API/C/WKAPICast.h:
331         (WebKit):
332         * UIProcess/API/C/WKVibration.cpp: Added.
333         (WKVibrationGetTypeID):
334         (WKVibrationSetProvider):
335         * UIProcess/API/C/WKVibration.h: Added.
336         * UIProcess/WebVibrationProvider.cpp: Added.
337         (WebKit):
338         (WebKit::WebVibrationProvider::vibrate):
339         (WebKit::WebVibrationProvider::cancelVibration):
340         * UIProcess/WebVibrationProvider.h: Added.
341         (WebKit):
342         (WebVibrationProvider):
343         * UIProcess/WebVibrationProxy.cpp: Added.
344         (WebKit):
345         (WebKit::WebVibrationProxy::create):
346         (WebKit::WebVibrationProxy::WebVibrationProxy):
347         (WebKit::WebVibrationProxy::~WebVibrationProxy):
348         (WebKit::WebVibrationProxy::invalidate):
349         (WebKit::WebVibrationProxy::initializeProvider):
350         (WebKit::WebVibrationProxy::didReceiveMessage):
351         (WebKit::WebVibrationProxy::vibrate):
352         (WebKit::WebVibrationProxy::cancelVibration):
353         * UIProcess/WebVibrationProxy.h: Added.
354         (CoreIPC):
355         (WebKit):
356         (WebVibrationProxy):
357         (WebKit::WebVibrationProxy::clearContext):
358         (WebKit::WebVibrationProxy::type):
359         * UIProcess/WebVibrationProxy.messages.in: Added.
360         * WebProcess/WebCoreSupport/WebVibrationClient.cpp: Added.
361         (WebKit):
362         (WebKit::WebVibrationClient::vibrate):
363         (WebKit::WebVibrationClient::cancelVibration):
364         (WebKit::WebVibrationClient::vibrationDestroyed):
365         * WebProcess/WebCoreSupport/WebVibrationClient.h: Added.
366         (WebKit):
367         (WebVibrationClient):
368         (WebKit::WebVibrationClient::WebVibrationClient):
369         (WebKit::WebVibrationClient::~WebVibrationClient):
370
371 2012-07-10  Carlos Garcia Campos  <cgarcia@igalia.com>
372
373         [GTK] Add API to clear the cache to WebKit2 GTK+
374         https://bugs.webkit.org/show_bug.cgi?id=90856
375
376         Reviewed by Martin Robinson.
377
378         * UIProcess/API/gtk/WebKitWebContext.cpp:
379         (webkit_web_context_clear_cache): Call
380         WKResourceCacheManagerClearCacheForAllOrigins() to clear all
381         resources currently cached.
382         * UIProcess/API/gtk/WebKitWebContext.h:
383         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
384
385 2012-07-10  Sheriff Bot  <webkit.review.bot@gmail.com>
386
387         Unreviewed, rolling out r122178.
388         http://trac.webkit.org/changeset/122178
389         https://bugs.webkit.org/show_bug.cgi?id=90857
390
391         browser tests, PrerenderBrowserTest.PrerenderFavicon and other
392         tests, started to fail (Requested by hayato on #webkit).
393
394         * win/WebKit2.def:
395
396 2012-07-09  Matt Falkenhagen  <falken@chromium.org>
397
398         Add ENABLE_DIALOG_ELEMENT and skeleton files
399         https://bugs.webkit.org/show_bug.cgi?id=90521
400
401         Reviewed by Kent Tamura.
402
403         * Configurations/FeatureDefines.xcconfig:
404
405 2012-07-09  Pete Williamson  <petewil@google.com>
406
407         Export the iconURL list to make it available to the Internals class for testing
408         https://bugs.webkit.org/show_bug.cgi?id=88665
409
410         Reviewed by Kent Tamura.
411
412         * win/WebKit2.def: export the DocumentL::iconURLs function
413
414 2012-07-09  Christophe Dumez  <christophe.dumez@intel.com>
415
416         [WK2] Add missing Battery Status API integration to WebContext and WebPage
417         https://bugs.webkit.org/show_bug.cgi?id=90784
418
419         Reviewed by Anders Carlsson.
420
421         Integrate Battery Status API to WebPage, WebContext and
422         properly route messages to the WebBatteryManagerProxy.
423         Without this, the Battery Status tests are crashing for
424         WebKit2.
425
426         * UIProcess/API/C/WKContext.cpp:
427         (WKContextGetBatteryManager):
428         * UIProcess/API/C/WKContext.h:
429         * UIProcess/WebContext.cpp:
430         (WebKit::WebContext::WebContext):
431         (WebKit::WebContext::~WebContext):
432         (WebKit::WebContext::disconnectProcess):
433         (WebKit::WebContext::didReceiveMessage):
434         * UIProcess/WebContext.h:
435         (WebKit):
436         (WebContext):
437         (WebKit::WebContext::batteryManagerProxy):
438         * UIProcess/WebProcessProxy.cpp:
439         (WebKit::WebProcessProxy::didReceiveMessage):
440         * WebProcess/WebCoreSupport/WebBatteryClient.cpp:
441         (WebKit::WebBatteryClient::setController):
442         (WebKit):
443         * WebProcess/WebCoreSupport/WebBatteryClient.h:
444         (WebBatteryClient):
445         * WebProcess/WebPage/WebPage.cpp:
446         (WebKit::WebPage::WebPage):
447
448 2012-07-09  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
449
450         [EFL] [WK2] ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)
451         https://bugs.webkit.org/show_bug.cgi?id=90464
452
453         Reviewed by Daniel Bates.
454
455         HashMap has the property that 0 is the empty value for integer
456         keys, so do not use 0 as a key in the HashMap.
457
458         * Platform/efl/WorkQueueEfl.cpp:
459         (WorkQueue::dispatchAfterDelay):
460
461 2012-07-09  Carlos Garcia Campos  <cgarcia@igalia.com>
462
463         [GTK] Add a setting to enable/disable page cache to WebKit2 GTK+ API
464         https://bugs.webkit.org/show_bug.cgi?id=90773
465
466         Reviewed by Martin Robinson.
467
468         * UIProcess/API/gtk/WebKitSettings.cpp:
469         (webKitSettingsSetProperty):
470         (webKitSettingsGetProperty):
471         (webkit_settings_class_init):
472         (webkit_settings_get_enable_page_cache):
473         (webkit_settings_set_enable_page_cache):
474         * UIProcess/API/gtk/WebKitSettings.h:
475         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
476         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
477         (testWebKitSettings):
478
479 2012-07-09  Sheriff Bot  <webkit.review.bot@gmail.com>
480
481         Unreviewed, rolling out r122107.
482         http://trac.webkit.org/changeset/122107
483         https://bugs.webkit.org/show_bug.cgi?id=90794
484
485         Build failure on Mac debug bots (Requested by falken_ on
486         #webkit).
487
488         * Configurations/FeatureDefines.xcconfig:
489
490 2012-07-09  Carlos Garcia Campos  <cgarcia@igalia.com>
491
492         [GTK] Fix inspector detach when inspector was attached by the client
493         https://bugs.webkit.org/show_bug.cgi?id=90763
494
495         Reviewed by Martin Robinson.
496
497         When the inspector is detached, we are unconditionally removing it
498         from the inspected view, but if the inspector was attached by the
499         client, the parent might be another widget.
500
501         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
502         (WebKit::WebInspectorProxy::platformDetach): Remove the inspector
503         view from its parent widget.
504
505 2012-07-09  Matt Falkenhagen  <falken@chromium.org>
506
507         Add ENABLE_DIALOG_ELEMENT and skeleton files
508         https://bugs.webkit.org/show_bug.cgi?id=90521
509
510         Reviewed by Kent Tamura.
511
512         * Configurations/FeatureDefines.xcconfig:
513
514 2012-07-09  Dan Bernstein  <mitz@apple.com>
515
516         Fix the Mac build when codesign_allocate is not installed at /usr/bin.
517
518         * PluginProcess/mac/add-entitlements.sh: Let codesign(1) know where the codesign_allocate
519         tool is by setting the CODESIGN_ALLOCATE environment variable to its path as obtained with
520         xcrun.
521
522 2012-07-06  Christophe Dumez  <christophe.dumez@intel.com>
523
524         [WK2] Add support for Network Information API
525         https://bugs.webkit.org/show_bug.cgi?id=89870
526
527         Reviewed by Anders Carlsson.
528
529         Add Network Information API support for WebKit2.
530
531         * CMakeLists.txt:
532         * DerivedSources.pri:
533         * GNUmakefile.am:
534         * GNUmakefile.list.am:
535         * Platform/CoreIPC/MessageID.h:
536         * Shared/API/c/WKBase.h:
537         * Shared/APIObject.h:
538         * Shared/WebNetworkInfo.cpp: Added.
539         (WebKit):
540         (WebKit::WebNetworkInfo::WebNetworkInfo):
541         (WebKit::WebNetworkInfo::~WebNetworkInfo):
542         (WebKit::WebNetworkInfo::Data::encode):
543         (WebKit::WebNetworkInfo::Data::decode):
544         * Shared/WebNetworkInfo.h: Added.
545         (WebKit):
546         (WebNetworkInfo):
547         (Data):
548         (WebKit::WebNetworkInfo::create):
549         (WebKit::WebNetworkInfo::bandwidth):
550         (WebKit::WebNetworkInfo::metered):
551         (WebKit::WebNetworkInfo::data):
552         (WebKit::WebNetworkInfo::type):
553         * Target.pri:
554         * UIProcess/API/C/WKAPICast.h:
555         (WebKit):
556         * UIProcess/API/C/WKNetworkInfoManager.cpp: Added.
557         (WKNetworkInfoManagerGetTypeID):
558         * UIProcess/API/C/WKNetworkInfoManager.h: Added.
559         * UIProcess/WebNetworkInfoManagerProxy.cpp: Added.
560         (WebKit):
561         (WebKit::WebNetworkInfoManagerProxy::create):
562         (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
563         (WebKit::WebNetworkInfoManagerProxy::~WebNetworkInfoManagerProxy):
564         (WebKit::WebNetworkInfoManagerProxy::invalidate):
565         (WebKit::WebNetworkInfoManagerProxy::initializeProvider):
566         (WebKit::WebNetworkInfoManagerProxy::providerDidChangeNetworkInformation):
567         (WebKit::WebNetworkInfoManagerProxy::didReceiveMessage):
568         (WebKit::WebNetworkInfoManagerProxy::startUpdating):
569         (WebKit::WebNetworkInfoManagerProxy::stopUpdating):
570         (WebKit::WebNetworkInfoManagerProxy::getBandwidth):
571         (WebKit::WebNetworkInfoManagerProxy::isMetered):
572         * UIProcess/WebNetworkInfoManagerProxy.h: Added.
573         (CoreIPC):
574         (WebKit):
575         (WebNetworkInfoManagerProxy):
576         (WebKit::WebNetworkInfoManagerProxy::clearContext):
577         (WebKit::WebNetworkInfoManagerProxy::type):
578         * UIProcess/WebNetworkInfoManagerProxy.messages.in: Added.
579         * UIProcess/WebNetworkInfoProvider.cpp: Added.
580         (WebKit):
581         (WebKit::WebNetworkInfoProvider::startUpdating):
582         (WebKit::WebNetworkInfoProvider::stopUpdating):
583         (WebKit::WebNetworkInfoProvider::bandwidth):
584         (WebKit::WebNetworkInfoProvider::metered):
585         * UIProcess/WebNetworkInfoProvider.h: Added.
586         (WebKit):
587         (WebNetworkInfoProvider):
588         * WebKit2.pri:
589         * WebProcess/NetworkInfo/WebNetworkInfoManager.cpp: Added.
590         (WebKit):
591         (WebKit::WebNetworkInfoManager::WebNetworkInfoManager):
592         (WebKit::WebNetworkInfoManager::~WebNetworkInfoManager):
593         (WebKit::WebNetworkInfoManager::didReceiveMessage):
594         (WebKit::WebNetworkInfoManager::registerWebPage):
595         (WebKit::WebNetworkInfoManager::unregisterWebPage):
596         (WebKit::WebNetworkInfoManager::bandwidth):
597         (WebKit::WebNetworkInfoManager::metered):
598         (WebKit::WebNetworkInfoManager::didChangeNetworkInformation):
599         * WebProcess/NetworkInfo/WebNetworkInfoManager.h: Added.
600         (CoreIPC):
601         (WebKit):
602         (WebNetworkInfoManager):
603         * WebProcess/NetworkInfo/WebNetworkInfoManager.messages.in: Added.
604         * WebProcess/WebCoreSupport/WebNetworkInfoClient.cpp: Added.
605         (WebKit):
606         (WebKit::WebNetworkInfoClient::~WebNetworkInfoClient):
607         (WebKit::WebNetworkInfoClient::bandwidth):
608         (WebKit::WebNetworkInfoClient::metered):
609         (WebKit::WebNetworkInfoClient::startUpdating):
610         (WebKit::WebNetworkInfoClient::stopUpdating):
611         * WebProcess/WebCoreSupport/WebNetworkInfoClient.h: Added.
612         (WebKit):
613         (WebNetworkInfoClient):
614         (WebKit::WebNetworkInfoClient::WebNetworkInfoClient):
615         * WebProcess/WebProcess.cpp:
616         (WebKit::WebProcess::WebProcess):
617         (WebKit::WebProcess::didReceiveMessage):
618         * WebProcess/WebProcess.h:
619         (WebProcess):
620         (WebKit::WebProcess::networkInfoManager):
621
622 2012-07-06  Jessie Berlin  <jberlin@apple.com>
623
624         WKContext should ask for its injected bundle initialization user data when it needs it so the
625         client doesn't have to keep it up to date.
626         https://bugs.webkit.org/show_bug.cgi?id=90627
627
628         Reviewed by Anders Carlsson.
629
630         Add a getInjectedBundleInitializationUserData callback to WKContextInjectedBundleClient.
631
632         * Shared/APIClientTraits.cpp:
633         Allow the WKContextInjectedBundleClient API to be versioned.
634         * Shared/APIClientTraits.h:
635
636         * UIProcess/API/C/WKContext.h:
637         Add the callback and bump the version of WKContextInjectedBundleClient.
638
639         * UIProcess/WebContext.cpp:
640         (WebKit::WebContext::ensureWebProcess):
641         Prefer any user data returned when the callback is invoked over that set with
642         WKContextSetInitializationUserDataForInjectedBundle.
643
644         * UIProcess/WebContextInjectedBundleClient.cpp:
645         (WebKit::WebContextInjectedBundleClient::getInjectedBundleInitializationUserData):
646         Invoke the callback if the client has registered for it.
647         * UIProcess/WebContextInjectedBundleClient.h:
648
649 2012-07-06  Jessie Berlin  <jberlin@apple.com>
650
651         WebContext::injectedBundleInitializationUserData() is unused, should be removed
652         https://bugs.webkit.org/show_bug.cgi?id=90486
653
654         Reviewed by Anders Carlsson.
655
656         * UIProcess/WebContext.h:
657         Remove it.
658
659 2012-07-06  Carlos Garcia Campos  <cgarcia@igalia.com>
660
661         [GTK] Add site specific quirks setting to WebKit2 GTK+ API
662         https://bugs.webkit.org/show_bug.cgi?id=90663
663
664         Reviewed by Martin Robinson.
665
666         * UIProcess/API/gtk/WebKitSettings.cpp:
667         (webKitSettingsSetProperty):
668         (webKitSettingsGetProperty):
669         (webkit_settings_class_init):
670         (webkit_settings_get_enable_site_specific_quirks):
671         (webkit_settings_set_enable_site_specific_quirks):
672         * UIProcess/API/gtk/WebKitSettings.h:
673         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
674         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
675         (testWebKitSettings):
676
677 2012-07-06  Dominik Röttsches  <dominik.rottsches@intel.com>
678
679         ProcessLauncher's WorkQueue's name is too long on Windows
680         https://bugs.webkit.org/show_bug.cgi?id=44041
681
682         Reviewed by Andreas Kling.
683
684         Shorten thread name for process launcher so that we can silence the warning
685         for thread names getting truncated under VisualStudio -
686         see createThread() in  Threading.cpp.
687
688         * UIProcess/Launcher/ProcessLauncher.cpp:
689         (WebKit::processLauncherWorkQueue):
690
691 2012-07-06  Christophe Dumez  <christophe.dumez@intel.com>
692
693         [EFL] WebKit-EFL headers do not build with gcc < 4.6
694         https://bugs.webkit.org/show_bug.cgi?id=90681
695
696         Unreviewed EFL build fix.
697
698         Remove several forward declarations from ewk_view
699         header to avoid typedef redefinitions which are
700         illegal in C.
701
702         * UIProcess/API/efl/ewk_view.h:
703
704 2012-07-06  Csaba Osztrogonác  <ossy@webkit.org>
705
706         [Qt] Buildfix for newer Qt5
707         https://bugs.webkit.org/show_bug.cgi?id=90519
708
709         Reviewed by Tor Arne Vestbø.
710
711         * UIProcess/API/qt/qwebkittest.cpp: Include qpa/qwindowsysteminterface.h instead of deprecated qwindowsysteminterface_qpa.h.
712
713 2012-07-06  Oswald Buddenhagen  <oswald.buddenhagen@nokia.com>
714
715         [Qt] Adjust to changed generation of master include file
716
717         The responsiblity for creating the master include was moved out of syncqt.
718         @ignore_for_master_contents still stays, as syncqt (ab-)uses this for
719         determining whether a header is private.
720
721         https://bugs.webkit.org/show_bug.cgi?id=90461
722
723         Reviewed by Tor Arne Vestbø.
724
725         * UIProcess/API/qt/tests/bytearraytestdata.h:
726         * UIProcess/API/qt/tests/testwindow.h:
727
728 2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>
729
730         [WK2][EFL] Ewk_View needs to report load status changes
731         https://bugs.webkit.org/show_bug.cgi?id=90566
732
733         Reviewed by Kenneth Rohde Christiansen.
734
735         Add new "load,finished", "load,provisional,failed",
736         "load,provisional,redirect" and "load,provisional,started"
737         signals on the Ewk_View to notify the client of different
738         load state changes.
739
740         * UIProcess/API/efl/ewk_view.cpp:
741         (ewk_view_load_finished):
742         (ewk_view_load_provisional_failed):
743         (ewk_view_load_provisional_redirect):
744         (ewk_view_load_provisional_started):
745         * UIProcess/API/efl/ewk_view.h:
746         * UIProcess/API/efl/ewk_view_loader_client.cpp:
747         (didFinishLoadForFrame):
748         (didFailLoadWithErrorForFrame):
749         (didStartProvisionalLoadForFrame):
750         (didReceiveServerRedirectForProvisionalLoadForFrame):
751         (didFailProvisionalLoadWithErrorForFrame):
752         (ewk_view_loader_client_attach):
753         * UIProcess/API/efl/ewk_view_private.h:
754
755 2012-07-05  Luiz Agostini  <luiz.agostini@nokia.com>
756
757         [Qt] Transform should be applied to the clip rect in QRawWebView::paint
758         https://bugs.webkit.org/show_bug.cgi?id=90652
759
760         Reviewed by Kenneth Rohde Christiansen.
761
762         Applying the transformation matrix to the clip rect in QRawWebView::paint.
763
764         * UIProcess/API/qt/raw/qrawwebview.cpp:
765         (QRawWebView::paint):
766
767 2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>
768
769         [WK2][EFL] Ewk_View should provide API to set/get device pixel ratio
770         https://bugs.webkit.org/show_bug.cgi?id=90590
771
772         Reviewed by Kenneth Rohde Christiansen.
773
774         Add API to Ewk_View so retrieve and set the device
775         pixel ratio.
776
777         * UIProcess/API/efl/ewk_view.cpp:
778         (ewk_view_device_pixel_ratio_set):
779         (ewk_view_device_pixel_ratio_get):
780         * UIProcess/API/efl/ewk_view.h:
781
782 2012-07-05  Anders Carlsson  <andersca@apple.com>
783
784         Type-ahead doesn't work in options inside optgroups
785         https://bugs.webkit.org/show_bug.cgi?id=90647
786         <rdar://problem/5604894>
787
788         Reviewed by Dan Bernstein.
789
790         Set the title of the menu item to a string that doesn't contain any leading or trailing whitespace.
791
792         * UIProcess/mac/WebPopupMenuProxyMac.mm:
793         (WebKit::WebPopupMenuProxyMac::populate):
794
795 2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>
796
797         [WK2] Add C API for Battery Status API
798         https://bugs.webkit.org/show_bug.cgi?id=90545
799
800         Reviewed by Anders Carlsson.
801
802         Add C API for WKBatteryManager and WKBatteryStatus
803         so that clients can support the Battery Status API
804         in WebKit2.
805
806         * CMakeLists.txt:
807         * GNUmakefile.list.am:
808         * Target.pri:
809         * UIProcess/API/C/WKBatteryManager.cpp:
810         (WKBatteryManagerProviderDidChangeBatteryStatus):
811         (WKBatteryManagerProviderUpdateBatteryStatus):
812         * UIProcess/API/C/WKBatteryStatus.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.
813         (WKBatteryStatusGetTypeID):
814         (WKBatteryStatusCreate):
815         * UIProcess/API/C/WKBatteryStatus.h: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.
816
817 2012-07-05  Sheriff Bot  <webkit.review.bot@gmail.com>
818
819         Unreviewed, rolling out r121899.
820         http://trac.webkit.org/changeset/121899
821         https://bugs.webkit.org/show_bug.cgi?id=90623
822
823         Unauthorized WK2 API breakage (Requested by andersca on
824         #webkit).
825
826         * Shared/API/c/WKSharedAPICast.h:
827         (WebKit::toCopiedURLAPI):
828
829 2012-07-05  Balazs Kelemen  <kbalazs@webkit.org>
830
831         [Qt] WTR crashes if a URL is passed as a parameter
832         https://bugs.webkit.org/show_bug.cgi?id=88093
833
834         Reviewed by Zoltan Herczeg.
835
836         * Shared/API/c/WKSharedAPICast.h:
837         (WebKit::toCopiedURLAPI):
838         Don't special case null string. It's handled
839         fine by WebURL and passing 0 is not suitable
840         to the API.
841
842 2012-07-05  Dongwoo Im  <dw.im@samsung.com>
843
844         [EFL] Enable the CUSTOM_SCHEME_HANDLER feature as default.
845         https://bugs.webkit.org/show_bug.cgi?id=88608
846
847         Reviewed by Hajime Morita.
848
849         * WebProcess/WebCoreSupport/WebChromeClient.h:
850         (WebKit::WebChromeClient::isProtocolHandlerRegistered): Add a stub function.
851         (WebKit::WebChromeClient::unregisterProtocolHandler): Add a stub function.
852         (WebChromeClient):
853
854 2012-07-05  Ryuan Choi  <ryuan.choi@samsung.com>
855
856         [Wk2][EFL] EFL needs a WebKitTestRunner
857         https://bugs.webkit.org/show_bug.cgi?id=87659
858
859         Reviewed by Kenneth Rohde Christiansen.
860
861         * PlatformEfl.cmake: Added WKImageCairo.cpp in source list.
862
863 2012-07-05  Hyerim Bae  <hyerim.bae@samsung.com>
864
865         [EFL][WK2] Add ewk_view_reload_bypass_cache API.
866         https://bugs.webkit.org/show_bug.cgi?id=89413
867
868         Reviewed by Kenneth Rohde Christiansen.
869
870         Add API, which is for reloading documents without cache.
871
872         * UIProcess/API/efl/ewk_view.cpp:
873         (ewk_view_reload_bypass_cache):
874         * UIProcess/API/efl/ewk_view.h:
875
876 2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>
877
878         [WK2][EFL] Ewk_View needs API to load HTML data
879         https://bugs.webkit.org/show_bug.cgi?id=90540
880
881         Reviewed by Kenneth Rohde Christiansen.
882
883         Add method to Ewk_View to load provided HTML data.
884         This is used for e.g. when an URL cannot be reached
885         and we need to display an error page.
886
887         * UIProcess/API/efl/ewk_view.cpp:
888         (ewk_view_html_load):
889         * UIProcess/API/efl/ewk_view.h:
890
891 2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>
892
893         [WK2][EFL] Ewk_View needs to report new resource requests
894         https://bugs.webkit.org/show_bug.cgi?id=90577
895
896         Reviewed by Kenneth Rohde Christiansen.
897
898         Add new "resource,request,new" signal to Ewk_View to
899         notify clients of the resource requests being initiated.
900         New Ewk_Url_Request and Ewk_Web_Resource types are
901         introduced in order to provide the clients with the
902         needed information regarding the resource requests.
903
904         * PlatformEfl.cmake:
905         * UIProcess/API/efl/EWebKit2.h:
906         * UIProcess/API/efl/ewk_url_request.cpp: Added.
907         (_Ewk_Url_Request):
908         (ewk_url_request_ref):
909         (ewk_url_request_unref):
910         (ewk_url_request_url_get):
911         (ewk_request_first_party_get):
912         (ewk_url_request_http_method_get):
913         (ewk_url_request_new):
914         * UIProcess/API/efl/ewk_url_request.h: Added.
915         * UIProcess/API/efl/ewk_url_request_private.h: Added.
916         * UIProcess/API/efl/ewk_view.cpp:
917         (ewk_view_base_add):
918         (ewk_view_resource_load_initiated):
919         * UIProcess/API/efl/ewk_view.h:
920         * UIProcess/API/efl/ewk_view_private.h:
921         * UIProcess/API/efl/ewk_view_resource_load_client.cpp: Added.
922         (didInitiateLoadForResource):
923         (ewk_view_resource_load_client_attach):
924         * UIProcess/API/efl/ewk_view_resource_load_client_private.h: Added.
925         * UIProcess/API/efl/ewk_web_resource.cpp: Added.
926         (_Ewk_Web_Resource):
927         (ewk_web_resource_ref):
928         (ewk_web_resource_unref):
929         (ewk_web_resource_uri_get):
930         (ewk_web_resource_new):
931         (ewk_web_resource_main_get):
932         * UIProcess/API/efl/ewk_web_resource.h: Added.
933         * UIProcess/API/efl/ewk_web_resource_private.h: Added.
934
935 2012-07-04  John Mellor  <johnme@chromium.org>
936
937         Text Autosizing: Add compile flag and runtime setting
938         https://bugs.webkit.org/show_bug.cgi?id=87394
939
940         This patch renames Font Boosting to Text Autosizing.
941
942         Reviewed by Adam Barth.
943
944         * Configurations/FeatureDefines.xcconfig:
945
946 2012-07-04  Christophe Dumez  <christophe.dumez@intel.com>
947
948         [EFL][WK2] Ewk_View should report load errors
949         https://bugs.webkit.org/show_bug.cgi?id=90479
950
951         Reviewed by Kenneth Rohde Christiansen.
952
953         The Ewk_View now emits a "load,error" signal when the
954         main frame fails loading. Information about the error
955         is provided via the new Ewk_Web_Error type.
956
957         * PlatformEfl.cmake:
958         * UIProcess/API/efl/EWebKit2.h:
959         * UIProcess/API/efl/ewk_view.cpp:
960         (ewk_view_load_error):
961         * UIProcess/API/efl/ewk_view.h:
962         * UIProcess/API/efl/ewk_view_loader_client.cpp:
963         (didFailLoadWithErrorForFrame):
964         (ewk_view_loader_client_attach):
965         * UIProcess/API/efl/ewk_view_private.h:
966         * UIProcess/API/efl/ewk_web_error.cpp: Added.
967         (_Ewk_Web_Error):
968         (ewk_web_error_free):
969         (ewk_web_error_domain_get):
970         (ewk_web_error_url_get):
971         (ewk_web_error_code_get):
972         (ewk_web_error_description_get):
973         (ewk_web_error_cancellation_get):
974         (ewk_web_error_new):
975         * UIProcess/API/efl/ewk_web_error.h: Added.
976         * UIProcess/API/efl/ewk_web_error_private.h: Added.
977
978 2012-07-03  Christophe Dumez  <christophe.dumez@intel.com>
979
980         [WK2][EFL] Ewk_View should report the load progress
981         https://bugs.webkit.org/show_bug.cgi?id=90457
982
983         Reviewed by Kenneth Rohde Christiansen.
984
985         The Ewk_View now reports the estimated load progress
986         of the page via the new "load,progress".
987         A method is also added to Ewk_View in order to
988         retrieve the current load progress.
989
990         * UIProcess/API/efl/ewk_view.cpp:
991         (ewk_view_load_progress_get):
992         (ewk_view_load_progress_changed):
993         * UIProcess/API/efl/ewk_view.h:
994         * UIProcess/API/efl/ewk_view_loader_client.cpp:
995         (didChangeProgress):
996         (ewk_view_loader_client_attach):
997         * UIProcess/API/efl/ewk_view_private.h:
998
999 2012-07-03  Christophe Dumez  <christophe.dumez@intel.com>
1000
1001         [WK2] Add support for Battery Status API
1002         https://bugs.webkit.org/show_bug.cgi?id=89558
1003
1004         Reviewed by Anders Carlsson.
1005
1006         Add support for Battery Status API to WebKit2.
1007
1008         * CMakeLists.txt:
1009         * DerivedSources.pri:
1010         * GNUmakefile.am:
1011         * GNUmakefile.list.am:
1012         * Platform/CoreIPC/MessageID.h:
1013         * Shared/API/c/WKBase.h:
1014         * Shared/APIObject.h:
1015         * Shared/WebBatteryStatus.cpp: Added.
1016         (WebKit):
1017         (WebKit::WebBatteryStatus::WebBatteryStatus):
1018         (WebKit::WebBatteryStatus::~WebBatteryStatus):
1019         (WebKit::WebBatteryStatus::Data::encode):
1020         (WebKit::WebBatteryStatus::Data::decode):
1021         * Shared/WebBatteryStatus.h: Added.
1022         (WebKit):
1023         (WebBatteryStatus):
1024         (Data):
1025         (WebKit::WebBatteryStatus::create):
1026         (WebKit::WebBatteryStatus::isCharging):
1027         (WebKit::WebBatteryStatus::chargingTime):
1028         (WebKit::WebBatteryStatus::dischargingTime):
1029         (WebKit::WebBatteryStatus::level):
1030         (WebKit::WebBatteryStatus::data):
1031         (WebKit::WebBatteryStatus::type):
1032         * Target.pri:
1033         * UIProcess/API/C/WKAPICast.h:
1034         (WebKit):
1035         * UIProcess/API/C/WKBatteryManager.cpp: Added.
1036         (WKBatteryManagerGetTypeID):
1037         * UIProcess/API/C/WKBatteryManager.h: Added.
1038         * UIProcess/WebBatteryManagerProxy.cpp: Added.
1039         (WebKit):
1040         (WebKit::WebBatteryManagerProxy::create):
1041         (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
1042         (WebKit::WebBatteryManagerProxy::~WebBatteryManagerProxy):
1043         (WebKit::WebBatteryManagerProxy::invalidate):
1044         (WebKit::WebBatteryManagerProxy::initializeProvider):
1045         (WebKit::WebBatteryManagerProxy::didReceiveMessage):
1046         (WebKit::WebBatteryManagerProxy::startUpdating):
1047         (WebKit::WebBatteryManagerProxy::stopUpdating):
1048         (WebKit::WebBatteryManagerProxy::providerDidChangeBatteryStatus):
1049         (WebKit::WebBatteryManagerProxy::providerUpdateBatteryStatus):
1050         * UIProcess/WebBatteryManagerProxy.h: Added.
1051         (CoreIPC):
1052         (WebKit):
1053         (WebBatteryManagerProxy):
1054         (WebKit::WebBatteryManagerProxy::clearContext):
1055         (WebKit::WebBatteryManagerProxy::type):
1056         * UIProcess/WebBatteryManagerProxy.messages.in: Added.
1057         * UIProcess/WebBatteryProvider.cpp: Added.
1058         (WebKit):
1059         (WebKit::WebBatteryProvider::startUpdating):
1060         (WebKit::WebBatteryProvider::stopUpdating):
1061         * UIProcess/WebBatteryProvider.h: Added.
1062         (WebKit):
1063         (WebBatteryProvider):
1064         * WebKit2.pri:
1065         * WebProcess/Battery/WebBatteryManager.cpp: Added.
1066         (WebKit):
1067         (WebKit::WebBatteryManager::WebBatteryManager):
1068         (WebKit::WebBatteryManager::~WebBatteryManager):
1069         (WebKit::WebBatteryManager::didReceiveMessage):
1070         (WebKit::WebBatteryManager::registerWebPage):
1071         (WebKit::WebBatteryManager::unregisterWebPage):
1072         (WebKit::WebBatteryManager::didChangeBatteryStatus):
1073         (WebKit::WebBatteryManager::updateBatteryStatus):
1074         * WebProcess/Battery/WebBatteryManager.h: Added.
1075         (CoreIPC):
1076         (WebKit):
1077         (WebBatteryManager):
1078         * WebProcess/Battery/WebBatteryManager.messages.in: Added.
1079         * WebProcess/WebCoreSupport/WebBatteryClient.cpp: Added.
1080         (WebKit):
1081         (WebKit::WebBatteryClient::startUpdating):
1082         (WebKit::WebBatteryClient::stopUpdating):
1083         (WebKit::WebBatteryClient::batteryControllerDestroyed):
1084         * WebProcess/WebCoreSupport/WebBatteryClient.h: Added.
1085         (WebKit):
1086         (WebBatteryClient):
1087         (WebKit::WebBatteryClient::WebBatteryClient):
1088         (WebKit::WebBatteryClient::~WebBatteryClient):
1089         * WebProcess/WebProcess.cpp:
1090         (WebKit::WebProcess::WebProcess):
1091         (WebKit::WebProcess::didReceiveMessage):
1092         * WebProcess/WebProcess.h:
1093         (WebProcess):
1094         (WebKit::WebProcess::batteryManager):
1095
1096 2012-07-03  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1097
1098         [Qt] Make use of .qmake.cache for caching features
1099
1100         Instead of loading() features from the files that need them (and re-running
1101         a bunch of checks), we now run feature detection as part of configure.pro,
1102         and have build-webkit write the computed feature-defines and CONFIG to
1103         .qmake.cache, which is then loaded by qmake _before_ even defaults_pre
1104         when building WebKit.pro.
1105
1106         At some point we'll be able to selectivly prevent running of config tests
1107         in configure.pro, which means we don't need a separate code-path for
1108         the build-webkit --help case.
1109
1110         We should also move the code in build-webkit that now uses .webkit.config
1111         to detect clean builds, to use .qmake.cache, since we now store the same
1112         thing there.
1113
1114         Original patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
1115
1116         Reviewed by Tor Arne Vestbø.
1117
1118         * DerivedSources.pri:
1119         * Target.pri:
1120
1121 2012-07-03  Sheriff Bot  <webkit.review.bot@gmail.com>
1122
1123         Unreviewed, rolling out r121766.
1124         http://trac.webkit.org/changeset/121766
1125         https://bugs.webkit.org/show_bug.cgi?id=90465
1126
1127         It caused flakey build errors on the bots (Requested by Ossy
1128         on #webkit).
1129
1130         * DerivedSources.pri:
1131         * Target.pri:
1132
1133 2012-07-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1134
1135         [GTK] Add WebKitWebView::context-menu-dismissed signal to WebKit2 GTK+ API
1136         https://bugs.webkit.org/show_bug.cgi?id=90386
1137
1138         Reviewed by Martin Robinson.
1139
1140         * UIProcess/API/gtk/WebKitWebView.cpp:
1141         (webkit_web_view_class_init): Add context-menu-dismissed signal.
1142         (contextMenuDismissed): Emit context-menu-dismissed signal.
1143         (webkitWebViewPopulateContextMenu): Connect to deactivate signal
1144         of the GtkMenu and emit WebKitWebView::context-menu-dismissed when
1145         the gtk menu is deactivated.
1146         * UIProcess/API/gtk/WebKitWebView.h:
1147         (_WebKitWebViewClass): Add virtual methos for
1148         context-menu-dismissed signal.
1149         * UIProcess/API/gtk/tests/TestContextMenu.cpp:
1150         (testContextMenuDismissed):
1151         (beforeAll):
1152         * UIProcess/gtk/WebContextMenuProxyGtk.h:
1153         (WebKit::WebContextMenuProxyGtk::gtkMenu): Get the GtkMenu built
1154         for the context menu proxy.
1155
1156 2012-07-03  Piotr Roguski  <p.roguski@samsung.com>
1157
1158         [EFL][WK2] Added missing WebPageProxy::ViewIsFocused flag to WebPageProxy::viewStateDidChange()
1159         call in _ewk_view_smart_focus_out() function.
1160         https://bugs.webkit.org/show_bug.cgi?id=89877
1161
1162         Reviewed by Andreas Kling.
1163
1164         Although name of the flag suggest it should be used only on focus in,
1165         omitting it in case of focus out will prevent WebPageProxy::viewStateDidChange()
1166         from sending Messages::WebPage::SetFocused(false).
1167
1168         * UIProcess/API/efl/ewk_view.cpp:
1169         (_ewk_view_smart_focus_out):
1170
1171 2012-07-03  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
1172
1173         [Qt][WK2] API tests randomly asserts in QQuickWebPage::setContentsScale(qreal)
1174         https://bugs.webkit.org/show_bug.cgi?id=88679
1175
1176         Reviewed by Csaba Osztrogonác.
1177
1178         Viewport parameters cannot be calculated while viewport is not visible and 
1179         viewport size is 0, so let's delay calculation of viewport parameters until view 
1180         becomes visible.
1181
1182         * UIProcess/qt/QtViewportHandler.cpp:
1183         (WebKit::QtViewportHandler::pageContentsSizeChanged):
1184
1185 2012-07-03  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1186
1187         [Qt] Make use of .qmake.cache for caching features
1188
1189         Instead of loading() features from the files that need them (and re-running
1190         a bunch of checks), we now run feature detection as part of configure.pro,
1191         and have build-webkit write the computed feature-defines and CONFIG to
1192         .qmake.cache, which is then loaded by qmake _before_ even defaults_pre
1193         when building WebKit.pro.
1194
1195         At some point we'll be able to selectivly prevent running of config tests
1196         in configure.pro, which means we don't need a separate code-path for
1197         the build-webkit --help case.
1198
1199         We should also move the code in build-webkit that now uses .webkit.config
1200         to detect clean builds, to use .qmake.cache, since we now store the same
1201         thing there.
1202
1203         Original patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
1204
1205         Reviewed by Tor Arne Vestbø.
1206
1207         * DerivedSources.pri:
1208         * Target.pri:
1209
1210 2012-07-03  Alexis Menard  <alexis.menard@openbossa.org>
1211
1212         [Qt] When calling accept() on the FilePickerContextObject with an empty list, early return and call reject().
1213         https://bugs.webkit.org/show_bug.cgi?id=89755
1214
1215         Reviewed by Simon Hausmann.
1216
1217         When calling accept with an empty list of files we can just bailout
1218         and call reject(). Any other processing is pointless.
1219
1220        * UIProcess/API/qt/tests/qmltests/WebView/tst_singleFileUpload.qml:
1221        * UIProcess/qt/QtDialogRunner.cpp:
1222         (WebKit::FilePickerContextObject::accept):
1223
1224 2012-07-03  Balazs Kelemen  <kbalazs@webkit.org>
1225
1226         [Qt][WK2] fast/viewport/viewport-91.html still fails after r121555 and r121661
1227         https://bugs.webkit.org/show_bug.cgi?id=90376
1228
1229         Reviewed by Csaba Osztrogonác.
1230
1231         layoutTestController.dumpConfigurationForViewport still need
1232         to use the constant target DPI of 160.
1233         * WebProcess/WebPage/WebPage.cpp:
1234         (WebKit::WebPage::viewportConfigurationAsText):
1235
1236 2012-07-03  Christophe Dumez  <christophe.dumez@intel.com>
1237
1238         [EFL][WK2] Add API to deliver a Web Intent to a frame
1239         https://bugs.webkit.org/show_bug.cgi?id=90067
1240
1241         Reviewed by Kenneth Rohde Christiansen.
1242
1243         Add ewk_view_intent_deliver() method on the Ewk_View
1244         to deliver a Web Intent to the view's main frame.
1245
1246         * UIProcess/API/efl/ewk_view.cpp:
1247         (ewk_view_intent_deliver):
1248         * UIProcess/API/efl/ewk_view.h:
1249
1250 2012-07-02  Christophe Dumez  <christophe.dumez@intel.com>
1251
1252         [EFL][WK2] Add API to inspect a Web Intent service
1253         https://bugs.webkit.org/show_bug.cgi?id=90066
1254
1255         Reviewed by Kenneth Rohde Christiansen.
1256
1257         Add EFL API to inspect a Web Intent Service and emit
1258         a signal on the view when a new intent service
1259         registers.
1260
1261         * PlatformEfl.cmake:
1262         * UIProcess/API/efl/EWebKit2.h:
1263         * UIProcess/API/efl/ewk_intent_service.cpp: Added.
1264         (_Ewk_Intent_Service):
1265         (ewk_intent_service_ref):
1266         (ewk_intent_service_unref):
1267         (ewk_intent_service_action_get):
1268         (ewk_intent_service_type_get):
1269         (ewk_intent_service_href_get):
1270         (ewk_intent_service_title_get):
1271         (ewk_intent_service_disposition_get):
1272         (ewk_intent_service_new):
1273         * UIProcess/API/efl/ewk_intent_service.h: Added.
1274         * UIProcess/API/efl/ewk_intent_service_private.h: Copied from Source/WebKit2/UIProcess/API/efl/ewk_view_loader_client.cpp.
1275         * UIProcess/API/efl/ewk_view.cpp:
1276         (ewk_view_intent_service_register):
1277         * UIProcess/API/efl/ewk_view.h:
1278         * UIProcess/API/efl/ewk_view_loader_client.cpp:
1279         (registerIntentServiceForFrame):
1280         (ewk_view_loader_client_attach):
1281         * UIProcess/API/efl/ewk_view_private.h:
1282
1283 2012-07-02  Christophe Dumez  <christophe.dumez@intel.com>
1284
1285         [WK2][EFL] Free Ewk_Intent calloc'd memory with free() instead of delete
1286         https://bugs.webkit.org/show_bug.cgi?id=90433
1287
1288         Reviewed by Kenneth Rohde Christiansen.
1289
1290         Free calloc'd memory with free() instead of delete in Ewk_Intent.
1291         Add blank lines before return statements for consistency.
1292
1293         * UIProcess/API/efl/ewk_intent.cpp:
1294         (ewk_intent_unref):
1295         (ewk_intent_action_get):
1296         (ewk_intent_type_get):
1297         (ewk_intent_service_get):
1298         (ewk_intent_suggestions_get):
1299         (ewk_intent_extra_get):
1300         (ewk_intent_extra_names_get):
1301         (ewk_intent_new):
1302
1303 2012-07-02  Martin Robinson  <mrobinson@igalia.com>
1304
1305         [TextureMapper] The TextureMapper should support edge-distance anti-antialiasing
1306         https://bugs.webkit.org/show_bug.cgi?id=90308
1307
1308         Reviewed by Noam Rosenthal.
1309
1310         * UIProcess/texmap/LayerBackingStore.cpp:
1311         (WebKit::LayerBackingStore::paintToTextureMapper): Update the method to call paint with
1312         the new argument.
1313
1314 2012-07-02  Benjamin Poulain  <bpoulain@apple.com>
1315
1316         Do not do any logging initialization when logging is disabled
1317         https://bugs.webkit.org/show_bug.cgi?id=90228
1318
1319         Reviewed by Simon Fraser.
1320
1321         * Platform/Logging.cpp:
1322         * Platform/Logging.h:
1323         * UIProcess/WebContext.cpp:
1324         (WebKit::WebContext::WebContext):
1325         * WebProcess/WebProcess.cpp:
1326         (WebKit::WebProcess::WebProcess):
1327
1328 2012-07-02  No'am Rosenthal  <noam.rosenthal@nokia.com>
1329
1330         [Qt][WK2] New API tests introduced in r121620 fail
1331         https://bugs.webkit.org/show_bug.cgi?id=90372
1332
1333         Reviewed by Luiz Agostini.
1334
1335         Updated the pixel comparison to produce more predictable results.
1336
1337         * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
1338         (compareImages):
1339
1340 2012-07-02  Alexis Menard  <alexis.menard@openbossa.org>
1341
1342         [Qt] Fix WebProcess crash on Mac when accessing a site with video tag.
1343         https://bugs.webkit.org/show_bug.cgi?id=90384
1344
1345         Reviewed by Jocelyn Turcotte.
1346
1347         We need to initialize the private symbols used by MediaPlayerPrivateQTKit
1348         otherwise they will be null and it will lead to a crash. We copy WebSystemInterface
1349         files for WK2 just like the Mac port as WK2 may have different needs than WK1 layer (we
1350         may add or remove symbols in here). It doesn't fix the video rendering yet but it's
1351         first step.
1352
1353         * Target.pri:
1354         * WebProcess/WebCoreSupport/qt/WebSystemInterface.h: Added.
1355         * WebProcess/WebCoreSupport/qt/WebSystemInterface.mm: Added.
1356         (InitWebCoreSystemInterfaceForWK2):
1357         * WebProcess/qt/WebProcessMainQt.cpp:
1358         (WebKit::WebProcessMainQt):
1359
1360 2012-07-02  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
1361
1362         [EFL] [WK2] Remove content sniffer and decoder initialization from WebProcess
1363         https://bugs.webkit.org/show_bug.cgi?id=90275
1364
1365         Reviewed by Martin Robinson.
1366
1367         Do not initialize content sniffer and decoder in the WebProcess
1368         because the initialization is now done in WebCore.
1369
1370         * WebProcess/efl/WebProcessMainEfl.cpp:
1371         (WebKit::WebProcessMainEfl):
1372
1373 2012-07-02  Sheriff Bot  <webkit.review.bot@gmail.com>
1374
1375         Unreviewed, rolling out r120329, r121113, and r121138.
1376         http://trac.webkit.org/changeset/120329
1377         http://trac.webkit.org/changeset/121113
1378         http://trac.webkit.org/changeset/121138
1379         https://bugs.webkit.org/show_bug.cgi?id=90368
1380
1381         Introduced noticeable keyboard-related spins due to
1382         synchronous IPC. (Requested by kling on #webkit).
1383
1384         * UIProcess/WebPageProxy.cpp:
1385         (WebKit::WebPageProxy::handleKeyboardEvent):
1386         (WebKit::WebPageProxy::didReceiveEvent):
1387         * UIProcess/WebPageProxy.h:
1388         (WebPageProxy):
1389         * UIProcess/WebPageProxy.messages.in:
1390         * WebProcess/WebPage/WebPage.cpp:
1391         (WebKit::WebPage::keyEvent):
1392
1393 2012-07-01  Christophe Dumez  <christophe.dumez@intel.com>
1394
1395         [EFL][WK2] Add API to inspect a Web Intent
1396         https://bugs.webkit.org/show_bug.cgi?id=89749
1397
1398         Reviewed by Kenneth Rohde Christiansen.
1399
1400         Add EFL API to inspect a Web Intent and emit a signal
1401         on the view when a new intent request is made.
1402
1403         * PlatformEfl.cmake:
1404         * UIProcess/API/efl/EWebKit2.h:
1405         * UIProcess/API/efl/ewk_intent.cpp: Added.
1406         (_Ewk_Intent):
1407         (ewk_intent_ref):
1408         (ewk_intent_unref):
1409         (ewk_intent_action_get):
1410         (ewk_intent_type_get):
1411         (ewk_intent_service_get):
1412         (ewk_intent_suggestions_get):
1413         (ewk_intent_extra_get):
1414         (ewk_intent_extra_names_get):
1415         (ewk_intent_new):
1416         * UIProcess/API/efl/ewk_intent.h: Added.
1417         * UIProcess/API/efl/ewk_intent_private.h: Copied from Source/WebKit2/UIProcess/API/efl/ewk_view_loader_client.cpp.
1418         * UIProcess/API/efl/ewk_view.cpp:
1419         (ewk_view_intent_request_new):
1420         * UIProcess/API/efl/ewk_view.h:
1421         * UIProcess/API/efl/ewk_view_loader_client.cpp:
1422         (didReceiveIntentForFrame):
1423         (ewk_view_loader_client_attach):
1424         * UIProcess/API/efl/ewk_view_private.h:
1425
1426 2012-06-29  Luiz Agostini  <luiz.agostini@nokia.com>
1427
1428         [Qt][WK2] Private non-QtQuick API
1429         https://bugs.webkit.org/show_bug.cgi?id=84532
1430
1431         Reviewed by Noam Rosenthal.
1432
1433         Adding new private non-QtQuick API. This new C++ API makes it possible
1434         to have control over the lower levels of WebKit without going via QML.
1435
1436         This is a first version of the API, enough to show pages on the screen.
1437         Many features are not implemented.
1438
1439         * Target.pri:
1440         * UIProcess/API/qt/raw/qrawwebview.cpp: Added.
1441         * UIProcess/API/qt/raw/qrawwebview_p.h: Added.
1442         * UIProcess/API/qt/raw/qrawwebview_p_p.h: Added.
1443
1444         The tests for the new API are pixel tests. They use QRawWebView to load
1445         html files and generate images, and them compare those images to the ones
1446         in UIProcess/API/qt/tests/html/resources.
1447
1448         * UIProcess/API/qt/tests/html/bluesquare.html: Added.
1449         * UIProcess/API/qt/tests/html/redsquare.html: Added.
1450         * UIProcess/API/qt/tests/html/resources/qwkview_noBackground1.png: Added.
1451         * UIProcess/API/qt/tests/html/resources/qwkview_noBackground3.png: Added.
1452         * UIProcess/API/qt/tests/html/resources/qwkview_paint.png: Added.
1453         * UIProcess/API/qt/tests/qrawwebview/qrawwebview.pro: Added.
1454         * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp: Added.
1455
1456 2012-06-29  Christophe Dumez  <christophe.dumez@intel.com>
1457
1458         [WK2] Move intent delivery code from the frame to the page
1459         https://bugs.webkit.org/show_bug.cgi?id=89974
1460
1461         Reviewed by Anders Carlsson.
1462
1463         Move the intent delivery code from the frame to the page
1464         and add the corresponding C API for WKPage.
1465
1466         * UIProcess/API/C/WKPage.cpp:
1467         (WKPageDeliverIntentToFrame):
1468         * UIProcess/API/C/WKPage.h:
1469         * UIProcess/WebFrameProxy.cpp:
1470         (WebKit::WebFrameProxy::stopLoading):
1471         * UIProcess/WebFrameProxy.h:
1472         (WebKit):
1473         * UIProcess/WebPageProxy.cpp:
1474         (WebKit):
1475         (WebKit::WebPageProxy::deliverIntentToFrame):
1476         * UIProcess/WebPageProxy.h:
1477         (WebPageProxy):
1478
1479 2012-06-29  Dan Bernstein  <mitz@apple.com>
1480
1481         Can’t get basic element info from a WKRenderObject
1482         https://bugs.webkit.org/show_bug.cgi?id=90301
1483
1484         Reviewed by Anders Carlsson.
1485
1486         Moved the element info (tag name, id and class names) from WebRenderLayer to WebRenderObject,
1487         and gave WebRenderLayer a reference to a (shallow) WebRenderObject. Added WKRenderObject API
1488         for getting element info, while leaving the WKRenderLayer API in place for now for Safari.
1489
1490         * Shared/API/c/WKRenderLayer.cpp:
1491         (WKRenderLayerGetRenderer): Added this wrapper.
1492         (WKRenderLayerCopyRendererName): Changed to get the name from the renderer.
1493         (WKRenderLayerCopyElementTagName): Changed to go through the renderer.
1494         (WKRenderLayerCopyElementID): Ditto.
1495         (WKRenderLayerGetElementClassNames): Ditto.
1496         * Shared/API/c/WKRenderLayer.h: Added declaration of WKRenderLayerGetRenderer() and comments
1497         about removing older API.
1498         * Shared/API/c/WKRenderObject.cpp:
1499         (WKRenderObjectCopyElementTagName): Added this wrapper.
1500         (WKRenderObjectCopyElementID): Ditto.
1501         (WKRenderObjectGetElementClassNames): Ditto.
1502         * Shared/API/c/WKRenderObject.h:
1503         * Shared/UserMessageCoders.h:
1504         (WebKit::UserMessageEncoder::baseEncode): Removed the element info from the encoding of
1505         WebRenderLayer, and added the renderer. Added the element info to the encoding of
1506         WebRenderObject.
1507         (WebKit::UserMessageDecoder::baseDecode): Updated to match the encoding changes.
1508         * Shared/WebRenderLayer.cpp:
1509         (WebKit::WebRenderLayer::WebRenderLayer): Changed to initialize the m_renderer member
1510         variable with a WebRenderObject for the layer’s renderer, and removed the initialization of
1511         the element-related member variables that were removed.
1512         * Shared/WebRenderLayer.h:
1513         (WebKit::WebRenderLayer::create): Changed to take a renderer instead of renderer and element
1514         info.
1515         (WebKit::WebRenderLayer::renderer): Added this getter.
1516         (WebKit::WebRenderLayer::WebRenderLayer): Changed to take a renderer instead of renderer and
1517         element info.
1518         * Shared/WebRenderObject.cpp:
1519         (WebKit::WebRenderObject::create): Changed to pass true for the shouldIncludeDescendants
1520         parameter.
1521         (WebKit::WebRenderObject::WebRenderObject): Added a shouldIncludeDescdendants boolean
1522         parameter. When it is false, the m_children array remains null. Added initialization of
1523         member variables with the element’s tag name, id and class list.
1524         * Shared/WebRenderObject.h:
1525         (WebKit::WebRenderObject::create): Added an overload that takes a RenderObject and creates
1526         a shallow WebRenderObject.
1527         (WebRenderObject): Changed to take element tag name, id and class list.
1528         (WebKit::WebRenderObject::elementTagName): Added this getter.
1529         (WebKit::WebRenderObject::elementID): Ditto.
1530         (WebKit::WebRenderObject::elementClassNames): Ditto.
1531         (WebKit::WebRenderObject::WebRenderObject): 
1532
1533 2012-06-29  Tony Chang  <tony@chromium.org>
1534
1535         Unreviewed, rolling out r121572.
1536         http://trac.webkit.org/changeset/121572
1537         https://bugs.webkit.org/show_bug.cgi?id=90249
1538
1539         Breaks Mac build since it depends on r121547, which was rolled
1540         out
1541
1542         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
1543         (WebKit::NPN_GetValue):
1544         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1545         (WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
1546         * WebProcess/WebCoreSupport/WebEditorClient.h:
1547
1548 2012-06-29  Eric Seidel  <eric@webkit.org>
1549
1550         Remove BUILDING_ON_LEOPARD now that no ports build on Leopard
1551         https://bugs.webkit.org/show_bug.cgi?id=90249
1552
1553         Reviewed by Ryosuke Niwa.
1554
1555         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
1556         (WebKit::NPN_GetValue):
1557         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1558         (WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
1559         * WebProcess/WebCoreSupport/WebEditorClient.h:
1560
1561 2012-06-29  Konrad Piascik  <kpiascik@rim.com>
1562
1563         Don't hardcode target dpi of 160 (it should be 96 on desktop)
1564         https://bugs.webkit.org/show_bug.cgi?id=88114
1565
1566         Reviewed by Adam Barth.
1567
1568         Updated the call to computeViewportAttributes.
1569
1570         * WebProcess/WebPage/WebPage.cpp:
1571         (WebKit::WebPage::sendViewportAttributesChanged):
1572         (WebKit::WebPage::viewportConfigurationAsText):
1573
1574 2012-06-29  Sheriff Bot  <webkit.review.bot@gmail.com>
1575
1576         Unreviewed, rolling out r121529.
1577         http://trac.webkit.org/changeset/121529
1578         https://bugs.webkit.org/show_bug.cgi?id=90260
1579
1580         Failed to compile on Chromium WebKitMacBuilder (Requested by
1581         keishi on #webkit).
1582
1583         * UIProcess/mac/WKFullScreenWindowController.mm:
1584         (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
1585         (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):
1586         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
1587         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1588         (InitWebCoreSystemInterface):
1589
1590 2012-06-29  Eric Seidel  <eric@webkit.org>
1591
1592         Remove more BUILDING_ON_LEOPARD branches now that no port builds on Leopard
1593         https://bugs.webkit.org/show_bug.cgi?id=90252
1594
1595         Reviewed by Ryosuke Niwa.
1596
1597         * UIProcess/mac/WKFullScreenWindowController.mm:
1598         (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
1599         (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):
1600         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
1601         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1602         (InitWebCoreSystemInterface):
1603
1604 2012-06-28  MORITA Hajime  <morrita@google.com>
1605
1606         [Refactoring] NodeRenderingContext ctor could be built on top of the ComposedShadowTreeWalker
1607         https://bugs.webkit.org/show_bug.cgi?id=89732
1608
1609         Reviewed by Dimitri Glazkov.
1610
1611         * win/WebKit2.def:
1612         * win/WebKit2CFLite.def:
1613
1614 2012-06-28  John Sullivan  <sullivan@apple.com>
1615
1616         <https://bugs.webkit.org/show_bug.cgi?id=90216>
1617         <rdar://problem/11766518>
1618         Undo handling in WebKit2 is not robust against some page-closing code paths
1619
1620         Reviewed by Enrica Casucci.
1621
1622         * UIProcess/API/mac/PageClientImpl.h:
1623         Declared public function viewWillMoveToAnotherWindow().
1624         
1625         * UIProcess/API/mac/PageClientImpl.mm:
1626         (WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
1627         New function, calls clearAllEditCommands() to remove any Undo actions from the stack.
1628         This guarantees that no Undo actions will be abandoned when the PageClientImpl is dealloc'ed.
1629
1630         * UIProcess/API/mac/WKView.mm:
1631         (-[WKView viewWillMoveToWindow:]):
1632         Now informs PageClientImpl via new function PageClientImpl::viewWillMoveToAnotherWindow().
1633
1634 2012-06-28  Christophe Dumez  <christophe.dumez@intel.com>
1635
1636         [WK2] Add C API to inspect a Web Intent service
1637         https://bugs.webkit.org/show_bug.cgi?id=89276
1638
1639         Reviewed by Anders Carlsson.
1640
1641         Add C API for Web intent service so that it can be queried
1642         on client side.
1643
1644         * CMakeLists.txt:
1645         * GNUmakefile.list.am:
1646         * Target.pri:
1647         * UIProcess/API/C/WKIntentServiceInfo.cpp: Added.
1648         (WKIntentServiceInfoGetTypeID):
1649         (WKIntentServiceInfoCopyAction):
1650         (WKIntentServiceInfoCopyType):
1651         (WKIntentServiceInfoCopyHref):
1652         (WKIntentServiceInfoCopyTitle):
1653         (WKIntentServiceInfoCopyDisposition):
1654         * UIProcess/API/C/WKIntentServiceInfo.h: Added.
1655
1656 2012-06-28  Balazs Kelemen  <kbalazs@webkit.org>
1657
1658         [Qt] KURL assert at fast/loader/opaque-base-url.html
1659         https://bugs.webkit.org/show_bug.cgi?id=89468
1660
1661         Reviewed by Simon Hausmann.
1662
1663         Don't use the KURL(ParsedURLStringTag, const String&) constructor.
1664         We cannot be sure that the url in encode was valid and even if it
1665         was the message could have been corrupted.
1666         * Shared/qt/WebCoreArgumentCodersQt.cpp:
1667         (CoreIPC::::encode):
1668         (CoreIPC::::decode):
1669
1670 2012-06-27  Carlos Garcia Campos  <cgarcia@igalia.com>
1671
1672         Unreviewed. Fix the build without TEXTURE_MAPPER_GL.
1673
1674         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
1675         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
1676         * WebProcess/WebPage/gtk/WebPageGtk.cpp:
1677         (WebKit::WebPage::platformInitialize):
1678
1679 2012-06-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1680
1681         JSLock should be per-JSGlobalData
1682         https://bugs.webkit.org/show_bug.cgi?id=89123
1683
1684         Reviewed by Geoffrey Garen.
1685
1686         Changed all sites that used JSLock to instead use the new JSLockHolder
1687         and pass in the correct JS context that the code is about to interact with that 
1688         needs protection. Also added a couple JSLocks to places that didn't already 
1689         have it that needed it.
1690
1691         * Shared/mac/WebMemorySampler.mac.mm:
1692         (WebKit::WebMemorySampler::sampleWebKit):
1693         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1694         (WebKit::InjectedBundle::javaScriptObjectsCount):
1695         (WebKit::InjectedBundle::reportException):
1696         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1697         (WebKit::JSNPObject::callMethod):
1698         (WebKit::JSNPObject::callObject):
1699         (WebKit::JSNPObject::callConstructor):
1700         (WebKit::JSNPObject::put):
1701         (WebKit::JSNPObject::deleteProperty):
1702         (WebKit::JSNPObject::getOwnPropertyNames):
1703         (WebKit::JSNPObject::propertyGetter):
1704         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
1705         (WebKit::NPJSObject::hasMethod):
1706         (WebKit::NPJSObject::invoke):
1707         (WebKit::NPJSObject::invokeDefault):
1708         (WebKit::NPJSObject::hasProperty):
1709         (WebKit::NPJSObject::getProperty):
1710         (WebKit::NPJSObject::setProperty):
1711         (WebKit::NPJSObject::removeProperty):
1712         (WebKit::NPJSObject::enumerate):
1713         (WebKit::NPJSObject::construct):
1714         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1715         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
1716         (WebKit::NPRuntimeObjectMap::evaluate):
1717         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
1718         * WebProcess/WebPage/WebFrame.cpp:
1719         (WebKit::WebFrame::jsWrapperForWorld):
1720         (WebKit::WebFrame::computedStyleIncludingVisitedInfo):
1721         * WebProcess/WebPage/WebPage.cpp:
1722         (WebKit::WebPage::runJavaScriptInMainFrame):
1723         * WebProcess/WebProcess.cpp:
1724         (WebKit::WebProcess::getWebCoreStatistics):
1725
1726 2012-06-27  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1727
1728         REGRESSION(r121135): It made qmltests::WebViewColorChooser::test_accept() fail
1729         https://bugs.webkit.org/show_bug.cgi?id=89871
1730
1731         Reviewed by Simon Hausmann.
1732
1733         Added proper event synchronization to the test case.
1734
1735         * UIProcess/API/qt/tests/qmltests/WebView/tst_colorChooser.qml:
1736
1737 2012-06-27  Brady Eidson  <beidson@apple.com>
1738
1739         https://bugs.webkit.org/show_bug.cgi?id=87513
1740         WebBackForwardList needs an overhaul to consistently and clearly handle error conditions.
1741
1742         Reviewed by Darin Adler.
1743
1744         - We think a null entry might somehow be getting in the list so we now try to prevent that.
1745         - We think a null entry might somehow be in the list so we now null check when indexing into m_entries.
1746         - A lot of index math - especially tracking "no current index" - was implicit or wrong.
1747         - Operating on a WebBackForwardList whose page has been closed is now an explicit no-op.
1748         - The session state data reading and writing code was fragile and needed an overhaul.
1749         - This includes adding a new V1 format of the session data that is easier to validate when reading back in.
1750
1751         * UIProcess/WebBackForwardList.cpp:
1752         (WebKit::WebBackForwardList::~WebBackForwardList):
1753         (WebKit::WebBackForwardList::pageClosed):
1754         (WebKit::WebBackForwardList::addItem):
1755         (WebKit::WebBackForwardList::goToItem):
1756         (WebKit::WebBackForwardList::backListCount):
1757         (WebKit::WebBackForwardList::forwardListCount):
1758         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
1759         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
1760         (WebKit::WebBackForwardList::clear):
1761
1762         * UIProcess/WebBackForwardList.h:
1763         (WebBackForwardList):
1764
1765         * UIProcess/cf/WebBackForwardListCF.cpp:
1766         (WebKit::createEmptySessionHistoryDictionary):
1767         (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
1768         (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
1769         (WebKit::WebBackForwardList::restoreFromV0CFDictionaryRepresentation):
1770         (WebKit::WebBackForwardList::restoreFromV1CFDictionaryRepresentation):
1771         (WebKit::extractBackForwardListEntriesFromArray):
1772
1773 2012-06-27  Zan Dobersek  <zandobersek@gmail.com>
1774
1775         [Gtk] Add support for the Gamepad API
1776         https://bugs.webkit.org/show_bug.cgi?id=87503
1777
1778         Reviewed by Carlos Garcia Campos.
1779
1780         Add the Gamepad feature dependencies libraries to the LIBADD
1781         list for the libwebkitgtk2 library.
1782
1783         * GNUmakefile.am:
1784
1785 2012-06-26  Simon Hausmann  <simon.hausmann@nokia.com>
1786
1787         [Qt] Avoid use of deprecated Qt API
1788
1789         Reviewed by Tor Arne Vestbø.
1790
1791         QGuiApplication::inputPanel() has been deprecated in favour of
1792         inputMethod().
1793
1794         * UIProcess/qt/QtWebPageEventHandler.cpp:
1795         (WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
1796         (WebKit::QtWebPageEventHandler::~QtWebPageEventHandler):
1797         (WebKit::setInputPanelVisible):
1798         (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
1799         (WebKit::QtWebPageEventHandler::updateTextInputState):
1800
1801 2012-06-26  Christophe Dumez  <christophe.dumez@intel.com>
1802
1803         [WK2][GTK] Uninitialized variable in TextCheckerGtk.cpp
1804         https://bugs.webkit.org/show_bug.cgi?id=89948
1805
1806         Reviewed by Martin Robinson.
1807
1808         Properly initialize didInitializeState in
1809         TextChecker::state().
1810
1811         * UIProcess/gtk/TextCheckerGtk.cpp:
1812         (WebKit::TextChecker::state):
1813
1814 2012-06-25  Simon Hausmann  <simon.hausmann@nokia.com>
1815
1816         [Qt] Make it possible to build WebKit without QtWidgets
1817         https://bugs.webkit.org/show_bug.cgi?id=78109
1818
1819         Reviewed by Tor Arne Vestbø.
1820
1821         * WebKit2.pri: Add missing WK2 specific dependencies.
1822         * qt/MainQt.cpp: Do the QStyle initialization hook only if we are
1823         compiling with QtWidgets support.
1824         (WebKit):
1825         (main):
1826
1827 2012-06-25  Raphael Kubo da Costa  <rakuco@webkit.org>
1828
1829         [EFL][WK2] Include unistd.h in PlatformProcessIdentifier.h.
1830         https://bugs.webkit.org/show_bug.cgi?id=89804
1831
1832         Reviewed by Hajime Morita.
1833
1834         The pid_t typedef ends up coming from stdlib.h (indirectly via WTF
1835         includes) on Mac and Linux, even though that is not mandated by
1836         POSIX and breaks other platforms (such as FreeBSD). Fix that by
1837         explicitly including unistd.h, which is where the typedef is
1838         supposed to come from.
1839
1840         * Platform/PlatformProcessIdentifier.h:
1841
1842 2012-06-25  YoungTaeck Song  <youngtaeck.song@samsung.com>
1843
1844         [WK2][Qt][EFL] Extract common code from LayerTreeHostQt
1845         https://bugs.webkit.org/show_bug.cgi?id=89837
1846
1847         Reviewed by Noam Rosenthal.
1848
1849         Extract common code from LayerTreeHostQt to be used by both Qt and Efl.
1850         I renamed LayerTreeHost to LayerTreeCoordinator, and these are moved under WebProcess/WebPage/LayerTreeCoordinator.
1851         I Modified LayerTreeHostProxy to LayerTreeCoordinatorProxy too, Because LayerTreeHostProxy and LayerTreeHost were pair.
1852         Also WebGraphicsLayer moved under that directory.
1853
1854         * CMakeLists.txt:
1855         * DerivedSources.pri:
1856         * GNUmakefile.list.am:
1857         * Platform/CoreIPC/MessageID.h:
1858         * Target.pri:
1859         * UIProcess/API/qt/qquickwebpage.cpp:
1860         (QQuickWebPagePrivate::paint):
1861         (QQuickWebPage::updatePaintNode):
1862         (QQuickWebPagePrivate::updateSize):
1863         * UIProcess/DrawingAreaProxy.cpp:
1864         (WebKit::DrawingAreaProxy::didReceiveLayerTreeCoordinatorProxyMessage):
1865         * UIProcess/DrawingAreaProxy.h:
1866         (WebKit):
1867         (WebKit::DrawingAreaProxy::layerTreeCoordinatorProxy):
1868         (DrawingAreaProxy):
1869         * UIProcess/DrawingAreaProxyImpl.cpp:
1870         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
1871         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
1872         (WebKit::DrawingAreaProxyImpl::didReceiveLayerTreeCoordinatorProxyMessage):
1873         (WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
1874         * UIProcess/DrawingAreaProxyImpl.h:
1875         (WebKit):
1876         (DrawingAreaProxyImpl):
1877         * UIProcess/LayerTreeCoordinatorProxy.cpp: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.cpp.
1878         (WebKit):
1879         (WebKit::LayerTreeCoordinatorProxy::LayerTreeCoordinatorProxy):
1880         (WebKit::LayerTreeCoordinatorProxy::~LayerTreeCoordinatorProxy):
1881         (WebKit::LayerTreeCoordinatorProxy::updateViewport):
1882         (WebKit::LayerTreeCoordinatorProxy::dispatchUpdate):
1883         (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
1884         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
1885         (WebKit::LayerTreeCoordinatorProxy::removeTileForLayer):
1886         (WebKit::LayerTreeCoordinatorProxy::deleteCompositingLayer):
1887         (WebKit::LayerTreeCoordinatorProxy::setRootCompositingLayer):
1888         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerState):
1889         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerChildren):
1890         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerFilters):
1891         (WebKit::LayerTreeCoordinatorProxy::didRenderFrame):
1892         (WebKit::LayerTreeCoordinatorProxy::createDirectlyCompositedImage):
1893         (WebKit::LayerTreeCoordinatorProxy::destroyDirectlyCompositedImage):
1894         (WebKit::LayerTreeCoordinatorProxy::setContentsSize):
1895         (WebKit::LayerTreeCoordinatorProxy::setVisibleContentsRect):
1896         (WebKit::LayerTreeCoordinatorProxy::renderNextFrame):
1897         (WebKit::LayerTreeCoordinatorProxy::didChangeScrollPosition):
1898         (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
1899         (WebKit::LayerTreeCoordinatorProxy::purgeBackingStores):
1900         * UIProcess/LayerTreeCoordinatorProxy.h: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.h.
1901         (WebKit):
1902         (LayerTreeCoordinatorProxy):
1903         (WebKit::LayerTreeCoordinatorProxy::layerTreeRenderer):
1904         * UIProcess/LayerTreeCoordinatorProxy.messages.in: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.messages.in.
1905         * UIProcess/WebLayerTreeRenderer.cpp:
1906         (WebKit::WebLayerTreeRenderer::WebLayerTreeRenderer):
1907         (WebKit::WebLayerTreeRenderer::updateViewport):
1908         (WebKit::WebLayerTreeRenderer::renderNextFrame):
1909         (WebKit::WebLayerTreeRenderer::purgeBackingStores):
1910         (WebKit::WebLayerTreeRenderer::detach):
1911         * UIProcess/WebLayerTreeRenderer.h:
1912         (WebKit):
1913         (WebLayerTreeRenderer):
1914         * UIProcess/WebPageProxy.cpp:
1915         (WebKit::WebPageProxy::didReceiveMessage):
1916         * WebKit2.pri:
1917         * WebProcess/WebPage/DrawingArea.h:
1918         (DrawingArea):
1919         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1920         (WebKit::DrawingAreaImpl::didReceiveLayerTreeCoordinatorMessage):
1921         * WebProcess/WebPage/DrawingAreaImpl.h:
1922         (DrawingAreaImpl):
1923         * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/qt/LayerTreeHostQt.cpp.
1924         (WebKit):
1925         (WebKit::LayerTreeCoordinator::create):
1926         (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
1927         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
1928         (WebKit::LayerTreeCoordinator::setLayerFlushSchedulingEnabled):
1929         (WebKit::LayerTreeCoordinator::scheduleLayerFlush):
1930         (WebKit::LayerTreeCoordinator::cancelPendingLayerFlush):
1931         (WebKit::LayerTreeCoordinator::setShouldNotifyAfterNextScheduledLayerFlush):
1932         (WebKit::LayerTreeCoordinator::setRootCompositingLayer):
1933         (WebKit::LayerTreeCoordinator::invalidate):
1934         (WebKit::LayerTreeCoordinator::setNonCompositedContentsNeedDisplay):
1935         (WebKit::LayerTreeCoordinator::scrollNonCompositedContents):
1936         (WebKit::LayerTreeCoordinator::forceRepaint):
1937         (WebKit::LayerTreeCoordinator::sizeDidChange):
1938         (WebKit::LayerTreeCoordinator::didInstallPageOverlay):
1939         (WebKit::LayerTreeCoordinator::didUninstallPageOverlay):
1940         (WebKit::LayerTreeCoordinator::setPageOverlayNeedsDisplay):
1941         (WebKit::LayerTreeCoordinator::setPageOverlayOpacity):
1942         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
1943         (WebKit::LayerTreeCoordinator::syncLayerState):
1944         (WebKit::LayerTreeCoordinator::syncLayerChildren):
1945         (WebKit::LayerTreeCoordinator::syncCanvas):
1946         (WebKit::LayerTreeCoordinator::syncLayerFilters):
1947         (WebKit::LayerTreeCoordinator::attachLayer):
1948         (WebKit::LayerTreeCoordinator::detachLayer):
1949         (WebKit::updateOffsetFromViewportForSelf):
1950         (WebKit::updateOffsetFromViewportForLayer):
1951         (WebKit::LayerTreeCoordinator::syncFixedLayers):
1952         (WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
1953         (WebKit::LayerTreeCoordinator::layerFlushTimerFired):
1954         (WebKit::LayerTreeCoordinator::createPageOverlayLayer):
1955         (WebKit::LayerTreeCoordinator::destroyPageOverlayLayer):
1956         (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
1957         (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
1958         (WebKit::LayerTreeCoordinator::notifyAnimationStarted):
1959         (WebKit::LayerTreeCoordinator::notifySyncRequired):
1960         (WebKit::LayerTreeCoordinator::paintContents):
1961         (WebKit::LayerTreeCoordinator::showDebugBorders):
1962         (WebKit::LayerTreeCoordinator::showRepaintCounter):
1963         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
1964         (WebKit::LayerTreeCoordinator::createTile):
1965         (WebKit::LayerTreeCoordinator::updateTile):
1966         (WebKit::LayerTreeCoordinator::removeTile):
1967         (WebKit::LayerTreeCoordinator::visibleContentsRect):
1968         (WebKit::LayerTreeCoordinator::setVisibleContentsRect):
1969         (WebKit::LayerTreeCoordinator::renderNextFrame):
1970         (WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):
1971         (WebKit::LayerTreeCoordinator::purgeBackingStores):
1972         (WebKit::LayerTreeCoordinator::beginContentUpdate):
1973         * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h: Renamed from Source/WebKit2/WebProcess/WebPage/qt/LayerTreeHostQt.h.
1974         (WebKit):
1975         (LayerTreeCoordinator):
1976         (WebKit::LayerTreeCoordinator::layerTreeContext):
1977         (WebKit::LayerTreeCoordinator::pageOverlayShouldApplyFadeWhenPainting):
1978         (WebKit::LayerTreeCoordinator::pauseRendering):
1979         (WebKit::LayerTreeCoordinator::resumeRendering):
1980         (WebKit::LayerTreeCoordinator::deviceScaleFactorDidChange):
1981         * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeHost.messages.in.
1982         * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.cpp: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebGraphicsLayer.cpp.
1983         (WebCore):
1984         (WebCore::layerByIDMap):
1985         (WebCore::WebGraphicsLayer::layerByID):
1986         (WebCore::toWebLayerID):
1987         (WebCore::WebGraphicsLayer::didChangeLayerState):
1988         (WebCore::WebGraphicsLayer::didChangeChildren):
1989         (WebCore::WebGraphicsLayer::didChangeFilters):
1990         (WebCore::WebGraphicsLayer::setShouldUpdateVisibleRect):
1991         (WebCore::WebGraphicsLayer::didChangeGeometry):
1992         (WebCore::WebGraphicsLayer::WebGraphicsLayer):
1993         (WebCore::WebGraphicsLayer::~WebGraphicsLayer):
1994         (WebCore::WebGraphicsLayer::willBeDestroyed):
1995         (WebCore::WebGraphicsLayer::setChildren):
1996         (WebCore::WebGraphicsLayer::addChild):
1997         (WebCore::WebGraphicsLayer::addChildAtIndex):
1998         (WebCore::WebGraphicsLayer::addChildAbove):
1999         (WebCore::WebGraphicsLayer::addChildBelow):
2000         (WebCore::WebGraphicsLayer::replaceChild):
2001         (WebCore::WebGraphicsLayer::removeFromParent):
2002         (WebCore::WebGraphicsLayer::setPosition):
2003         (WebCore::WebGraphicsLayer::setAnchorPoint):
2004         (WebCore::WebGraphicsLayer::setSize):
2005         (WebCore::WebGraphicsLayer::setTransform):
2006         (WebCore::WebGraphicsLayer::setChildrenTransform):
2007         (WebCore::WebGraphicsLayer::setPreserves3D):
2008         (WebCore::WebGraphicsLayer::setMasksToBounds):
2009         (WebCore::WebGraphicsLayer::setDrawsContent):
2010         (WebCore::WebGraphicsLayer::setContentsOpaque):
2011         (WebCore::WebGraphicsLayer::setBackfaceVisibility):
2012         (WebCore::WebGraphicsLayer::setOpacity):
2013         (WebCore::WebGraphicsLayer::setContentsRect):
2014         (WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
2015         (WebCore::WebGraphicsLayer::setContentsToCanvas):
2016         (WebCore::WebGraphicsLayer::setFilters):
2017         (WebCore::WebGraphicsLayer::setContentsToImage):
2018         (WebCore::WebGraphicsLayer::setMaskLayer):
2019         (WebCore::WebGraphicsLayer::setReplicatedByLayer):
2020         (WebCore::WebGraphicsLayer::setNeedsDisplay):
2021         (WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
2022         (WebCore::WebGraphicsLayer::id):
2023         (WebCore::WebGraphicsLayer::syncCompositingState):
2024         (WebCore::toWebGraphicsLayer):
2025         (WebCore::WebGraphicsLayer::syncChildren):
2026         (WebCore::WebGraphicsLayer::syncFilters):
2027         (WebCore::WebGraphicsLayer::syncLayerState):
2028         (WebCore::WebGraphicsLayer::syncCanvas):
2029         (WebCore::WebGraphicsLayer::ensureImageBackingStore):
2030         (WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
2031         (WebCore::WebGraphicsLayer::tiledBackingStorePaintBegin):
2032         (WebCore::WebGraphicsLayer::setRootLayer):
2033         (WebCore::WebGraphicsLayer::setVisibleContentRectTrajectoryVector):
2034         (WebCore::WebGraphicsLayer::setContentsScale):
2035         (WebCore::WebGraphicsLayer::effectiveContentsScale):
2036         (WebCore::WebGraphicsLayer::adjustContentsScale):
2037         (WebCore::WebGraphicsLayer::createBackingStore):
2038         (WebCore::WebGraphicsLayer::tiledBackingStorePaint):
2039         (WebCore::WebGraphicsLayer::tiledBackingStorePaintEnd):
2040         (WebCore::WebGraphicsLayer::tiledBackingStoreUpdatesAllowed):
2041         (WebCore::WebGraphicsLayer::tiledBackingStoreContentsRect):
2042         (WebCore::WebGraphicsLayer::shouldUseTiledBackingStore):
2043         (WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
2044         (WebCore::WebGraphicsLayer::tiledBackingStoreBackgroundColor):
2045         (WebCore::WebGraphicsLayer::beginContentUpdate):
2046         (WebCore::WebGraphicsLayer::createTile):
2047         (WebCore::WebGraphicsLayer::updateTile):
2048         (WebCore::WebGraphicsLayer::removeTile):
2049         (WebCore::WebGraphicsLayer::updateContentBuffers):
2050         (WebCore::WebGraphicsLayer::purgeBackingStores):
2051         (WebCore::WebGraphicsLayer::setWebGraphicsLayerClient):
2052         (WebCore::WebGraphicsLayer::adjustVisibleRect):
2053         (WebCore::WebGraphicsLayer::computeTransformedVisibleRect):
2054         (WebCore::createWebGraphicsLayer):
2055         (WebCore::WebGraphicsLayer::initFactory):
2056         (WebCore::WebGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):
2057         * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.h: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebGraphicsLayer.h.
2058         (WebCore):
2059         (WebKit):
2060         (WebGraphicsLayerClient):
2061         (WebGraphicsLayer):
2062         (WebCore::WebGraphicsLayer::image):
2063         (WebCore::WebGraphicsLayer::fixedToViewport):
2064         (WebCore::WebGraphicsLayer::setFixedToViewport):
2065         (WebCore::WebGraphicsLayer::maskTarget):
2066         (WebCore::WebGraphicsLayer::setMaskTarget):
2067         * WebProcess/WebPage/LayerTreeHost.cpp:
2068         (WebKit::LayerTreeHost::create):
2069         * WebProcess/WebPage/LayerTreeHost.h:
2070         (LayerTreeHost):
2071         * WebProcess/WebPage/WebPage.cpp:
2072         (WebKit::WebPage::didReceiveMessage):
2073
2074 2012-06-25  Anders Carlsson  <andersca@apple.com>
2075
2076         [Lion WK2] fast/loader/reload-zero-byte-plugin.html hits assert
2077         https://bugs.webkit.org/show_bug.cgi?id=89611
2078         <rdar://problem/11714023>
2079
2080         Reviewed by Sam Weinig.
2081
2082         Make sure to send the response along to the plug-in in the case where the stream was empty.
2083
2084         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2085         (WebKit::WebFrameLoaderClient::finishedLoading):
2086
2087 2012-06-25  YoungTaeck Song  <youngtaeck.song@samsung.com>
2088
2089         [WK2][Qt][EFL] Move LayerBackingStore into common directory
2090         https://bugs.webkit.org/show_bug.cgi?id=89838
2091
2092         Reviewed by Noam Rosenthal.
2093
2094         Move LayerBackingStore into 'Source/WebKit2/UIProcess/texmap' to be used by both Qt and Efl.
2095
2096         * Target.pri:
2097         * UIProcess/texmap/LayerBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/qt/LayerBackingStore.cpp.
2098         (WebKit):
2099         (WebKit::LayerBackingStoreTile::swapBuffers):
2100         (WebKit::LayerBackingStoreTile::setBackBuffer):
2101         (WebKit::LayerBackingStore::createTile):
2102         (WebKit::LayerBackingStore::removeTile):
2103         (WebKit::LayerBackingStore::updateTile):
2104         (WebKit::LayerBackingStore::texture):
2105         (WebKit::LayerBackingStore::paintToTextureMapper):
2106         (WebKit::LayerBackingStore::commitTileOperations):
2107         * UIProcess/texmap/LayerBackingStore.h: Renamed from Source/WebKit2/UIProcess/qt/LayerBackingStore.h.
2108         (WebKit):
2109         (LayerBackingStoreTile):
2110         (WebKit::LayerBackingStoreTile::LayerBackingStoreTile):
2111         (WebKit::LayerBackingStoreTile::scale):
2112         (LayerBackingStore):
2113         (WebKit::LayerBackingStore::create):
2114         (WebKit::LayerBackingStore::LayerBackingStore):
2115
2116 2012-06-25  Carlos Garcia Campos  <cgarcia@igalia.com>
2117
2118         [GTK] Test /webkit2/WebKitWebView/permission-requests fails due to a runtime warning
2119         https://bugs.webkit.org/show_bug.cgi?id=89858
2120
2121         Reviewed by Xan Lopez.
2122
2123         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
2124         (testWebViewPermissionRequests): Make runtime warnings non-fatal
2125         for test /webkit2/WebKitWebView/permission-requests.
2126
2127 2012-06-25  Huang Dongsung  <luxtella@company100.net>
2128
2129         [GTK] Remove unused code in LayerTreeHostGtk.
2130         https://bugs.webkit.org/show_bug.cgi?id=89854
2131
2132         LayerTreeHostGtk::deviceScaleFactor() is unused and LayerTreeHost does not have
2133         virtual float deviceScaleFactor() const;
2134
2135         Reviewed by Martin Robinson.
2136
2137         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2138         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
2139         (LayerTreeHostGtk):
2140
2141 2012-06-24  Andreas Kling  <kling@webkit.org>
2142
2143         REGRESSION(r120329): Intermittent WebProcess shutdowns due to out-of-line DidReceiveEvent messages.
2144         <rdar://problem/11686974>
2145         <http://webkit.org/b/89659>
2146
2147         Unreviewed tests assertion fix, handleKeyboardEvent() should call didReceiveKeyEvent()
2148         rather than didReceiveEvent().
2149
2150         * UIProcess/WebPageProxy.cpp:
2151         (WebKit::WebPageProxy::handleKeyboardEvent):
2152         (WebKit::WebPageProxy::didReceiveKeyEvent):
2153
2154 2012-06-24  YoungTaeck Song  <youngtaeck.song@samsung.com>
2155
2156         [WK2][Qt][EFL] Modify Qt specific code to common code
2157         https://bugs.webkit.org/show_bug.cgi?id=89839
2158
2159         Reviewed by Noam Rosenthal.
2160
2161         Modify paintToGraphicsContext’s first argument QPainter to PlatformGraphicsContext to be used by both Qt and Efl.
2162
2163         * UIProcess/WebLayerTreeRenderer.cpp:
2164         (WebKit::WebLayerTreeRenderer::paintToGraphicsContext):
2165
2166 2012-06-24  Simon Fraser  <simon.fraser@apple.com>
2167
2168         Rename isPositioned to isOutOfFlowPositioned for clarity
2169         https://bugs.webkit.org/show_bug.cgi?id=89836
2170
2171         Reviewed by Antti Koivisto.
2172         
2173         RenderObject and RenderStyle had an isPositioned() method that was
2174         confusing, because it excluded relative positioning. Rename to 
2175         isOutOfFlowPositioned(), which makes it clearer that it only applies
2176         to absolute and fixed positioning.
2177
2178         Simple rename; no behavior change.
2179
2180         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
2181         (WebKit::updateOffsetFromViewportForSelf):
2182
2183 2012-06-24  Andreas Kling  <kling@webkit.org>
2184
2185         REGRESSION(r120329): Intermittent WebProcess shutdowns due to out-of-line DidReceiveEvent messages.
2186         <rdar://problem/11686974>
2187         <http://webkit.org/b/89659>
2188
2189         Reviewed by Sam Weinig.
2190
2191         Instead of sending DidReceiveEvent for key events as DispatchMessageEvenWhenWaitingForSyncReply,
2192         use proper synchronous messages. This makes the WebProcess block while the UIProcess handles
2193         the event but prevents a weird race condition where DidReceiveEvent gets dispatched just before
2194         a synchronous DecidePolicyForNavigationAction and something happens below DidReceiveEvent that
2195         invalidates the frame ID passed to DecidePolicyForNavigationAction.
2196
2197         This is a speculative fire-fighting fix.
2198
2199         * UIProcess/WebPageProxy.cpp:
2200         (WebKit::WebPageProxy::didReceiveKeyEvent):
2201         (WebKit::WebPageProxy::didReceiveEvent):
2202         * UIProcess/WebPageProxy.h:
2203         * UIProcess/WebPageProxy.messages.in:
2204         * WebProcess/WebPage/WebPage.cpp:
2205         (WebKit::WebPage::keyEvent):
2206
2207 2012-06-23  Sheriff Bot  <webkit.review.bot@gmail.com>
2208
2209         Unreviewed, rolling out r121058.
2210         http://trac.webkit.org/changeset/121058
2211         https://bugs.webkit.org/show_bug.cgi?id=89809
2212
2213         Patch causes plugins tests to crash in GTK debug builds
2214         (Requested by zdobersek on #webkit).
2215
2216         * Shared/mac/WebMemorySampler.mac.mm:
2217         (WebKit::WebMemorySampler::sampleWebKit):
2218         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2219         (WebKit::InjectedBundle::javaScriptObjectsCount):
2220         (WebKit::InjectedBundle::reportException):
2221         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2222         (WebKit::JSNPObject::callMethod):
2223         (WebKit::JSNPObject::callObject):
2224         (WebKit::JSNPObject::callConstructor):
2225         (WebKit::JSNPObject::put):
2226         (WebKit::JSNPObject::deleteProperty):
2227         (WebKit::JSNPObject::getOwnPropertyNames):
2228         (WebKit::JSNPObject::propertyGetter):
2229         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
2230         (WebKit::NPJSObject::hasMethod):
2231         (WebKit::NPJSObject::invoke):
2232         (WebKit::NPJSObject::invokeDefault):
2233         (WebKit::NPJSObject::hasProperty):
2234         (WebKit::NPJSObject::getProperty):
2235         (WebKit::NPJSObject::setProperty):
2236         (WebKit::NPJSObject::removeProperty):
2237         (WebKit::NPJSObject::enumerate):
2238         (WebKit::NPJSObject::construct):
2239         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
2240         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
2241         (WebKit::NPRuntimeObjectMap::evaluate):
2242         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
2243         * WebProcess/WebPage/WebFrame.cpp:
2244         (WebKit::WebFrame::jsWrapperForWorld):
2245         (WebKit::WebFrame::computedStyleIncludingVisitedInfo):
2246         * WebProcess/WebPage/WebPage.cpp:
2247         (WebKit::WebPage::runJavaScriptInMainFrame):
2248         * WebProcess/WebProcess.cpp:
2249         (WebKit::WebProcess::getWebCoreStatistics):
2250
2251 2012-06-23  Zan Dobersek  <zandobersek@gmail.com>
2252
2253         Unreviewed build fix for GTK's WebKit2 build after r121093.
2254
2255         * UIProcess/API/gtk/WebKitWebView.cpp:
2256         (webkitWebViewPopulateContextMenu):
2257
2258 2012-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2259
2260         Unreviewed. Fix several GTK+ unit tests.
2261
2262         GTK+ unit tests using WebViewTest::wait() started to fail due to a
2263         bug introduced in r121093.
2264
2265         * UIProcess/API/gtk/tests/WebViewTest.cpp:
2266         (WebViewTest::wait): Use this instead of m_mainLoop as user data
2267         for the idle callback.
2268
2269 2012-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2270
2271         [GTK] Add ContextMenu API to WebKit2 GTK+ API
2272         https://bugs.webkit.org/show_bug.cgi?id=81011
2273
2274         Reviewed by Martin Robinson.
2275
2276         Add WebKitWebView::context-menu signal and WebKitContextMenu and
2277         WebKitContextMenuItem objects to customize the default menu or
2278         buils new menus.
2279
2280         * GNUmakefile.list.am: Add new files to destination.
2281         * UIProcess/API/gtk/WebKitContextMenu.cpp: Added.
2282         (webkitContextMenuFinalize):
2283         (webkit_context_menu_init):
2284         (webkit_context_menu_class_init):
2285         (webkitContextMenuPopulate): Populate the given vector of
2286         ContextMenuItems with the WebKitContextMenu items releasing the
2287         items added to the vector.
2288         (webkitContextMenuCreate): Create a new WebKitContextMenu for the
2289         given WKArrayRef of WKContextMenuItemRef.
2290         (webkitContextMenuSetParentItem): Set the parent menu item of the
2291         menu. Used when a menu is added as a submenu of a menu item.
2292         (webkitContextMenuGetParentItem): Return the parent menu item of
2293         the menu.
2294         (webkit_context_menu_new): Create a new WebKitContextMenu.
2295         (webkit_context_menu_new_with_items): Create a new
2296         WebKitContextMenu using the given list of WebKitContextMenuItem.
2297         (webkit_context_menu_prepend): Add item at the beginning.
2298         (webkit_context_menu_append): Add item at the end.
2299         (webkit_context_menu_insert): Insert item at a random position.
2300         (webkit_context_menu_move_item): Move an existing item to a new
2301         position.
2302         (webkit_context_menu_get_items): Get the list of items.
2303         (webkit_context_menu_get_n_items): Get the number of items.
2304         (webkit_context_menu_first): Get the first item.
2305         (webkit_context_menu_last): Get the last item.
2306         (webkit_context_menu_get_item_at_position): Get the item at the
2307         given position.
2308         (webkit_context_menu_remove): Remove the given item.
2309         (webkit_context_menu_remove_all): Remove all items.
2310         * UIProcess/API/gtk/WebKitContextMenu.h: Added.
2311         * UIProcess/API/gtk/WebKitContextMenuActions.cpp: Added.
2312         (webkitContextMenuActionIsCheckable): Check if the given stock
2313         action is a toggle action.
2314         (webkitContextMenuActionGetActionTag): Get the WebCore
2315         ContextMenuAction corresponding to the given stock action.
2316         (webkitContextMenuActionGetForContextMenuItem): Get the stock
2317         action corresponding to the given WebCore ContextMenuAction.
2318         (webkitContextMenuActionGetLabel): Get the label string of the
2319         given stock action.
2320         * UIProcess/API/gtk/WebKitContextMenuActions.h: Added.
2321         * UIProcess/API/gtk/WebKitContextMenuActionsPrivate.h: Added.
2322         * UIProcess/API/gtk/WebKitContextMenuItem.cpp: Added.
2323         (webkitContextMenuItemFinalize):
2324         (webkit_context_menu_item_init):
2325         (webkit_context_menu_item_class_init):
2326         (checkAndWarnIfMenuHasParentItem): Check whether the given menu
2327         is already inside another menu showing a warning in such case.
2328         (webkitContextMenuItemSetSubMenu): Set the submenu of a menu item,
2329         checking that the menu is not part of another menu and setting the
2330         item as the parent of the submenu.
2331         (webkitContextMenuItemCreate): Create a new WebKitContextMenuItem
2332         for the given WKContextMenuItemRef.
2333         (webkitContextMenuItemCreateForGtkItem): Create a new
2334         WebKitContextMenuItem using the given GtkMenuItem.
2335         (webkitContextMenuItemSetSubMenuFromGtkMenu): Set the given
2336         GtkMenu as submenu of the item. This is used only to add Input
2337         Methods submenu that is created by GTK.
2338         (webkitContextMenuItemRelease): Release the WebCore
2339         ContextMenuItem associated to the item.
2340         (webkit_context_menu_item_new): Create a new WebKitContextMenuItem
2341         for the given GtkAction.
2342         (webkit_context_menu_item_new_from_stock_action): Create a new
2343         WebKitContextMenuItem for a stock action.
2344         (webkit_context_menu_item_new_from_stock_action_with_label):
2345         Create a new WebKitContextMenuItem for a stock action using a
2346         custom label.
2347         (webkit_context_menu_item_new_with_submenu): Create a new
2348         WebKitContextMenuItem with a submenu.
2349         (webkit_context_menu_item_new_separator): Create a new separator
2350         menu item.
2351         (webkit_context_menu_item_get_action): Get the GtkAction of the item.
2352         (webkit_context_menu_item_get_stock_action): Get the stock action
2353         of the item.
2354         (webkit_context_menu_item_is_separator): Whether item is a separator.
2355         (webkit_context_menu_item_set_submenu): Set or replace the
2356         submenu of the item.
2357         (webkit_context_menu_item_get_submenu): Get the submenu of the item.
2358         * UIProcess/API/gtk/WebKitContextMenuItem.h: Added.
2359         * UIProcess/API/gtk/WebKitContextMenuItemPrivate.h: Added.
2360         * UIProcess/API/gtk/WebKitContextMenuPrivate.h: Added.
2361         * UIProcess/API/gtk/WebKitDefines.h:
2362         * UIProcess/API/gtk/WebKitWebView.cpp:
2363         (webkit_web_view_class_init): Add WebKitWebView::context-menu signal.
2364         (getUnicodeMenuItemPosition): Helper function that returns the
2365         position of the unicode menu item in the proposed context menu.
2366         (webkitWebViewCreateAndAppendInputMethodsMenuItem): Use
2367         WebKitContextMenu API to add the input methods submenu to the
2368         default context menu.
2369         (webkitWebViewPopulateContextMenu): Create a WebKitContextMenu for
2370         the default context menu and emit WebKitWebView::context-menu
2371         signal. Then populate the context menu proxy with the resulting
2372         WebKitContextMenu.
2373         * UIProcess/API/gtk/WebKitWebView.h:
2374         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2375         (webkitWebViewBaseButtonPressEvent): In case of right click save
2376         the event to be used by context menu signal.
2377         (webkitWebViewBaseTakeContextMenuEvent): Return and release the
2378         saved button event.
2379         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
2380         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add sections for
2381         WebKitContextMenu and WebKitContextMenuItem.
2382         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
2383         * UIProcess/API/gtk/docs/webkit2gtk.types: Add
2384         webkit_context_menu_get_type and webkit_context_menu_item_get_type.
2385         * UIProcess/API/gtk/tests/GNUmakefile.am: Add new test for context menu.
2386         * UIProcess/API/gtk/tests/TestContextMenu.cpp: Added.
2387         (testContextMenuDefaultMenu):
2388         (testContextMenuPopulateMenu):
2389         (testContextMenuCustomMenu):
2390         (testContextMenuDisableMenu):
2391         (testContextMenuSubMenu):
2392         (beforeAll):
2393         (afterAll):
2394         * UIProcess/API/gtk/tests/TestMain.h:
2395         (Test::addLogFatalFlag): Add a log level flag to the mask of flags
2396         causing the program to abort.
2397         (Test::removeLogFatalFlag): Remove a log level flag to the mask of
2398         flags causing the program to abort.
2399         * UIProcess/API/gtk/tests/WebViewTest.cpp:
2400         (WebViewTest::quitMainLoop): Finish the main loop.
2401         (WebViewTest::quitMainLoopAfterProcessingPendingEvents): Finish
2402         the main loop when all pending events have been processed.
2403         (quitMainLoopIdleCallback):
2404         (WebViewTest::wait):
2405         * UIProcess/API/gtk/tests/WebViewTest.h:
2406         * UIProcess/API/gtk/webkit2.h: Include WebKitContextMenu.h,
2407         WebKitContextMenuItem.h and WebKitContextMenuActions.h.
2408         * UIProcess/API/gtk/webkit2marshal.list:
2409         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
2410         (WebKit::WebContextMenuProxyGtk::showContextMenu): Attach the
2411         popup menu to the view widget before showing it.
2412
2413 2012-06-22  Alexandru Chiculita  <achicu@adobe.com>
2414
2415         [CSS Shaders] Re-enable the CSS Shaders compile time flag on Safari Mac
2416         https://bugs.webkit.org/show_bug.cgi?id=89781
2417
2418         Reviewed by Dean Jackson.
2419
2420         Added ENABLE_CSS_SHADERS flag as enabled by default on Safari for Mac.
2421
2422         * Configurations/FeatureDefines.xcconfig:
2423
2424 2012-06-22  Ryuan Choi  <ryuan.choi@samsung.com>
2425
2426         [EFL][WK2] Support keyboard event
2427         https://bugs.webkit.org/show_bug.cgi?id=89268
2428
2429         Reviewed by Chang Shu.
2430
2431         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
2432         (WebKit::WebEditorClient::handleKeyboardEvent): Implemented default behavior.
2433         * WebProcess/WebPage/efl/WebPageEfl.cpp:
2434         (WebKit::WebPage::interpretKeyEvent): Implemented like WebKit1/Efl did.
2435
2436 2012-06-20  Mark Hahnenberg  <mhahnenberg@apple.com>
2437
2438         JSLock should be per-JSGlobalData
2439         https://bugs.webkit.org/show_bug.cgi?id=89123
2440
2441         Reviewed by Gavin Barraclough.
2442
2443         Changed all sites that used JSLock to instead use the new JSLockHolder
2444         and pass in the correct JS context that the code is about to interact with that 
2445         needs protection.
2446
2447         * Shared/mac/WebMemorySampler.mac.mm:
2448         (WebKit::WebMemorySampler::sampleWebKit):
2449         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2450         (WebKit::InjectedBundle::javaScriptObjectsCount):
2451         (WebKit::InjectedBundle::reportException):
2452         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2453         (WebKit::JSNPObject::callMethod):
2454         (WebKit::JSNPObject::callObject):
2455         (WebKit::JSNPObject::callConstructor):
2456         (WebKit::JSNPObject::put):
2457         (WebKit::JSNPObject::deleteProperty):
2458         (WebKit::JSNPObject::getOwnPropertyNames):
2459         (WebKit::JSNPObject::propertyGetter):
2460         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
2461         (WebKit::NPJSObject::hasMethod):
2462         (WebKit::NPJSObject::invoke):
2463         (WebKit::NPJSObject::invokeDefault):
2464         (WebKit::NPJSObject::hasProperty):
2465         (WebKit::NPJSObject::getProperty):
2466         (WebKit::NPJSObject::setProperty):
2467         (WebKit::NPJSObject::removeProperty):
2468         (WebKit::NPJSObject::enumerate):
2469         (WebKit::NPJSObject::construct):
2470         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
2471         (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
2472         (WebKit::NPRuntimeObjectMap::evaluate):
2473         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
2474         * WebProcess/WebPage/WebFrame.cpp:
2475         (WebKit::WebFrame::jsWrapperForWorld):
2476         (WebKit::WebFrame::computedStyleIncludingVisitedInfo):
2477         * WebProcess/WebPage/WebPage.cpp:
2478         (WebKit::WebPage::runJavaScriptInMainFrame):
2479         * WebProcess/WebProcess.cpp:
2480         (WebKit::WebProcess::getWebCoreStatistics):
2481
2482 2012-06-22  Jocelyn Turcotte  <turcotte.j@gmail.com>
2483
2484         [Qt] Fix the remote inspector loading problems on Mac
2485         https://bugs.webkit.org/show_bug.cgi?id=89747
2486
2487         Reviewed by Simon Hausmann.
2488
2489         Reverse the creation order of the inter-dependent WebSocketServerConnection
2490         and SocketStreamHandle to make sure that the later has a client properly
2491         set on construction.
2492
2493         This is to work around the assert on m_state in SocketStreamHandle::setClient.
2494
2495         * UIProcess/InspectorServer/WebSocketServer.cpp:
2496         (WebKit::WebSocketServer::didAcceptConnection):
2497         * UIProcess/InspectorServer/WebSocketServer.h:
2498         (WebKit::WebSocketServer::client):
2499         (WebSocketServer):
2500         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
2501         (WebKit::WebSocketServerConnection::WebSocketServerConnection):
2502         (WebKit::WebSocketServerConnection::setSocketHandle):
2503         (WebKit):
2504         * UIProcess/InspectorServer/WebSocketServerConnection.h:
2505         (WebSocketServerConnection):
2506         * UIProcess/InspectorServer/qt/WebSocketServerQt.cpp:
2507         (WebKit::QtTcpServerHandler::handleNewConnection):
2508
2509 2012-06-22  Sergio Villar Senin  <svillar@igalia.com>
2510
2511         [WK2] FindController::hideFindUI should unmark highlighted text matches
2512         https://bugs.webkit.org/show_bug.cgi?id=77747
2513
2514         Reviewed by Carlos Garcia Campos.
2515
2516         Unmark all text matches whenever FindController::hideFindUI is
2517         called to allow callers using the ShowHighlight find option to
2518         remove highlighting.
2519
2520         This patch enables a unit test for the WebKitFindController
2521         previously guarded by a #if(0) after r109222.
2522
2523         * UIProcess/API/gtk/tests/TestWebKitFindController.cpp:
2524         (testFindControllerHide):
2525         * WebProcess/WebPage/FindController.cpp:
2526         (WebKit::FindController::hideFindUI):
2527
2528 2012-06-21  Christophe Dumez  <christophe.dumez@intel.com>
2529
2530         [WK2] Add C API to inspect a Web Intent
2531         https://bugs.webkit.org/show_bug.cgi?id=89275
2532
2533         Reviewed by Anders Carlsson.
2534
2535         Add C API for Web Intent so that it can be queried
2536         on client side.
2537
2538         * CMakeLists.txt:
2539         * GNUmakefile.list.am:
2540         * Target.pri:
2541         * UIProcess/API/C/WKIntentData.cpp: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
2542         (WKIntentDataGetTypeID):
2543         (WKIntentDataCopyAction):
2544         (WKIntentDataCopyType):
2545         (WKIntentDataCopyService):
2546         (WKIntentDataCopySuggestions):
2547         (WKIntentDataCopyExtra):
2548         (WKIntentDataCopyExtras):
2549         * UIProcess/API/C/WKIntentData.h: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
2550         * UIProcess/WebIntentData.cpp:
2551         (WebKit::WebIntentData::suggestions):
2552         (WebKit):
2553         (WebKit::WebIntentData::extra):
2554         (WebKit::WebIntentData::extras):
2555         * UIProcess/WebIntentData.h:
2556         (WebIntentData):
2557
2558 2012-06-21  Christophe Dumez  <christophe.dumez@intel.com>
2559
2560         [WK2] Properly encode/decode service in IntentData
2561         https://bugs.webkit.org/show_bug.cgi?id=89460
2562
2563         Reviewed by Gustavo Noronha Silva.
2564
2565         Update IntentData::encode() and IntentData::decode()
2566         so that the "service" member is properly encoded
2567         and decoded.
2568
2569         * Shared/IntentData.cpp:
2570         (WebKit::IntentData::encode):
2571         (WebKit::IntentData::decode):
2572
2573 2012-06-21  Ryuan Choi  <ryuan.choi@gmail.com>
2574
2575         [EFL][WK2] Make WebKit2/Efl headers and resources installable.
2576         https://bugs.webkit.org/show_bug.cgi?id=88207
2577
2578         Reviewed by Chang Shu.
2579
2580         * CMakeLists.txt: Install WebProcess.
2581         * PlatformEfl.cmake: Generate ewebkit2.pc and install it.
2582         * efl/ewebkit2.pc.in: Added.
2583
2584 2012-06-21  Ryuan Choi  <ryuan.choi@samsung.com>
2585
2586         [EFL[WK2] Add WKViewEfl and WebKit2 API Object to represent Evas_Object.
2587         https://bugs.webkit.org/show_bug.cgi?id=88935
2588
2589         Reviewed by Chang Shu.
2590
2591         Add WKViewEfl to support WTR/Efl.
2592
2593         * PlatformEfl.cmake:
2594         * Shared/API/c/WKBase.h:
2595         * Shared/API/c/efl/WKBaseEfl.h: Added.
2596         * UIProcess/API/C/WKAPICast.h:
2597         * UIProcess/API/C/efl/WKAPICastEfl.h: Added.
2598         (WebKit):
2599         * UIProcess/API/C/efl/WKView.cpp: Added.
2600         (WKViewCreate):
2601         (WKViewGetPage):
2602         * UIProcess/API/C/efl/WKView.h: Added.
2603         * UIProcess/API/efl/ewk_view.cpp:
2604         (ewk_view_page_get):
2605         * UIProcess/API/efl/ewk_view_private.h:
2606
2607 2012-06-21  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2608
2609         [Qt] API tests for ColorChooser
2610         https://bugs.webkit.org/show_bug.cgi?id=88101
2611
2612         Reviewed by Kenneth Rohde Christiansen.
2613
2614         The test uses the value sanitization to detect if the feature is
2615         enabled or disabled and will just pass when disabled.
2616
2617         * UIProcess/API/qt/tests/qmltests/WebView/tst_colorChooser.qml: Added.
2618         * UIProcess/API/qt/tests/qmltests/common/colorChooser.html: Added.
2619
2620 2012-06-21  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2621
2622         [WK2][Qt] Color chooser API missing
2623         https://bugs.webkit.org/show_bug.cgi?id=87749
2624
2625         Reviewed by Kenneth Rohde Christiansen.
2626
2627         Added public experimental API for ColorChooser. This will
2628         allow the browser to define a custom dialog for selecting
2629         color when a input field of type "color" get focus.
2630
2631         The current implementation gives a model to the QML Component
2632         that has methods for canceling a request, selecting a color
2633         and fetching what is the current value of the HTML input.
2634
2635         * Target.pri:
2636         * UIProcess/API/qt/qquickwebview.cpp:
2637         (QQuickWebViewPrivate::QQuickWebViewPrivate):
2638         (QQuickWebViewExperimental::colorChooser):
2639         (QQuickWebViewExperimental::setColorChooser):
2640         * UIProcess/API/qt/qquickwebview_p.h:
2641         * UIProcess/API/qt/qquickwebview_p_p.h:
2642         (QQuickWebViewPrivate):
2643         * UIProcess/qt/QtPageClient.cpp:
2644         (WebKit::QtPageClient::createColorChooserProxy):
2645         * UIProcess/qt/WebColorChooserProxyQt.cpp: Added.
2646         (WebKit):
2647         (ColorChooserContextObject):
2648         (WebKit::ColorChooserContextObject::ColorChooserContextObject):
2649         (WebKit::ColorChooserContextObject::currentColor):
2650         (WebKit::ColorChooserContextObject::accept):
2651         (WebKit::ColorChooserContextObject::reject):
2652         (WebKit::WebColorChooserProxyQt::WebColorChooserProxyQt):
2653         (WebKit::WebColorChooserProxyQt::~WebColorChooserProxyQt):
2654         (WebKit::WebColorChooserProxyQt::createItem):
2655         (WebKit::WebColorChooserProxyQt::createContext):
2656         (WebKit::WebColorChooserProxyQt::setSelectedColor):
2657         (WebKit::WebColorChooserProxyQt::notifyColorSelected):
2658         (WebKit::WebColorChooserProxyQt::endChooser):
2659         * UIProcess/qt/WebColorChooserProxyQt.h: Added.
2660         (WebCore):
2661         (WebKit):
2662         (WebColorChooserProxyQt):
2663         (WebKit::WebColorChooserProxyQt::create):
2664
2665 2012-06-21  Mario Sanchez Prada  <msanchez@igalia.com>
2666
2667         [GTK] Add support for window.showModalDialog in WebKit2GTK+
2668         https://bugs.webkit.org/show_bug.cgi?id=79500
2669
2670         Reviewed by Carlos Garcia Campos.
2671
2672         Implement runModal in WebKitUIClient to make the WebKitWebView
2673         emit a 'run-as-modal' signal when requested, creating a new
2674         mainloop there to block user interaction with the original window
2675         while the modal dialog is showing.
2676
2677         * UIProcess/API/gtk/WebKitUIClient.cpp:
2678         (runModal): Call to the new webkitWebViewRunAsModalPage function.
2679         (attachUIClientToView): Add runModal.
2680         * UIProcess/API/gtk/WebKitWebView.cpp:
2681         (_WebKitWebViewPrivate): Add an atribute for a new main loop.
2682         (webkitWebViewFinalize): Make sure the main loop for main dialogs,
2683         if any, is stopped if it was still running.
2684         (webkit_web_view_class_init): Declare new signal 'run-as-modal'.
2685         (webkitWebViewRunAsModal): Emit the 'run-as-modal' signal and, if
2686         handled, create and run a new main loop.
2687         * UIProcess/API/gtk/WebKitWebView.h:
2688         (_WebKitWebViewClass): New handler for the 'run-as-modal' signal.
2689         * UIProcess/API/gtk/WebKitWebViewPrivate.h: Add webkitWebViewRunAsModalPage.
2690
2691         Allow setting and getting the value of WebPage's canRunModal
2692         attribute in the WebProcess from the UIProcess after the creation
2693         of a WebPage, to allow using it from WebKitWebView to allow the
2694         client application to decide whether to allow create modal
2695         dialogs, which would result in launching an additional nested
2696         event loop in the web process, after creating the dialog.
2697
2698         * UIProcess/WebPageProxy.cpp:
2699         (WebKit::WebPageProxy::WebPageProxy): Initialize the new
2700         m_canRunModal attribute, to cache the current status of the
2701         WebPage in the WebProcess.
2702         (WebKit::WebPageProxy::initializeUIClient): Call the new function
2703         setCanRunModal, instead of manually sending the SetCanRunModal message.
2704         (WebKit::WebPageProxy::creationParameters): Use m_canRunModal
2705         instead of m_uiClient.canRunModal when preparing the parameters.
2706         (WebKit::WebPageProxy::setCanRunModal): New public function, it
2707         sets the value of m_canRunModal and sends a message to the Web
2708         process for updating the WebPage, whenever possible.
2709         (WebKit::WebPageProxy::canRunModal): New public function, returns
2710         the value of the m_canRunModal attribute.
2711         * UIProcess/WebPageProxy.h:
2712         (WebPageProxy): Added new public functions and private attribute.
2713
2714         New property in WebKitSettings to be able to decide whether it is
2715         allowed to create and run new child webviews as modal dialogs.
2716
2717         * UIProcess/API/gtk/WebKitSettings.cpp:
2718         (_WebKitSettingsPrivate): New attribute allowModalDialogs.
2719         (webKitSettingsSetProperty): Handle the new property.
2720         (webKitSettingsGetProperty): Ditto.
2721         (webkit_settings_class_init): Install the new property.
2722         (webkitSettingsAttachSettingsToPage): Make sure the WebPage is
2723         initialized with the value of the new property.
2724         (webkit_settings_set_allow_modal_dialogs): New setter.
2725         (webkit_settings_get_allow_modal_dialogs): New getter.
2726         * UIProcess/API/gtk/WebKitSettings.h:
2727         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added new accessors.
2728
2729         Connect to the 'notify::allow-modal-dialogs' signal from
2730         WebKitSettings to ensure that canRunModal property of the WebPage
2731         is kept up to date. Ensure that signal handlers for monitoring
2732         settings are disconnected when the webview is finalized.
2733
2734         * UIProcess/API/gtk/WebKitWebView.cpp:
2735         (webkitWebViewSetSettings): Connect to the new signal
2736         'notify::allow-modal-dialogs', from WebKitSettings.
2737         (allowModalDialogsChanged): Callback to update WebPage's
2738         canRunModal property when updated through WebKitSettings.
2739         (webkitWebViewDisconnectSettingsSignalHandlers): Disconnect signal
2740         handlers for monitoring WebKitSettings properties.
2741         (webkitWebViewFinalize): Ensure signal handlers are disconnected.
2742         (webkit_web_view_set_settings): Ditto.
2743         * UIProcess/API/gtk/WebKitWebView.h:
2744
2745         Add new unit tests to check the 'run-as-modal' signal is emitted
2746         only when the new property in WebKitSettings is set to TRUE.
2747
2748         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
2749         (testWebViewAllowModalDialogs): New unit test to check that modal
2750         dialogs are properly created from JavaScript when allowed.
2751         (testWebViewDisallowModalDialogs): New unit test to check that
2752         it's not possible to create modal dialogs when not allowed.
2753         (beforeAll): Add the new unit test.
2754
2755 2012-06-20  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2756
2757         [WK2] Color chooser API missing
2758         https://bugs.webkit.org/show_bug.cgi?id=87495
2759
2760         Reviewed by Andreas Kling.
2761
2762         Added ColorChooser API to WebKit2. This API allows the
2763         embedder to define a custom color picker for <input type="color">.
2764
2765         Only one ColorChooser can be active for a page at a time. Although
2766         the implementation doesn't not assume a modal dialog, no other
2767         color chooser will be created until the active one is closed.
2768
2769         Also added stubs for all platforms, so it wont break the build when
2770         enabling color chooser, even though they don't have the backend
2771         implemented yet.
2772
2773         * CMakeLists.txt:
2774         * GNUmakefile.list.am:
2775         * Target.pri:
2776         * UIProcess/API/efl/PageClientImpl.cpp:
2777         (WebKit):
2778         (WebKit::PageClientImpl::createColorChooserProxy):
2779         * UIProcess/API/efl/PageClientImpl.h:
2780         (PageClientImpl):
2781         * UIProcess/API/gtk/PageClientImpl.cpp:
2782         (WebKit):
2783         (WebKit::PageClientImpl::createColorChooserProxy):
2784         * UIProcess/API/gtk/PageClientImpl.h:
2785         (PageClientImpl):
2786         * UIProcess/API/mac/PageClientImpl.h:
2787         (PageClientImpl):
2788         * UIProcess/API/mac/PageClientImpl.mm:
2789         (WebKit):
2790         (WebKit::PageClientImpl::createColorChooserProxy):
2791         * UIProcess/PageClient.h:
2792         (WebKit):
2793         (PageClient):
2794         * UIProcess/WebColorChooserProxy.h: Added.
2795         (WebCore):
2796         (WebKit):
2797         (WebColorChooserProxy):
2798         (Client):
2799         (WebKit::WebColorChooserProxy::Client::~Client):
2800         (WebKit::WebColorChooserProxy::~WebColorChooserProxy):
2801         (WebKit::WebColorChooserProxy::invalidate):
2802         (WebKit::WebColorChooserProxy::WebColorChooserProxy):
2803         * UIProcess/WebPageProxy.cpp:
2804         (WebKit::WebPageProxy::close):
2805         (WebKit):
2806         (WebKit::WebPageProxy::showColorChooser):
2807         (WebKit::WebPageProxy::setColorChooserColor):
2808         (WebKit::WebPageProxy::endColorChooser):
2809         (WebKit::WebPageProxy::didChooseColor):
2810         (WebKit::WebPageProxy::didEndColorChooser):
2811         (WebKit::WebPageProxy::processDidCrash):
2812         * UIProcess/WebPageProxy.h:
2813         (WebPageProxy):
2814         * UIProcess/WebPageProxy.messages.in:
2815         * UIProcess/qt/QtPageClient.cpp:
2816         (WebKit):
2817         (WebKit::QtPageClient::createColorChooserProxy):
2818         * UIProcess/qt/QtPageClient.h:
2819         (QtPageClient):
2820         * UIProcess/win/WebView.cpp:
2821         (WebKit):
2822         (WebKit::WebView::createColorChooserProxy):
2823         * UIProcess/win/WebView.h:
2824         (WebView):
2825         * WebKit2.xcodeproj/project.pbxproj:
2826         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2827         (WebKit::WebChromeClient::createColorChooser):
2828         * WebProcess/WebCoreSupport/WebColorChooser.cpp: Added.
2829         (WebKit):
2830         (WebKit::WebColorChooser::WebColorChooser):
2831         (WebKit::WebColorChooser::~WebColorChooser):
2832         (WebKit::WebColorChooser::didChooseColor):
2833         (WebKit::WebColorChooser::didEndChooser):
2834         (WebKit::WebColorChooser::disconnectFromPage):
2835         (WebKit::WebColorChooser::setSelectedColor):
2836         (WebKit::WebColorChooser::endChooser):
2837         * WebProcess/WebCoreSupport/WebColorChooser.h: Added.
2838         (WebCore):
2839         (WebKit):
2840         (WebColorChooser):
2841         * WebProcess/WebPage/WebPage.cpp:
2842         (WebKit::WebPage::WebPage):
2843         (WebKit::WebPage::close):
2844         (WebKit):
2845         (WebKit::WebPage::setActiveColorChooser):
2846         (WebKit::WebPage::didEndColorChooser):
2847         (WebKit::WebPage::didChooseColor):
2848         * WebProcess/WebPage/WebPage.h:
2849         (WebKit):
2850         (WebPage):
2851         (WebKit::WebPage::activeColorChooser):
2852         * WebProcess/WebPage/WebPage.messages.in:
2853         * win/WebKit2.vcproj:
2854
2855 2012-06-20  Brady Eidson  <beidson@apple.com>
2856
2857         <rdar://problem/11653784> and https://bugs.webkit.org/show_bug.cgi?id=89590
2858         showModalDialog message handling is flaky in WebKit2
2859
2860         Because RunLoop::performWork() swaps the function queue to a temporary Vector before calling
2861         the functions an inner run-loop - such as we see with running a modal dialog - does not have
2862         a change to handle any of the functions that were queued after the WebPageProxy::RunModal message.
2863
2864         By servicing the functions in the queue one at a time we can give the RunLoop a chance to pick up
2865         where it left off if RunLoop::performWork is re-entered.
2866
2867         To guarantee RunLoop::performWork is re-entered to handle those functions we also need to signal
2868         its source before entering the modal run loop so our RunLoop is woken up.
2869
2870         Reviewed by Darin Adler.
2871
2872         * Platform/CoreIPC/Connection.cpp:
2873         (CoreIPC::Connection::wakeUpRunLoop): Added so the WebPageProxy can signal the runloop to be woken up
2874           before it enters the modal dialog run loop.
2875         * Platform/CoreIPC/Connection.h:
2876
2877         * UIProcess/WebPageProxy.cpp:
2878         (WebKit::WebPageProxy::runModal): Call wakeUpRunLoop() before entering the modal dialog run loop.
2879
2880 2012-06-20  Julien Chaffraix  <jchaffraix@webkit.org>
2881
2882         Use IntSize in RenderLayer to represent scroll offsets
2883         https://bugs.webkit.org/show_bug.cgi?id=89154
2884
2885         Reviewed by Eric Seidel.
2886
2887         * WebProcess/WebPage/win/WebPageWin.cpp:
2888         (WebKit::WebPage::gestureDidScroll):
2889         Updated to pass an IntSize to scrollByRecursively.
2890
2891 2012-06-20  Christophe Dumez  <christophe.dumez@intel.com>
2892
2893         [WK2] Implement Web Intent delivery
2894         https://bugs.webkit.org/show_bug.cgi?id=88989
2895
2896         Reviewed by Anders Carlsson.
2897
2898         Add a deliverIntent() method to the WebFrame so that
2899         Web intents can be delivered once matched to a
2900         specific service.
2901
2902         * UIProcess/WebFrameProxy.cpp:
2903         (WebKit):
2904         (WebKit::WebFrameProxy::deliverIntent):
2905         * UIProcess/WebFrameProxy.h:
2906         (WebKit):
2907         (WebFrameProxy):
2908         * UIProcess/WebIntentData.h:
2909         (WebKit::WebIntentData::store):
2910         * WebProcess/WebPage/WebFrame.cpp:
2911         (WebKit):
2912         (WebKit::WebFrame::deliverIntent):
2913         * WebProcess/WebPage/WebFrame.h:
2914         (WebKit):
2915         (WebFrame):
2916         * WebProcess/WebPage/WebPage.cpp:
2917         (WebKit):
2918         (WebKit::WebPage::deliverIntentToFrame):
2919         * WebProcess/WebPage/WebPage.h:
2920         (WebKit):
2921         (WebPage):
2922         * WebProcess/WebPage/WebPage.messages.in:
2923
2924 2012-06-20  Alexis Menard  <alexis.menard@openbossa.org>
2925
2926         REGRESSION (120705) : LayerTreeHostQt asserts in debug.
2927         https://bugs.webkit.org/show_bug.cgi?id=89487
2928
2929         Reviewed by Noam Rosenthal.
2930
2931         We try to call createHandle twice on the same handle when the
2932         first matching atlas is full. This patch solved the problem by
2933         moving the createHandle call inside UpdateAtlas and call createHandle
2934         only when the atlas is not full. We can also remove the surface()
2935         getter as it is not used anymore.
2936
2937         * WebProcess/WebPage/UpdateAtlas.cpp:
2938         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
2939         * WebProcess/WebPage/UpdateAtlas.h:
2940         (UpdateAtlas):
2941         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
2942         (WebKit::LayerTreeHostQt::beginContentUpdate):
2943
2944 2012-06-19  Ryuan Choi  <ryuan.choi@samsung.com>
2945
2946         [EFL][Regression] Build break after r120786
2947         https://bugs.webkit.org/show_bug.cgi?id=89549
2948
2949         Unreviewed build fix for Efl port.
2950
2951         * CMakeLists.txt: Added disassembler in includes.
2952
2953 2012-06-19  Dan Bernstein  <mitz@apple.com>
2954
2955         WebKit2 part of: Paginated display API doesn’t allow setting the page progression direction
2956         https://bugs.webkit.org/show_bug.cgi?id=89394
2957
2958         Reviewed by Darin Adler.
2959
2960         * UIProcess/API/C/WKPage.cpp:
2961         (WKPageSetPaginationMode): Changed to map new WKPaginationMode values to new
2962         Pagination::Mode values.
2963         (WKPageGetPaginationMode): Similarly, in the opposite direction.
2964         * UIProcess/API/C/WKPagePrivate.h: Replaced WKPaginationMode values with ones that specify
2965         an axis and a direction along that axis.
2966         * UIProcess/API/mac/WKBrowsingContextController.mm:
2967         (-[WKBrowsingContextController setPaginationMode:]): Changed to handle new values.
2968         (-[WKBrowsingContextController paginationMode]): Ditto.
2969         * UIProcess/API/mac/WKBrowsingContextControllerPrivate.h: Replaced
2970         WKBrowsingContextPaginationMode values with ones that specify an axis and a direction along
2971         that axis.
2972
2973 2012-06-19  Alexis Menard  <alexis.menard@openbossa.org>
2974
2975         [Qt] Create an extra atlas when there is no available buffer space.
2976         https://bugs.webkit.org/show_bug.cgi?id=89012
2977
2978         Reviewed by Noam Rosenthal.
2979
2980         In case of the desktop mode when we scroll the view all the tiles
2981         are updated. It can happen that there no available buffer space for
2982         the currently used atlas(especially when scrolling fast). In that case 
2983         we can create a new one. One future improvement could be to make a timer and 
2984         delete this extra atlas when it is not used.
2985
2986         * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
2987         (WebKit::beginContentUpdateInAtlas):
2988         (WebKit::LayerTreeHostQt::beginContentUpdate):
2989         * WebProcess/WebPage/qt/LayerTreeHostQt.h:
2990         (LayerTreeHostQt):
2991
2992 2012-06-19  Csaba Osztrogonác  <ossy@webkit.org>
2993
2994         [Qt] Buildfix for newer Qt5, use QPointer instead of the deprecated QWeakPointer.
2995         https://bugs.webkit.org/show_bug.cgi?id=89449
2996
2997         Reviewed by Simon Hausmann.
2998
2999         * UIProcess/API/qt/qquicknetworkreply_p.h:
3000
3001 2012-06-19  Mike West  <mkwst@chromium.org>
3002
3003         Introduce ENABLE_CSP_NEXT configuration flag.
3004         https://bugs.webkit.org/show_bug.cgi?id=89300
3005
3006         Reviewed by Adam Barth.
3007
3008         The 1.0 draft of the Content Security Policy spec is just about to
3009         move to Last Call. We'll hide work on the upcoming 1.1 spec behind
3010         this ENABLE flag, disabled by default.
3011
3012         Spec: https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html
3013
3014         * Configurations/FeatureDefines.xcconfig:
3015
3016 2012-06-19  Mike West  <mkwst@chromium.org>
3017
3018         Add a scheme registry for bypassing Content Security Policy.
3019         https://bugs.webkit.org/show_bug.cgi?id=89373
3020
3021         Reviewed by Adam Barth.
3022
3023         * win/WebKit2.def:
3024         * win/WebKit2CFLite.def:
3025
3026 2012-06-16  Adam Barth  <abarth@webkit.org>
3027
3028         Settings::devicePixelRatio doesn't do anything and is confusing
3029         https://bugs.webkit.org/show_bug.cgi?id=89272
3030
3031         Reviewed by James Robinson.
3032
3033         * Shared/WebPreferencesStore.h:
3034         (WebKit):
3035             - Remove boilerplate code for the setting.
3036         * UIProcess/API/qt/qquickwebview.cpp:
3037         (QQuickWebViewExperimental::devicePixelRatio):
3038         (QQuickWebViewExperimental::setDevicePixelRatio):
3039             - Change these functions to get and set the real device scale factor.
3040         * WebProcess/WebPage/WebPage.cpp:
3041         (WebKit::WebPage::sendViewportAttributesChanged):
3042             - Use the real device scale factor for the viewport calculation.
3043         (WebKit::WebPage::updatePreferences):
3044             - Remove boilerplate code for the setting.
3045
3046 2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>
3047
3048         [WK2] Add support for explicit intents
3049         https://bugs.webkit.org/show_bug.cgi?id=89206
3050
3051         Reviewed by Kenneth Rohde Christiansen.
3052
3053         Expose the service URL of a Web Intent. This URL
3054         is set for explicit intents.
3055
3056         * Shared/IntentData.h:
3057         (IntentData):
3058         * UIProcess/WebIntentData.h:
3059         (WebKit::WebIntentData::service):
3060         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3061         (WebKit::WebFrameLoaderClient::dispatchIntent):
3062
3063 2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>
3064
3065         [EFL][WK2] Add title support to Ewk_View
3066         https://bugs.webkit.org/show_bug.cgi?id=89095
3067
3068         Reviewed by Kenneth Rohde Christiansen.
3069
3070         Add a method to get the title of the main frame in
3071         an Ewk_View. A "title,changed" signal is now emitted
3072         on the view to notify clients that the main frame
3073         title was changed.
3074
3075         * PlatformEfl.cmake:
3076         * UIProcess/API/efl/ewk_view.cpp:
3077         (_Ewk_View_Private_Data):
3078         (_ewk_view_priv_del):
3079         (ewk_view_base_add):
3080         (ewk_view_title_get):
3081         (ewk_view_title_changed):
3082         * UIProcess/API/efl/ewk_view.h:
3083         * UIProcess/API/efl/ewk_view_loader_client.cpp: Added.
3084         (didReceiveTitleForFrame):
3085         (ewk_view_loader_client_attach):
3086         * UIProcess/API/efl/ewk_view_loader_client_private.h: Added.
3087         * UIProcess/API/efl/ewk_view_private.h:
3088
3089 2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>
3090
3091         [WK2][EFL] Implement navigation back/forward in Ewk_View
3092         https://bugs.webkit.org/show_bug.cgi?id=89173
3093
3094         Reviewed by Kenneth Rohde Christiansen.
3095
3096         Add API for Ewk_View to ask the main frame to navigate backwards
3097         or forwards in history. Also add API to query if such navigation
3098         is possible.
3099
3100         * UIProcess/API/efl/ewk_view.cpp:
3101         (ewk_view_back):
3102         (ewk_view_forward):
3103         (ewk_view_back_possible):
3104         (ewk_view_forward_possible):
3105         * UIProcess/API/efl/ewk_view.h:
3106
3107 2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>
3108
3109         [EFL][WK2] Implement reload / stop in Ewk_View
3110         https://bugs.webkit.org/show_bug.cgi?id=89168
3111
3112         Reviewed by Kenneth Rohde Christiansen.
3113
3114         Add API on the Ewk_View to reload the main frame
3115         and to stop the current load.
3116
3117         * UIProcess/API/efl/ewk_view.cpp:
3118         (ewk_view_reload):
3119         (ewk_view_stop):
3120         * UIProcess/API/efl/ewk_view.h:
3121
3122 2012-06-14  Kent Tamura  <tkent@chromium.org>
3123
3124         Validate form state strings in FormController::setStateForNewFormElements()
3125         https://bugs.webkit.org/show_bug.cgi?id=88768
3126
3127         Reviewed by Hajime Morita.
3128
3129         * win/WebKit2.def: Expose some symbols used by Internals.cpp.
3130         * win/WebKit2CFLite.def: ditto.
3131
3132 2012-06-14  Tim Horton  <timothy_horton@apple.com>
3133
3134         DrawingArea: Painting is being resumed while the view is not visible
3135         https://bugs.webkit.org/show_bug.cgi?id=88940
3136         <rdar://problem/11652545>
3137
3138         Reviewed by Dean Jackson.
3139
3140         Using requestAnimationFrame and the fullscreen API on a DrawingArea-backed window would cause
3141         rAF to permanently suspend animations after entering full-screen mode, because of the following:
3142
3143         0. JavaScript causes fullscreen transition to start.
3144         1. Painting (and rAF) are suspended.
3145         2. The page changes size.
3146             a. DrawingAreaProxyImpl::sizeDidChange() calls DrawingAreaImpl::updateBackingStoreState, which calls DrawingAreaImpl::resumePainting.
3147             b. DrawingAreaImpl::resumePainting resumes painting, but does *not* resume rAF, because windowIsVisible is (legitimately) false.
3148         3. The view becomes visible, windowIsVisible is updated to true.
3149         4. visibilityDidChange() calls resumePainting again, but this time it early exits because painting is not suspended.
3150
3151         Notice that because of the early exit in 4, rAF is never resumed.
3152
3153         To solve this and prevent any further bugs caused by these unnecessary calls to resume/suspendPainting,
3154         temporarily stop sending SuspendPainting/ResumePainting messages from DrawingAreaProxyImpl::visibilityDidChange
3155         during the window animations that occur while entering and exiting full-screen.
3156
3157         * UIProcess/API/mac/WKViewInternal.h:
3158         * UIProcess/API/mac/WKView.mm:
3159         (-[WKView setAutomaticallySuspendAndResumePainting:]):
3160         (-[WKView automaticallySuspendAndResumePainting]):
3161         * UIProcess/DrawingAreaProxyImpl.cpp:
3162         (WebKit::DrawingAreaProxyImpl::visibilityDidChange):
3163         * UIProcess/WebPageProxy.h:
3164         (WebKit::WebPageProxy::setShouldSuspendAndResumePainting):
3165         (WebKit::WebPageProxy::shouldSuspendAndResumePainting):
3166         * UIProcess/mac/WKFullScreenWindowController.mm:
3167         (-[WKFullScreenWindowController enterFullScreen:]):
3168         (-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]):
3169
3170 2012-06-14  Jia Pu  <jpu@apple.com>
3171
3172         Mark text with text alternative with blue underline.
3173         https://bugs.webkit.org/show_bug.cgi?id=83047
3174
3175         Reviewed by Enrica Casucci.
3176
3177         Changes in WebKit2 include implementation of new functions declared in AlternativeTextClient,
3178         and logic for calling Editor::insertDictatedText() instead of Editor::insertText() when there's
3179         alternatives attached to the input string.
3180
3181         * Shared/API/c/WKContextMenuItemTypes.h:
3182         * Shared/API/c/WKSharedAPICast.h:
3183         * Shared/WebCoreArgumentCoders.cpp:
3184         * Shared/WebCoreArgumentCoders.h:
3185         * UIProcess/API/mac/PageClientImpl.h:
3186         * UIProcess/API/mac/PageClientImpl.mm:
3187         (WebKit::PageClientImpl::PageClientImpl):
3188         (WebKit::PageClientImpl::pageClosed):
3189         (WebKit::PageClientImpl::addDictationAlternatives):
3190         (WebKit::PageClientImpl::removeDictationAlternatives):
3191         (WebKit::PageClientImpl::showDictationAlternativeUI):
3192         (WebKit::PageClientImpl::dictationAlternatives):
3193         (WebKit::PageClientImpl::dismissDictationAlternativeUI):
3194         * UIProcess/API/mac/WKView.mm:
3195         (-[WKView insertText:replacementRange:]):
3196         (-[WKView validAttributesForMarkedText]):
3197         (-[WKView handleAcceptedAlternativeText:]):
3198         * UIProcess/API/mac/WKViewInternal.h:
3199         * UIProcess/PageClient.h:
3200         * UIProcess/WebPageProxy.cpp:
3201         (WebKit::WebPageProxy::showDictationAlternativeUI):
3202         (WebKit::WebPageProxy::dismissDictationAlternativeUI):
3203         (WebKit::WebPageProxy::removeDictationAlternatives):
3204         (WebKit::WebPageProxy::dictationAlternatives):
3205         * UIProcess/WebPageProxy.h:
3206         * UIProcess/WebPageProxy.messages.in:
3207         * UIProcess/mac/CorrectionPanel.mm:
3208         (correctionIndicatorType):
3209         (WebKit::CorrectionPanel::handleAcceptedReplacement):
3210         * UIProcess/mac/WebPageProxyMac.mm:
3211         (WebKit::WebPageProxy::insertDictatedText):
3212         * WebProcess/WebCoreSupport/WebAlternativeTextClient.h:
3213         (WebAlternativeTextClient):
3214         * WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp:
3215         (WebKit::WebAlternativeTextClient::showCorrectionAlternative):
3216         (WebKit::WebAlternativeTextClient::dismissAlternative):
3217         (WebKit::WebAlternativeTextClient::dismissAlternativeSoon):
3218         (WebKit::WebAlternativeTextClient::recordAutocorrectionResponse):
3219         (WebKit::WebAlternativeTextClient::removeDictationAlternatives):
3220         (WebKit::WebAlternativeTextClient::showDictationAlternativeUI):
3221         (WebKit::WebAlternativeTextClient::dismissDictationAlternativeUI):
3222         (WebKit::WebAlternativeTextClient::dictationAlternatives):
3223         * WebProcess/WebPage/WebPage.h:
3224         * WebProcess/WebPage/WebPage.messages.in:
3225         * WebProcess/WebPage/mac/WebPageMac.mm:
3226         (WebKit::WebPage::insertDictatedText):
3227
3228 2012-06-13  Andreas Kling  <kling@webkit.org>
3229
3230         Chinese IM receives incorrect/duplicated key events in text fields in webpages in Safari.
3231         <http://webkit.org/b/89048>
3232         <rdar://problem/11449702>
3233
3234         Reviewed by Darin Adler.
3235
3236         Send the DidReceiveEvent message with the DispatchMessageEvenWhenWaitingForSyncReply flag
3237         for keyboard events. This ensures that it always arrives before the corresponding synchronous
3238         InterpretQueuedKeyEvent message.
3239
3240         The problem was that we relied on DidReceiveEvent / InterpretQueuedKeyEvent always arriving in
3241         the same order they were sent. This was not always true, since DidReceiveEvent (async) would
3242         get deferred during an unrelated waitForSyncReply() whereas InterpretQueuedKeyEvent (sync)
3243         gets dispatched right away.
3244
3245         * WebProcess/WebPage/WebPage.cpp:
3246         (WebKit::WebPage::keyEvent):
3247
3248 2012-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
3249
3250         [GTK] Add input methods submenu item to the default context menu for editable content
3251         https://bugs.webkit.org/show_bug.cgi?id=80600
3252
3253         Reviewed by Martin Robinson.
3254
3255         * GNUmakefile.am: Add new files to compilation.
3256         * UIProcess/API/gtk/WebKitContextMenuClient.cpp: Added.
3257         (getContextMenuFromProposedMenu): Call webkitWebViewContextMenu().
3258         (attachContextMenuClientToView): Add implementation for
3259         getContextMenuFromProposedMenu callback.
3260         * UIProcess/API/gtk/WebKitContextMenuClient.h: Added.
3261         * UIProcess/API/gtk/WebKitWebView.cpp:
3262         (webkitWebViewConstructed): Attach context menu client to view.
3263         (webkitWebViewCreateAndAppendDefaultMenuItems): Helper function to
3264         add default context menu items to the new context menu items vector.
3265         (webkitWebViewShouldShowInputMethodsMenu): Helper function to
3266         check whether to show the input methods submenu according to the
3267         gtk-show-input-method-menu GTK+ setting.
3268         (webkitWebViewCreateAndAppendInputMethodsMenuItem): Helper
3269         function to add input methods submenu to the new context menu
3270         items vector.
3271         (webkitWebViewContextMenu): Create a new context menu items vector
3272         containing default items and input methods submenu in case of
3273         editable content. The active content menu is populated using that
3274         new vector.
3275         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3276         (webkitWebViewBaseSetActiveContextMenu): Set the active context menu.
3277         (webkitWebViewBaseGetActiveContextMenu): Get the active context menu.
3278         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
3279         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
3280         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
3281         (WebKit::WebContextMenuProxyGtk::append): Helper method to add a
3282         new item to the context menu.
3283         (WebKit::WebContextMenuProxyGtk::populate): Add items to the
3284         context menu.
3285         (WebKit::WebContextMenuProxyGtk::showContextMenu): Populate the
3286         menu with the given items and popup the menu if it's not empty.
3287         (WebKit::WebContextMenuProxyGtk::hideContextMenu): Get the GtkMenu
3288         from the WebCore ContextMenu to popdown it.
3289         (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk): Call
3290         webkitWebViewBaseSetActiveContextMenu() to set the menu as the current
3291         active one for the view.
3292         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk): Call
3293         webkitWebViewBaseSetActiveContextMenu() with NULL to reset the
3294         current active context of the view. GtkMenu is destroyed by
3295         WebCore ContextMenu in its destructor.
3296         * UIProcess/gtk/WebContextMenuProxyGtk.h:
3297
3298 2012-06-14  Christophe Dumez  <christophe.dumez@intel.com>
3299
3300         [WK2] Add implementation for registerIntentService in WebFrameLoaderClient
3301         https://bugs.webkit.org/show_bug.cgi?id=88399
3302
3303         Reviewed by Kenneth Rohde Christiansen.
3304
3305         Add implementation for registerIntentService() in
3306         WebFrameLoaderClient.
3307
3308         * CMakeLists.txt:
3309         * GNUmakefile.list.am:
3310         * Shared/API/c/WKBase.h:
3311         * Shared/APIClientTraits.h:
3312         * Shared/APIObject.h:
3313         * Shared/IntentServiceInfo.cpp: Added.
3314         (WebKit):
3315         (WebKit::IntentServiceInfo::encode):
3316         (WebKit::IntentServiceInfo::decode):
3317         * Shared/IntentServiceInfo.h: Added.
3318         (CoreIPC):
3319         (WebKit):
3320         (IntentServiceInfo):
3321         * Target.pri:
3322         * UIProcess/API/C/WKAPICast.h:
3323         (WebKit):
3324         * UIProcess/API/C/WKPage.h:
3325         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
3326         (attachLoaderClientToView):
3327         * UIProcess/WebIntentServiceInfo.cpp: Added.
3328         (WebKit):
3329         (WebKit::WebIntentServiceInfo::WebIntentServiceInfo):
3330         * UIProcess/WebIntentServiceInfo.h: Added.
3331         (WebKit):
3332         (WebIntentServiceInfo):
3333         (WebKit::WebIntentServiceInfo::create):
3334         (WebKit::WebIntentServiceInfo::~WebIntentServiceInfo):
3335         (WebKit::WebIntentServiceInfo::action):
3336         (WebKit::WebIntentServiceInfo::payloadType):
3337         (WebKit::WebIntentServiceInfo::href):
3338         (WebKit::WebIntentServiceInfo::title):
3339         (WebKit::WebIntentServiceInfo::disposition):
3340         (WebKit::WebIntentServiceInfo::type):
3341         * UIProcess/WebLoaderClient.cpp:
3342         (WebKit):
3343         (WebKit::WebLoaderClient::registerIntentServiceForFrame):
3344         * UIProcess/WebLoaderClient.h:
3345         (WebKit):
3346         (WebLoaderClient):
3347         * UIProcess/WebPageProxy.cpp:
3348         (WebKit):
3349         (WebKit::WebPageProxy::registerIntentServiceForFrame):
3350         * UIProcess/WebPageProxy.h:
3351         (WebKit):
3352         (WebPageProxy):
3353         * UIProcess/WebPageProxy.messages.in:
3354         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3355         (WebKit):
3356         (WebKit::WebFrameLoaderClient::registerIntentService):
3357         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3358         (WebFrameLoaderClient):
3359
3360 2012-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
3361
3362         [WK2] Add WKHitTestResultIsContentEditable()
3363         https://bugs.webkit.org/show_bug.cgi?id=80597
3364
3365         Reviewed by Martin Robinson.
3366
3367         * Shared/WebHitTestResult.cpp:
3368         (WebKit::WebHitTestResult::Data::encode): Encode isContentEditable.
3369         (WebKit::WebHitTestResult::Data::decode): Decode isContentEditable.
3370         * Shared/WebHitTestResult.h:
3371         (Data): Add isContentEditable.
3372         (WebKit::WebHitTestResult::Data::Data): Initialize
3373         isContentEditable.
3374         (WebKit::WebHitTestResult::isContentEditable): Returns whether
3375         hit test result target is editable content.
3376         * UIProcess/API/C/WKHitTestResult.cpp:
3377         (WKHitTestResultIsContentEditable): C API to get whether hit test
3378         result target is editable content.
3379         * UIProcess/API/C/WKHitTestResult.h:
3380         * UIProcess/API/gtk/WebKitHitTestResult.cpp:
3381         (webkitHitTestResultCreate): Add
3382         WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE flags to the context if
3383         hit test result target is editable content.
3384         (webkit_hit_test_result_context_is_editable): Returns TRUE if
3385         WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE flags is present in
3386         context.
3387         * UIProcess/API/gtk/WebKitHitTestResult.h:
3388         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
3389         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
3390         (testWebViewMouseTarget): Add tests for
3391         WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE.
3392
3393 2012-06-14  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
3394
3395         [WK2] Fix client interface size for WKPageLoaderClient.
3396         https://bugs.webkit.org/show_bug.cgi?id=88764
3397
3398         Reviewed by Anders Carlsson.
3399
3400         Fixes offset of WKPageLoaderClient for version 0 by adding didDetectXSSForFrame.
3401         The offset should be off the first new callback that was added in the new version.
3402
3403         * Shared/APIClientTraits.cpp:
3404         (WebKit):
3405
3406 2012-06-13  Christophe Dumez  <christophe.dumez@intel.com>
3407
3408         [WK2] Add implementation for dispatchIntent in WebFrameLoaderClient
3409         https://bugs.webkit.org/show_bug.cgi?id=88340
3410
3411         Reviewed by Kenneth Rohde Christiansen.
3412
3413         Add implementation for dispatchIntent() in WebFrameLoaderClient.
3414
3415         * CMakeLists.txt:
3416         * GNUmakefile.list.am:
3417         * Shared/API/c/WKBase.h:
3418         * Shared/APIClientTraits.h:
3419         * Shared/APIObject.h:
3420         * Shared/IntentData.cpp: Added.
3421         (WebKit):
3422         (WebKit::IntentData::encode):
3423         (WebKit::IntentData::decode):
3424         * Shared/IntentData.h: Added.
3425         (CoreIPC):
3426         (WebKit):
3427         (IntentData):
3428         * Target.pri:
3429         * UIProcess/API/C/WKAPICast.h:
3430         (WebKit):
3431         * UIProcess/API/C/WKPage.h:
3432         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
3433         (attachLoaderClientToView):
3434         * UIProcess/WebIntentData.cpp: Added.
3435         (WebKit):
3436         (WebKit::WebIntentData::WebIntentData):
3437         (WebKit::WebIntentData::data):
3438         * UIProcess/WebIntentData.h: Added.
3439         (WebKit):
3440         (WebIntentData):
3441         (WebKit::WebIntentData::create):
3442         (WebKit::WebIntentData::~WebIntentData):
3443         (WebKit::WebIntentData::action):
3444         (WebKit::WebIntentData::payloadType):
3445         (WebKit::WebIntentData::extras):
3446         (WebKit::WebIntentData::suggestions):
3447         (WebKit::WebIntentData::type):
3448         * UIProcess/WebLoaderClient.cpp:
3449         (WebKit):
3450         (WebKit::WebLoaderClient::didReceiveIntentForFrame):
3451         * UIProcess/WebLoaderClient.h:
3452         (WebKit):
3453         (WebLoaderClient):
3454         * UIProcess/WebPageProxy.cpp:
3455         (WebKit):
3456         (WebKit::WebPageProxy::didReceiveIntentForFrame):
3457         * UIProcess/WebPageProxy.h:
3458         (WebKit):
3459         (WebPageProxy):
3460         * UIProcess/WebPageProxy.messages.in:
3461         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3462         (WebKit::WebFrameLoaderClient::dispatchIntent):
3463
3464 2012-06-13  Tim Horton  <timothy_horton@apple.com>
3465
3466         Rename _swapView:with: to _replaceView:with:
3467         https://bugs.webkit.org/show_bug.cgi?id=89037
3468
3469         Reviewed by Darin Adler.
3470         
3471         _swapView:with: is a misnomer - after calling it, the first view is no longer
3472         contained within the view hierarchy. "Replace" is a more accurate term.
3473
3474         * UIProcess/mac/WKFullScreenWindowController.mm:
3475         (-[WKFullScreenWindowController enterFullScreen:]):
3476         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
3477         (-[WKFullScreenWindowController _replaceView:with:]):
3478
3479 2012-06-13  Martin Robinson  <mrobinson@igalia.com>
3480
3481         [GTK] Add an accelerated compositing implementation for WebKit2
3482         https://bugs.webkit.org/show_bug.cgi?id=86037
3483
3484         Reviewed by Alejandro G. Castro.
3485
3486         Add an implementation of LayerTreeHost for GTK+ that uses TextureMapperGL.
3487         Later this implementation will fall back to using the ImageBuffer TextureMapper.
3488
3489         * GNUmakefile.am: Add new files to the compilation.
3490         * Shared/LayerTreeContext.h:
3491         (LayerTreeContext): The GTK+ version of the LayerTreeContext just holds window handle.
3492         * Shared/gtk/LayerTreeContextGtk.cpp: Copied from Source/WebKit2/WebProcess/WebPage/LayerTreeHost.cpp.
3493         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h: Added.