Entering Tab View after a bunch of YouTube pages were opened in background tabs makes...
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2012-11-27  Dan Bernstein  <mitz@apple.com>
2
3         Entering Tab View after a bunch of YouTube pages were opened in background tabs makes all of them start playing simultaneously
4         https://bugs.webkit.org/show_bug.cgi?id=103358
5
6         Reviewed by Adele Peterson.
7
8         To fix this, this patch adds WKPageSetMayStartMediaWhenInWindow(), which allows the client to
9         prevent media from starting automatically when the view is put in a window.
10
11         * Shared/WebPageCreationParameters.cpp:
12         (WebKit::WebPageCreationParameters::encode): Encode mayStartMediaWhenInWindow.
13         (WebKit::WebPageCreationParameters::decode): Decode mayStartMediaWhenInWindow.
14         * Shared/WebPageCreationParameters.h:
15         (WebPageCreationParameters): Added boolean member mayStartMediaWhenInWindow.
16         * UIProcess/API/C/WKPage.cpp:
17         (WKPageSetMayStartMediaWhenInWindow): Added. Calls through to WebPageProxy.
18         * UIProcess/API/C/WKPagePrivate.h: Declared WKPageSetMayStartMediaWhenInWindow.
19         * UIProcess/WebPageProxy.cpp:
20         (WebKit::WebPageProxy::WebPageProxy): Added initializiation of m_mayStartMediaWhenInWindow
21         to true, the value matching the current behavior.
22         (WebKit::WebPageProxy::setMayStartMediaWhenInWindow): Added. Updates
23         m_mayStartMediaWhenInWindow and sends a message to the Web process to do the same.
24         (WebKit::WebPageProxy::creationParameters): Changed to set mayStartMediaWhenInWindow in the
25         process creation parameters.
26         * UIProcess/WebPageProxy.h:
27         (WebPageProxy): Declared setMayStartMediaWhenInWindow() and added member variable
28         m_mayStartMediaWhenInWindow.
29         * WebProcess/WebPage/WebPage.cpp:
30         (WebKit::WebPage::WebPage): Initialized m_mayStartMediaWhenInWindow from the creation
31         parameters.
32         (WebKit::WebPage::setIsInWindow): Made starting of media upon being added to a window
33         conditional on m_mayStartMediaWhenInWindow.
34         (WebKit::WebPage::setMayStartMediaWhenInWindow): Added. Sets m_mayStartMediaWhenInWindow. If
35         already in a window when changing from false to true, starts m_setCanStartMediaTimer.
36         * WebProcess/WebPage/WebPage.h:
37         (WebPage): Declared setMayStartMediaWhenInWindow() and added member variable m_mayStartMediaWhenInWindow.
38         * WebProcess/WebPage/WebPage.messages.in: Added SetMayStartMediaWhenInWindow.
39
40 2012-11-27  Pratik Solanki  <psolanki@apple.com>
41
42         objc/objc-runtime.h does not exist on all PLATFORM(MAC)
43         https://bugs.webkit.org/show_bug.cgi?id=101780
44
45         Reviewed by Brent Fulgham.
46
47         Clean up header includes so we don't include objc/objc-runtime.h.
48
49         * PluginProcess/mac/PluginProcessShim.mm:
50         * UIProcess/API/mac/PDFViewController.mm:
51
52 2012-11-27  Alexey Proskuryakov  <ap@apple.com>
53
54         [WK2] WebPageProxy::relatedPages() cannot assume that this page is known to process
55         https://bugs.webkit.org/show_bug.cgi?id=103433
56         <rdar://problem/12543513>
57
58         Reviewed by Jessie Berlin.
59
60         * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::relatedPages): Removed an incorrect
61         assertion, and modified code to not rely on its condition being true.
62
63 2012-11-27  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
64
65         [EFL][Qt][WK2] Tiles not always painted
66         https://bugs.webkit.org/show_bug.cgi?id=103271
67
68         Reviewed by Kenneth Rohde Christiansen.
69
70         The problem turned up because visible content was synchromized before the new fixed
71         layout size had been applied in the web process.
72
73         * UIProcess/PageViewportController.cpp:
74         (WebKit::PageViewportController::didChangeViewportSize):
75         (WebKit::PageViewportController::didChangeViewportAttributes):
76
77 2012-11-27  Yael Aharon  <yael.aharon@intel.com>
78
79         [EFL] Graphics layer edges are sometimes very pixelated
80         https://bugs.webkit.org/show_bug.cgi?id=103302
81
82         Reviewed by Kenneth Rohde Christiansen.
83
84         The call setEnableEdgeDistanceAntialiasing(true) was lost in the refactoring of
85         http://trac.webkit.org/changeset/135401.
86
87         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
88         (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
89
90 2012-11-27  KwangYong Choi  <ky0.choi@samsung.com>
91
92         [X11] Allow empty plugin name and description during scan plugin
93         https://bugs.webkit.org/show_bug.cgi?id=103234
94
95         Reviewed by Simon Hausmann.
96
97         Empty entries should be allowed when split the output string of scan plugin
98         because the plugin name and the description can be empty string.
99
100         * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
101         (WebKit::PluginProcessProxy::scanPlugin):
102         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
103         (WebKit::PluginProcessProxy::scanPlugin):
104
105 2012-11-27  Sheriff Bot  <webkit.review.bot@gmail.com>
106
107         Unreviewed, rolling out r135819.
108         http://trac.webkit.org/changeset/135819
109         https://bugs.webkit.org/show_bug.cgi?id=103388
110
111         It broke many tests on Qt and EFL WK2 platforms (Requested by
112         Ossy on #webkit).
113
114         * Shared/WebPageCreationParameters.cpp:
115         (WebKit::WebPageCreationParameters::encode):
116         (WebKit::WebPageCreationParameters::decode):
117         * Shared/WebPageCreationParameters.h:
118         (WebPageCreationParameters):
119         * UIProcess/API/C/WKPage.cpp:
120         (WKPageCopyRelatedPages):
121         * UIProcess/API/C/WKPagePrivate.h:
122         * UIProcess/WebPageProxy.cpp:
123         (WebKit::WebPageProxy::WebPageProxy):
124         (WebKit::WebPageProxy::creationParameters):
125         * UIProcess/WebPageProxy.h:
126         (WebPageProxy):
127         * WebProcess/WebPage/WebPage.cpp:
128         (WebKit::WebPage::WebPage):
129         (WebKit::WebPage::setIsInWindow):
130         * WebProcess/WebPage/WebPage.h:
131         (WebPage):
132         * WebProcess/WebPage/WebPage.messages.in:
133
134 2012-11-27  Kyungjin Kim  <gen.kim@samsung.com>
135
136         [WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
137         https://bugs.webkit.org/show_bug.cgi?id=103008
138
139         Reviewed by Gyuyoung Kim.
140
141         Fix API names in WKPreferences from 2d to 2D.
142
143         * UIProcess/API/C/WKPreferences.cpp:
144         (WKPreferencesSetAccelerated2DCanvasEnabled):
145         (WKPreferencesGetAccelerated2DCanvasEnabled):
146         * UIProcess/API/C/WKPreferencesPrivate.h:
147
148 2012-11-27  Sheriff Bot  <webkit.review.bot@gmail.com>
149
150         Unreviewed, rolling out r135786.
151         http://trac.webkit.org/changeset/135786
152         https://bugs.webkit.org/show_bug.cgi?id=103379
153
154         It made 3 plugin tests timeout on several platforms (Requested
155         by Ossy on #webkit).
156
157         * WebProcess/Plugins/PluginView.cpp:
158         (WebKit::PluginView::performFrameLoadURLRequest):
159         * WebProcess/WebPage/WebPage.cpp:
160         (WebKit::WebPage::loadURLRequest):
161         (WebKit::WebPage::loadData):
162         (WebKit::WebPage::linkClicked):
163
164 2012-11-27  Huang Dongsung  <luxtella@company100.net>
165
166         Coordinated Graphics: Remove the maskTarget member of CoordinatedGraphicsLayer.
167         https://bugs.webkit.org/show_bug.cgi?id=103297
168
169         Reviewed by Noam Rosenthal.
170
171         Remove the maskTarget member of CoordinatedGraphicsLayer, which is not used.
172
173         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
174         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
175         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
176         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
177         (CoordinatedGraphicsLayer):
178
179 2012-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>
180
181         Unreviewed, rolling out r135822.
182         http://trac.webkit.org/changeset/135822
183         https://bugs.webkit.org/show_bug.cgi?id=103369
184
185         Undo the revert of r135818, since that change does not affect
186         code used by Chromium (Requested by apavlov on #webkit).
187
188         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
189         (WebCore::CoordinatedGraphicsLayer::setContentsVisible):
190         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
191
192 2012-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>
193
194         Unreviewed, rolling out r135818.
195         http://trac.webkit.org/changeset/135818
196         https://bugs.webkit.org/show_bug.cgi?id=103368
197
198         platform/chromium/virtual/threaded/compositing/visibility
199         /visibility-simple-webgl-layer.html crash on Mountain Lion
200         (Requested by apavlov on #webkit).
201
202         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
203         (WebCore::CoordinatedGraphicsLayer::setContentsVisible):
204         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
205
206 2012-11-26  Dan Bernstein  <mitz@apple.com>
207
208         <rdar://problem/11931191> Entering Tab View after a bunch of YouTube pages were opened in background tabs makes all of them start playing simultaneously
209         https://bugs.webkit.org/show_bug.cgi?id=103358
210
211         Reviewed by Adele Peterson.
212
213         To fix this, this patch adds WKPageSetMayStartMediaWhenInWindow(), which allows the client to
214         prevent media from starting automatically when the view is put in a window.
215
216         * Shared/WebPageCreationParameters.cpp:
217         (WebKit::WebPageCreationParameters::encode): Encode mayStartMediaWhenInWindow.
218         (WebKit::WebPageCreationParameters::decode): Decode mayStartMediaWhenInWindow.
219         * Shared/WebPageCreationParameters.h:
220         (WebPageCreationParameters): Added boolean member mayStartMediaWhenInWindow.
221         * UIProcess/API/C/WKPage.cpp:
222         (WKPageSetMayStartMediaWhenInWindow): Added. Calls through to WebPageProxy.
223         * UIProcess/API/C/WKPagePrivate.h: Declared WKPageSetMayStartMediaWhenInWindow.
224         * UIProcess/WebPageProxy.cpp:
225         (WebKit::WebPageProxy::WebPageProxy): Added initializiation of m_mayStartMediaWhenInWindow
226         to true, the value matching the current behavior.
227         (WebKit::WebPageProxy::setMayStartMediaWhenInWindow): Added. Updates
228         m_mayStartMediaWhenInWindow and sends a message to the Web process to do the same.
229         (WebKit::WebPageProxy::creationParameters): Changed to set mayStartMediaWhenInWindow in the
230         process creation parameters.
231         * UIProcess/WebPageProxy.h:
232         (WebPageProxy): Declared setMayStartMediaWhenInWindow() and added member variable
233         m_mayStartMediaWhenInWindow.
234         * WebProcess/WebPage/WebPage.cpp:
235         (WebKit::WebPage::WebPage): Initialized m_mayStartMediaWhenInWindow from the creation
236         parameters.
237         (WebKit::WebPage::setIsInWindow): Made starting of media upon being added to a window
238         conditional on m_mayStartMediaWhenInWindow.
239         (WebKit::WebPage::setMayStartMediaWhenInWindow): Added. Sets m_mayStartMediaWhenInWindow. If
240         already in a window when changing from false to true, starts m_setCanStartMediaTimer.
241         * WebProcess/WebPage/WebPage.h:
242         (WebPage): Declared setMayStartMediaWhenInWindow() and added member variable m_mayStartMediaWhenInWindow.
243         * WebProcess/WebPage/WebPage.messages.in: Added SetMayStartMediaWhenInWindow.
244
245 2012-11-26  Huang Dongsung  <luxtella@company100.net>
246
247         Coordinated Graphics: Set visibility to a mask layer in GraphicsLayer::setContentsVisible().
248         https://bugs.webkit.org/show_bug.cgi?id=103297
249
250         Reviewed by Noam Rosenthal.
251
252         GraphicsLayerTextureMapper and CoordinatedGraphicsLayer set the visibility of a
253         mask layer in setContentsVisible() and setMaskLayer() like setting a size.
254         This patch is needed because RenderLayerBacking does not set the visibility to a
255         mask layer like the size.
256
257         This patch does not change user experience because an invisible layer is not
258         rendered although the mask layer is rendered. In that sense, it is an
259         optimization patch.
260
261         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
262         (WebCore::CoordinatedGraphicsLayer::setContentsVisible):
263         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
264
265 2012-11-26  Kyungjin Kim  <gen.kim@samsung.com>
266
267         [WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
268         https://bugs.webkit.org/show_bug.cgi?id=103008
269
270         Reviewed by Gyuyoung Kim.
271
272         Add setting APIs for accelerated 2d canvas in WebKit2.
273
274         * Shared/WebPreferencesStore.h:
275         (WebKit):
276         * UIProcess/API/C/WKPreferences.cpp:
277         (WKPreferencesSetAccelerated2dCanvasEnabled):
278         (WKPreferencesGetAccelerated2dCanvasEnabled):
279         * UIProcess/API/C/WKPreferencesPrivate.h:
280         * WebProcess/WebPage/WebPage.cpp:
281         (WebKit::WebPage::updatePreferences):
282
283 2012-11-26  Tim Horton  <timothy_horton@apple.com>
284
285         Ensure that plugins are initialized before using handleEditingCommand/isEditingCommandEnabled/shouldAllowScripting
286         https://bugs.webkit.org/show_bug.cgi?id=103288
287
288         Reviewed by Dan Bernstein.
289
290         Other PluginView methods that use m_plugin null-check m_plugin and check
291         that the plugin has finished initializing before using it. These three
292         should do the same thing.
293
294         * WebProcess/Plugins/PluginView.cpp:
295         (WebKit::PluginView::handleEditingCommand):
296         (WebKit::PluginView::isEditingCommandEnabled):
297         (WebKit::PluginView::shouldAllowScripting):
298
299 2012-11-26  Tim Horton  <timothy_horton@apple.com>
300
301         PDFPlugin: Subframe PDF context menus are in the wrong place
302         https://bugs.webkit.org/show_bug.cgi?id=103284
303         <rdar://problem/12727972>
304
305         Reviewed by Dan Bernstein.
306
307         Event position is in window coordinates, not content coordinates.
308         Since we have no windowToScreen(), use windowToContents and contentsToScreen
309         to get to screen coordinate space, which WKPopupContextMenu wants.
310
311         * WebProcess/Plugins/PDF/PDFPlugin.mm:
312         (WebKit::PDFPlugin::handleContextMenuEvent):
313
314 2012-11-26  Tim Horton  <timothy_horton@apple.com>
315
316         PDFPlugin: Ctrl-click opens a link in a PDF in addition to context menu
317         https://bugs.webkit.org/show_bug.cgi?id=103282
318         <rdar://problem/12710892>
319
320         Reviewed by Dan Bernstein.
321
322         Don't send standard mouse events to PDFKit if a click will also show/hide the context menu.
323
324         * WebProcess/Plugins/PDF/PDFPlugin.mm:
325         (WebKit::PDFPlugin::handleMouseEvent):
326
327 2012-11-26  Ryuan Choi  <ryuan.choi@gmail.com>
328
329         [EFL] Unreviewed build fix after r135767 without Tiled Backing Store
330         https://bugs.webkit.org/show_bug.cgi?id=103320
331
332         Unreviewed build fix.
333
334         * WebProcess/Plugins/Plugin.cpp:
335         * WebProcess/Plugins/Plugin.h:
336         (WebCore):
337
338 2012-11-26  James Simonsen  <simonjam@chromium.org>
339
340         Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
341         https://bugs.webkit.org/show_bug.cgi?id=102151
342
343         Reviewed by Adam Barth.
344
345         * WebProcess/Plugins/PluginView.cpp:
346         (WebKit::PluginView::performFrameLoadURLRequest):
347         * WebProcess/WebPage/WebPage.cpp:
348         (WebKit::WebPage::loadURLRequest):
349         (WebKit::WebPage::loadData):
350
351 2012-11-26  Jon Lee  <jonlee@apple.com>
352
353         Pass clicks through to the restarted plugin
354         https://bugs.webkit.org/show_bug.cgi?id=102150
355         <rdar://problem/12695575>
356
357         Reviewed by Simon Fraser.
358
359         Expose convertToRootView() as a public function for all plugins. It converts the click point
360         from local plugin coordinates to root view coordinates. When the events are sent to the
361         plugin, the coordinate gets converted back to the local reference frame.
362         * WebProcess/Plugins/Plugin.cpp:
363         (WebKit::Plugin::convertToRootView): Default implementation should not be reached.
364         * WebProcess/Plugins/Plugin.h: Promote convertToRootView() from NetscapePlugin.h.
365         * WebProcess/Plugins/Netscape/NetscapePlugin.h: An implementation already existed. Make the
366         method virtual.
367         * WebProcess/Plugins/PluginProxy.h:
368         * WebProcess/Plugins/PluginProxy.cpp:
369         (WebKit::PluginProxy::convertToRootView): Apply the transform to the provided point to return
370         a point in root view coordinates.
371
372         Change the threshold state to PlayingWithPendingMouseClick instead of Playing, since that is
373         the earliest state where the plugin is playing.
374         * WebProcess/Plugins/PluginView.cpp: Give the snapshot a little more time to generate.
375         (WebKit::PluginView::didInitializePlugin): When the plugin has initialized, tell the plugin
376         element to dispatch the pending mouse click.
377         (WebKit::PluginView::paint):
378         (WebKit::PluginView::createWebEvent): Helper function to convert a WebCore mouse event to a
379         WebMouseEvent.
380         (WebKit::PluginView::handleEvent): If the event is simulated, there is no source event from
381         the UI process. So we fabricate one based on the simulated event.
382         (WebKit::PluginView::invalidateRect):
383         (WebKit::PluginView::isAcceleratedCompositingEnabled):
384         * WebProcess/Plugins/PluginView.h:
385
386 2012-11-26  Kalev Lember  <kalevlember@gmail.com>
387
388         [GTK] Explicitly link against librt
389         https://bugs.webkit.org/show_bug.cgi?id=103194
390
391         Reviewed by Martin Robinson.
392
393         Fixes broken build with undefined references to shm_open / shm_unlink
394         symbols. SharedMemoryUnix.cpp uses these so we need to link with -lrt.
395
396         * GNUmakefile.am:
397
398 2012-11-26  Christophe Dumez  <christophe.dumez@intel.com>
399
400         [EFL][WK2] Add setting to enable / disable HTML5 local storage functionality
401         https://bugs.webkit.org/show_bug.cgi?id=103224
402
403         Reviewed by Laszlo Gombos.
404
405         Add API to ewk_settings to enable / disable the HTML5
406         local storage functionality. The functionality is
407         enabled by default.
408
409         * UIProcess/API/efl/ewk_settings.cpp:
410         (ewk_settings_local_storage_enabled_set):
411         (ewk_settings_local_storage_enabled_get):
412         * UIProcess/API/efl/ewk_settings.h:
413         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
414         (TEST_F): Add API test for ewk_settings_local_storage_enabled_get / set.
415
416 2012-11-26  Rafael Brandao  <rafael.lobo@openbossa.org>
417
418         [CoordinatedGraphics] Access to LayerTreeRenderer::m_renderQueue should be thread safe
419         https://bugs.webkit.org/show_bug.cgi?id=101341
420
421         Reviewed by Noam Rosenthal.
422
423         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
424         (WebKit::LayerTreeRenderer::syncRemoteContent): The previous swap already clears the
425         vector on m_renderQueue. It is also done in a thread-safe way, so clearing it afterward
426         can be harmful as we've already released the lock.
427
428 2012-11-26  Jaehun Lim  <ljaehun.lim@samsung.com>
429
430         Text Autosizing: Add Text Autosizing APIs for WK2
431         https://bugs.webkit.org/show_bug.cgi?id=100633
432
433         Reviewed by Sam Weinig.
434
435         Implement basic Text Autosizing APIs for WK2.
436         Text Autosizing is a useful feature for mobile browsers. It adjusts the font size
437         of text in wide columns, and makes text more legible.
438         This patch adds setting APIs for Text Autosizing in WK2.
439
440         * Shared/WebPreferencesStore.h:
441         (WebKit):
442         * UIProcess/API/C/WKPreferences.cpp:
443         (WKPreferencesSetTextAutosizingEnabled):
444         (WKPreferencesGetTextAutosizingEnabled):
445         * UIProcess/API/C/WKPreferences.h:
446         * WebProcess/WebPage/WebPage.cpp:
447         (WebKit::WebPage::updatePreferences):
448
449 2012-11-26  Pierre Rossi  <pierre.rossi@gmail.com>
450
451         [Qt] REGRESSION(r135575): It made all tests assert
452         https://bugs.webkit.org/show_bug.cgi?id=103169
453
454         Reviewed by Simon Hausmann.
455
456         This fixes another regression introduced in r135515:
457         initializeWebKitQt shouldn't implicitely call initializeWebCoreQt
458         since it can be called from WebKit2 to initialize QStyle for testing.
459         This would then lead to things such as PlatformStrategies being
460         initialized twice.
461
462         * qt/MainQt.cpp: No need to initialize anything if we're not using QStyle.
463         (WebKit):
464         (main):
465
466 2012-11-26  Huang Dongsung  <luxtella@company100.net>
467
468         REGRESSION(134142): ASSERT(!m_size.isZero()) hits in CoordinatedBackingStore::paintToTextureMapper().
469         https://bugs.webkit.org/show_bug.cgi?id=103217
470
471         Reviewed by Noam Rosenthal.
472
473         It is possible for CoordinatedBackingStore of directed composited image to not
474         have tiles, because CoordinatedImageBacking does not create tiles when the image
475         is invisible.
476
477         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
478         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
479
480 2012-11-25  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
481
482         [WK2] TiledBackingStore: page contents is scaled wrongly
483         https://bugs.webkit.org/show_bug.cgi?id=103090
484
485         Reviewed by Kenneth Rohde Christiansen.
486
487         Before this change the page contents scaling in PageViewportController was
488         defined all the times by m_rawAttributes.initialScale. If initial scale had not
489         been specified in the viewport meta tag it was set to m_minimumScaleToFit inside
490         PageViewportController::didChangeViewportAttributes().
491
492         The problem was that m_minimumScaleToFit could have wrong value as contents size
493         might have not be updated by the time PageViewportController::didChangeViewportAttributes()
494         was invoked.
495
496         The solution is to use m_minimumScaleToFit for contents scaling if initial scale
497         is not specified in the viewport meta tag, as it is updated all the time. 
498         Also a flag m_initiallyFitToViewport is added to PageViewportController to detect
499         whether m_minimumScaleToFit should be used for scaling.
500
501         * UIProcess/PageViewportController.cpp:
502         (WebKit::PageViewportController::PageViewportController):
503         (WebKit::PageViewportController::didChangeContentsSize):
504         (WebKit::PageViewportController::pageTransitionViewportReady):
505         (WebKit::PageViewportController::didChangeViewportAttributes):
506         * UIProcess/PageViewportController.h:
507         (PageViewportController):
508
509 2012-11-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
510
511         [EFL][WK2] Stop the mess with DECLARE_EWK_VIEW_CALLBACK arg type definition
512         https://bugs.webkit.org/show_bug.cgi?id=103187
513
514         Reviewed by Kenneth Rohde Christiansen.
515
516         Now the client should pass to DECLARE_EWK_VIEW_CALLBACK macro exacly the 
517         same arg type s/he wants to have in the Ewk_View callback.
518
519         * UIProcess/API/efl/EwkViewCallbacks.h:
520         (EvasObjectHolder):
521         (EwkViewCallbacks::EvasObjectHolder::EvasObjectHolder):
522         (EwkViewCallbacks):
523
524 2012-11-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
525
526         [EFL][WK2] Check errors in EwkView callbacks usage at compile time
527         https://bugs.webkit.org/show_bug.cgi?id=103177
528
529         Reviewed by Kenneth Rohde Christiansen.
530
531         Errors in EwkView callbacks usage are now checked at compile time.
532
533         * UIProcess/API/efl/EwkViewCallbacks.h:
534         (CallBack):
535         (EwkViewCallbacks::CallBack::CallBack):
536         (EwkViewCallbacks::CallBack::call):
537
538 2012-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>
539
540         Unreviewed, rolling out r135575.
541         http://trac.webkit.org/changeset/135575
542         https://bugs.webkit.org/show_bug.cgi?id=103169
543
544         It made all tests assert (Requested by Ossy on #webkit).
545
546         * qt/MainQt.cpp:
547         (WebKit):
548         (main):
549
550 2012-11-23  Alexis Menard  <alexis@webkit.org>
551
552         [CSS3 Backgrounds and Borders] Implement new CSS3 background-position parsing.
553         https://bugs.webkit.org/show_bug.cgi?id=102104
554
555         Reviewed by Julien Chaffraix.
556
557         Protect the new feature behind a feature flag.
558
559         * Configurations/FeatureDefines.xcconfig:
560
561 2012-11-23  Huang Dongsung  <luxtella@company100.net>
562
563         Coordinated Graphics: Match the behavior of selfOrAncestorHaveNonAffineTransforms() to its name.
564         https://bugs.webkit.org/show_bug.cgi?id=103097
565
566         Reviewed by Noam Rosenthal.
567
568         CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms() does
569         not check its ancestor. This patch makes this method check its ancestor
570         to match its name.
571
572         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
573         (WebCore::CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):
574
575 2012-11-23  Huang Dongsung  <luxtella@company100.net>
576
577         Coordinated Graphics: LayerTreeRenderer::removeTile() does not remove tiles actually.
578         https://bugs.webkit.org/show_bug.cgi?id=103030
579
580         Reviewed by Noam Rosenthal.
581
582         LayerTreeRenderer::removeTile() must add a backing store into
583         m_backingStoresWithPendingBuffers. Otherwise, tiles are not removed.
584
585         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
586         (WebKit::LayerTreeRenderer::removeTile):
587
588 2012-11-23  Huang Dongsung  <luxtella@company100.net>
589
590         [TexMap] Remove dependency of TextureMapperLayer on GraphicsLayerTextureMapper.
591         https://bugs.webkit.org/show_bug.cgi?id=103046
592
593         Reviewed by Noam Rosenthal.
594
595         This patch makes GraphicsLayerTextureMapper create its own backing
596         store. However, LayerTreeRenderer also creates its own backing store. So
597         when LayerTreeRenderer uses GraphicsLayerTextureMapper,
598         LayerTreeRenderer needs GraphicsLayerTextureMapper to not create its own
599         backing store.
600
601         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
602         (WebKit::LayerTreeRenderer::createLayer):
603         (WebKit::LayerTreeRenderer::getBackingStore):
604
605 2012-11-23  Huang Dongsung  <luxtella@company100.net>
606
607         REGRESSION(r135486): ASSERT(isMainThread()) hit in LayerTreeRenderer::setActive(bool)
608         https://bugs.webkit.org/show_bug.cgi?id=103077
609
610         Reviewed by Noam Rosenthal.
611
612         Currently, the painting thread uses purgeGLResources() and setActive().
613         QQuickWebPage::updatePaintNode() indirectly calls both methods after
614         locking the main thread.
615
616         This patch changes two points.
617         1. Remove ASSERT(isMainThread()) in methods that the painting thread can
618         call.
619         2. Make purgeGLResources() and setActive() call methods of
620         LayerTreeCoordinatorProxy via dispatchOnMainThread().
621
622         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
623         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
624         (WebKit::LayerTreeRenderer::renderNextFrame):
625         (WebKit::LayerTreeRenderer::purgeGLResources):
626         (WebKit):
627         (WebKit::LayerTreeRenderer::purgeBackingStores):
628         (WebKit::LayerTreeRenderer::setActive):
629         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
630         (LayerTreeRenderer):
631
632 2012-11-23  Christophe Dumez  <christophe.dumez@intel.com>
633
634         [EFL][WK2][AC] EwkViewImpl::transformToScreen() does not retrieve the Ecore_X_Window properly
635         https://bugs.webkit.org/show_bug.cgi?id=103133
636
637         Reviewed by Kenneth Rohde Christiansen.
638
639         If accelerated compositing is enabled, EwkViewImpl::transformToScreen() should
640         attempt to retrieve the Ecore_X_Window using ecore_evas_gl_x11_window_get() first
641         and only fall back to ecore_evas_software_x11_window_get().
642
643         * UIProcess/API/efl/EwkViewImpl.cpp:
644         (EwkViewImpl::transformToScreen):
645
646 2012-11-23  Wojciech Bielawski  <w.bielawski@samsung.com>
647
648         [WK2][WKTR] WebKitTestRunner needs eventSender.contextClick()
649         https://bugs.webkit.org/show_bug.cgi?id=86881
650
651         Reviewed by Kenneth Rohde Christiansen.
652
653         InjectedBundle API extended to retrieve contextMenu entries names.
654         WebContextMenu exteded with function to retrieve menu items.
655         This API is required by layout tests.
656         Common code in WebContextMenu.cpp moved to separate method menuItemsWithUserData().
657         Behaviour of dependend methods is unchanged.
658
659         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
660         (WKBundlePageGetContextMenuEntriesNames):
661         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
662         * WebProcess/WebPage/WebContextMenu.cpp:
663         (WebKit::WebContextMenu::items):
664         (WebKit):
665         * WebProcess/WebPage/WebContextMenu.h:
666         (WebContextMenu):
667
668 2012-11-22  Pierre Rossi  <pierre.rossi@gmail.com>
669
670         [Qt] Avoid initializing PlatformStrategies twice.
671
672         Rubber-stamped by Simon Hausmann.
673
674         This fixes another regression introduced in r135515:
675         initializeWebKitQt shouldn't implicitely call initializeWebCoreQt
676         since it can be called from WebKit2 to initialize QStyle for testing.
677         This would then lead to things such as PlatformStrategies being
678         initialized twice.
679
680         * qt/MainQt.cpp: No need to initialize anything if we're not using QStyle.
681         (WebKit):
682         (main):
683
684 2012-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>
685
686         [GTK] Use custom private macros to define GObjects
687         https://bugs.webkit.org/show_bug.cgi?id=99705
688
689         Reviewed by Martin Robinson.
690
691         Add WEBKIT_DEFINE_TYPE macros, similar and compatible with
692         G_DEFINE_TYPE macros, to define GObject types. These macros also
693         define the init and finalize functions reducing the GObject
694         boilerplate and hiding the placement new syntax that causes some
695         confusion. The patch replaces the use of G_DEFINE_TYPE macros by
696         WEBKIT_DEFINE_TYPE ones and removes the init and finalize
697         implementations, moving custom code when needed to the private
698         struct constructor/destructor or constructed/dispose virtual
699         methods when appropriate.
700
701         * UIProcess/API/gtk/WebKitBackForwardList.cpp:
702         * UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
703         (webkit_back_forward_list_item_class_init):
704         * UIProcess/API/gtk/WebKitContextMenu.cpp:
705         (webkitContextMenuDispose):
706         (webkit_context_menu_class_init):
707         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
708         (_WebKitContextMenuItemPrivate::~_WebKitContextMenuItemPrivate):
709         (_WebKitContextMenuItemPrivate):
710         (webkit_context_menu_item_class_init):
711         * UIProcess/API/gtk/WebKitCookieManager.cpp:
712         (_WebKitCookieManagerPrivate::~_WebKitCookieManagerPrivate):
713         (_WebKitCookieManagerPrivate):
714         * UIProcess/API/gtk/WebKitDownload.cpp:
715         (webkit_download_class_init):
716         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
717         (webkit_favicon_database_class_init):
718         * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
719         (webkitFileChooserRequestDispose):
720         (webkit_file_chooser_request_class_init):
721         * UIProcess/API/gtk/WebKitFindController.cpp:
722         (webkit_find_controller_class_init):
723         * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
724         (webkitFormSubmissionRequestDispose):
725         (webkit_form_submission_request_class_init):
726         * UIProcess/API/gtk/WebKitGeolocationPermissionRequest.cpp:
727         (webkitGeolocationPermissionRequestDispose):
728         (webkit_geolocation_permission_request_class_init):
729         * UIProcess/API/gtk/WebKitHitTestResult.cpp:
730         (webkit_hit_test_result_class_init):
731         * UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
732         (webkit_navigation_policy_decision_class_init):
733         * UIProcess/API/gtk/WebKitPlugin.cpp:
734         (_WebKitPluginPrivate::~_WebKitPluginPrivate):
735         (_WebKitPluginPrivate):
736         (webkit_plugin_class_init):
737         * UIProcess/API/gtk/WebKitPolicyDecision.cpp:
738         (webkitPolicyDecisionDispose):
739         (webkit_policy_decision_class_init):
740         (webkit_policy_decision_use):
741         (webkit_policy_decision_ignore):
742         (webkit_policy_decision_download):
743         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
744         (_WebKitPrintOperationPrivate::~_WebKitPrintOperationPrivate):
745         (_WebKitPrintOperationPrivate):
746         (webkit_print_operation_class_init):
747         * UIProcess/API/gtk/WebKitPrivate.h:
748         * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
749         (webkit_response_policy_decision_class_init):
750         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
751         (webkit_security_manager_class_init):
752         * UIProcess/API/gtk/WebKitSettings.cpp:
753         (_WebKitSettingsPrivate::_WebKitSettingsPrivate):
754         (_WebKitSettingsPrivate):
755         (webkit_settings_class_init):
756         * UIProcess/API/gtk/WebKitURIRequest.cpp:
757         (webkit_uri_request_class_init):
758         * UIProcess/API/gtk/WebKitURIResponse.cpp:
759         (webkit_uri_response_class_init):
760         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
761         (webkit_uri_scheme_request_class_init):
762         * UIProcess/API/gtk/WebKitWebContext.cpp:
763         * UIProcess/API/gtk/WebKitWebInspector.cpp:
764         (_WebKitWebInspectorPrivate::~_WebKitWebInspectorPrivate):
765         (_WebKitWebInspectorPrivate):
766         (webkit_web_inspector_class_init):
767         * UIProcess/API/gtk/WebKitWebResource.cpp:
768         (webkit_web_resource_class_init):
769         * UIProcess/API/gtk/WebKitWebView.cpp:
770         (_WebKitWebViewPrivate::~_WebKitWebViewPrivate):
771         (_WebKitWebViewPrivate):
772         (webkitWebViewConstructed):
773         (webkitWebViewDispose):
774         (webkit_web_view_class_init):
775         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
776         (_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate):
777         (_WebKitWebViewBasePrivate):
778         (_WebKitWebViewBasePrivate::~_WebKitWebViewBasePrivate):
779         (webkitWebViewBaseDispose):
780         (webkitWebViewBaseConstructed):
781         (webkit_web_view_base_class_init):
782         * UIProcess/API/gtk/WebKitWebViewBaseAccessible.cpp:
783         (webkit_web_view_base_accessible_class_init):
784         * UIProcess/API/gtk/WebKitWindowProperties.cpp:
785         (webkit_window_properties_class_init):
786
787 2012-11-22  KwangYong Choi  <ky0.choi@samsung.com>
788
789         [EFL][WK2] Buildfix when ENABLE_NETSCAPE_PLUGIN_API is disabled
790         https://bugs.webkit.org/show_bug.cgi?id=103044
791
792         Reviewed by Kentaro Hara.
793
794         enum ProcessType has PluginProcess only if ENABLE(PLUGIN_PROCESS) is enabled.
795         So, guard PluginProcess with ENABLE(PLUGIN_PROCESS).
796
797         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
798         (WebKit::ProcessLauncher::launchProcess):
799
800 2012-09-26  Gustavo Noronha Silva  <gns@gnome.org>
801
802         [GTK] Split SVG from WebCore to work-around make limitation
803         https://bugs.webkit.org/show_bug.cgi?id=97735
804
805         Reviewed by Carlos Garcia Campos.
806
807         Add a new libtool convenience library, libWebCoreSVG.la, to work-around
808         make limitation when linking libWebCore.
809
810         * GNUmakefile.am: link libWebCoreSVG.la into libwebkit2gtk.
811
812 2012-11-22  Simon Hausmann  <simon.hausmann@digia.com>, Pierre Rossi <pierre.rossi@digia.com>
813
814         [Qt] Separate QWidget dependant code into separate WebKitWidgets static library
815         https://bugs.webkit.org/show_bug.cgi?id=102800
816
817         Reviewed by Tor Arne Vestbø.
818
819         This patch separates code that needs to use QWidget related APIs in
820         WebKit/qt/WebCoreSupport and Api from code that doesn't. This means for
821         example FrameLoaderClientQt.cpp remains in the WebKit1 static library,
822         while qwebpage.cpp and qwebframe.cpp become part of the WebKitWidgets
823         static library. WebKit1 is compiled without QT += widgets and therefore
824         any widget related dependency has been moved "up" and out of WebKit1 into
825         the WebKitWidgets library.
826
827         Between the code in WebKit.a and WebKitWidgets.a new adapters and
828         interfaces have been introduced, such as QWebPageAdapter and
829         QWebFrameAdapter. QWebPageAdapter, when used from WebKit1, is a way to
830         call out into the API layer, implemented by QWebPage (QWebPagePrivate).
831         The other way around if QWebPage wants to access WebCore or
832         WebCoreSupport related functionality, it will go through
833         QWebPageAdapater (as base class). The separation in the direction up
834         into the API layer is complete with this patch, no code in WebKit1
835         depends on QtWidgets. The separation the other way around, code in the
836         API layer not using any WebCore types, is not complete yet.
837
838         Some classes such as QWebSettings, QWebElement or
839         DumpRenderTreeSupportQt remain in WebKit1. While they are API layer,
840         they do not depend on widget related Qt APIs and they make much more
841         use of WebCore internal APIs and therefore are easier to keep in
842         WebKit1.
843
844         In the future we plan to place a real shared library boundary between
845         WebKit1 and WebKitWidgets, by keeping the WebKit1 static library as
846         part of the QtWebKit shared library and by turning the WebKitWidgets
847         static library into a shared one.
848
849         * qt/MainQt.cpp:
850         (WebKit):
851         (main):
852
853 2012-11-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>
854
855         [WK2][EFL] No need to remove surface before replacing
856         https://bugs.webkit.org/show_bug.cgi?id=103055
857
858         Rubberstamped by Simon Hausmann.
859
860         The surface is stored in a OwnPtr which automatically
861         frees the existing surface after replacing it with a new
862         one. For some reason, this also fixes resizing issues on
863         my Nvidia driver.
864
865         * UIProcess/API/efl/EwkViewImpl.cpp:
866         (EwkViewImpl::createGLSurface):
867         * UIProcess/API/efl/EwkViewImpl.h:
868         * UIProcess/API/efl/ewk_view.cpp:
869         (_ewk_view_smart_calculate):
870
871 2012-11-22  Christophe Dumez  <christophe.dumez@intel.com>
872
873         WebKitTestRunner needs layoutTestController.setCacheModel
874         https://bugs.webkit.org/show_bug.cgi?id=42684
875
876         Reviewed by Kenneth Rohde Christiansen.
877
878         Add Bundle C API for WebKitTestRunner to set the
879         cache model.
880
881         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
882         (WKBundleSetCacheModel):
883         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
884         * WebProcess/InjectedBundle/InjectedBundle.cpp:
885         (WebKit::InjectedBundle::setCacheModel):
886         (WebKit):
887         * WebProcess/InjectedBundle/InjectedBundle.h:
888         (InjectedBundle):
889         * WebProcess/WebProcess.h:
890         (WebProcess):
891
892 2012-11-22  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
893
894         REGRESSION(r135399): Wrong assertion causing an assertion failure: m_rawAttributes.initialScale > 0
895         https://bugs.webkit.org/show_bug.cgi?id=102971
896
897         Reviewed by Kenneth Rohde Christiansen.
898
899         m_rawAttributes.initialScale has to be initialized even if m_minimumScaleToFit hasn't changed
900         it's value.
901
902         * UIProcess/PageViewportController.cpp:
903         (WebKit::PageViewportController::didChangeViewportAttributes):
904
905 2012-11-22  Eunmi Lee  <eunmi15.lee@samsung.com>
906
907         [EFL][WK2] Correct the parameters of WebPlatformTouchPoint.
908         https://bugs.webkit.org/show_bug.cgi?id=102865
909
910         Reviewed by Kenneth Rohde Christiansen.
911
912         Set the screen position as a third parameter and contents position as
913         a fourth parameter of WebPlatformTouchPoint().
914
915         * Shared/efl/WebEventFactory.cpp:
916         (WebKit::WebEventFactory::createWebTouchEvent):
917
918 2012-11-22  Huang Dongsung  <luxtella@company100.net>
919
920         Coordinated Graphics: Remove an invisible TiledBackingStore of CoordinatedGraphicsLayer.
921         https://bugs.webkit.org/show_bug.cgi?id=102894
922
923         Reviewed by Kenneth Rohde Christiansen.
924
925         CoordinatedGraphicsLayer does not need to have a backing store
926         if (!drawsContent() || !contentsAreVisible() || m_size.isEmpty()).
927
928         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
929         (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
930
931 2012-11-22  Huang Dongsung  <luxtella@company100.net>
932
933         Coordinated Graphics: refactor LayerTreeRenderer.
934         https://bugs.webkit.org/show_bug.cgi?id=103004
935
936         Reviewed by Noam Rosenthal.
937
938         This patch changes two subjects.
939         1. Add ASSERT(isMainThread()) in all methods that are called in the main thread.
940         In addition, make dispatchOnMainThread() use callOnMainThread(const Function<void()>&
941         function) instead of its own implementation.
942
943         2. Remove setAccelerationMode() because we don't use m_accelerationMode member
944         except for the setter.
945
946         * UIProcess/API/efl/EwkViewImpl.cpp:
947         (EwkViewImpl::createGLSurface):
948         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
949         (WebKit):
950         (WebKit::LayerTreeRenderer::dispatchOnMainThread):
951         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
952         (WebKit::LayerTreeRenderer::animationFrameReady):
953         (WebKit::LayerTreeRenderer::updateViewport):
954         (WebKit::LayerTreeRenderer::renderNextFrame):
955         (WebKit::LayerTreeRenderer::purgeGLResources):
956         (WebKit::LayerTreeRenderer::detach):
957         (WebKit::LayerTreeRenderer::setActive):
958         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
959         (LayerTreeRenderer):
960         * UIProcess/efl/PageClientBase.cpp:
961         (WebKit::PageClientBase::createDrawingAreaProxy):
962
963 2012-11-21  Jinwoo Song  <jinwoo7.song@samsung.com>
964
965         [EFL][WK2] Use consistent class names in the clients
966         https://bugs.webkit.org/show_bug.cgi?id=102684
967
968         Reviewed by Gyuyoung Kim.
969
970         WebKit EFL classes do not use '_' since r135117 but '_' is still remained
971         in some clients classes. This patch removed the '_' to make class names
972         to be consistent.
973
974         * UIProcess/efl/ContextHistoryClientEfl.cpp:
975         (WebKit::ContextHistoryClientEfl::didNavigateWithNavigationData):
976         * UIProcess/efl/DownloadManagerEfl.cpp:
977         (WebKit::DownloadManagerEfl::didFail):
978         * UIProcess/efl/FormClientEfl.cpp:
979         (WebKit::FormClientEfl::willSubmitForm):
980         * UIProcess/efl/PageLoadClientEfl.cpp:
981         (WebKit::PageLoadClientEfl::didReceiveIntentForFrame):
982         (WebKit::PageLoadClientEfl::registerIntentServiceForFrame):
983         (WebKit::PageLoadClientEfl::didFailLoadWithErrorForFrame):
984         (WebKit::PageLoadClientEfl::didFailProvisionalLoadWithErrorForFrame):
985         (WebKit::PageLoadClientEfl::didReceiveAuthenticationChallengeInFrame):
986         * UIProcess/efl/PagePolicyClientEfl.cpp:
987         (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
988         (WebKit::PagePolicyClientEfl::decidePolicyForNewWindowAction):
989         * UIProcess/efl/PageUIClientEfl.cpp:
990         (WebKit::PageUIClientEfl::runOpenPanel):
991         * UIProcess/efl/RequestManagerClientEfl.cpp:
992         (WebKit::EwkUrlSchemeHandler::EwkUrlSchemeHandler):
993         (WebKit::RequestManagerClientEfl::didReceiveURIRequest):
994         (WebKit::RequestManagerClientEfl::registerURLSchemeHandler):
995         * UIProcess/efl/RequestManagerClientEfl.h:
996         (RequestManagerClientEfl):
997         * UIProcess/efl/ResourceLoadClientEfl.cpp:
998         (WebKit::ResourceLoadClientEfl::didInitiateLoadForResource):
999         (WebKit::ResourceLoadClientEfl::didSendRequestForResource):
1000         (WebKit::ResourceLoadClientEfl::didReceiveResponseForResource):
1001         (WebKit::ResourceLoadClientEfl::didFinishLoadForResource):
1002         (WebKit::ResourceLoadClientEfl::didFailLoadForResource):
1003         * UIProcess/efl/ResourceLoadClientEfl.h:
1004         (ResourceLoadClientEfl):
1005
1006 2012-11-21  Jaehun Lim  <ljaehun.lim@samsung.com>
1007
1008         [EFL][WK2] Remove #include "ewk_view_private.h" in PageViewportControllerClientEfl.cpp
1009         https://bugs.webkit.org/show_bug.cgi?id=102773
1010
1011         Reviewed by Gyuyoung Kim.
1012
1013         PageViewportControllerClientEfl.cpp doesn't need to include ewk_view_private.h.
1014
1015         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
1016
1017 2012-11-21  Huang Dongsung  <luxtella@company100.net>
1018
1019         Coordinated Graphics: refactor changing children code in CoordinatedGraphicsLayer.
1020         https://bugs.webkit.org/show_bug.cgi?id=102896
1021
1022         Reviewed by Noam Rosenthal.
1023
1024         When changing children, we don't need to sync a layer state because
1025         there is no more need to send the parent ID every time the layer tree
1026         hierarchy changes. So this patch removes didChangeLayerState() in
1027         methods which change children.
1028
1029         In addition, purgeBackingStores() does not need to call didChangeChildren()
1030         because purgeBackingStores() does not change children.
1031
1032         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1033         (WebCore::CoordinatedGraphicsLayer::setChildren):
1034         (WebCore::CoordinatedGraphicsLayer::addChild):
1035         (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
1036         (WebCore::CoordinatedGraphicsLayer::addChildAbove):
1037         (WebCore::CoordinatedGraphicsLayer::addChildBelow):
1038         (WebCore::CoordinatedGraphicsLayer::replaceChild):
1039         (WebCore::CoordinatedGraphicsLayer::removeFromParent):
1040         (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
1041
1042 2012-11-21  Huang Dongsung  <luxtella@company100.net>
1043
1044         REGRESSION(r135212): Fix crash due to an infinite rect.
1045         https://bugs.webkit.org/show_bug.cgi?id=102891
1046
1047         Reviewed by Noam Rosenthal.
1048
1049         When CoordinatedGraphicsLayer has a 3D transform, tiledBackingStoreVisibleRect()
1050         can calculate an infinite rect. However, TiledBackingStore cannot handle the
1051         infinite rect. This patch clamps the infinite rect to avoid crash in
1052         TiledBackingStore.
1053
1054         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1055         (WebCore::clampToContentsRectIfRectIsInfinite):
1056         (WebCore):
1057         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
1058
1059 2012-11-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1060
1061         Disambiguate innerNodeFramePoint and mainFramePoint
1062         https://bugs.webkit.org/show_bug.cgi?id=98139
1063
1064         Reviewed by Julien Chaffraix.
1065
1066         Switch to using HitTestResult::innerNodeFrame and HitTestResult::innerNodeFramePoint.
1067
1068         * WebProcess/WebPage/WebContextMenu.cpp:
1069         (WebKit::WebContextMenu::show):
1070         * WebProcess/WebPage/mac/WebPageMac.mm:
1071         (WebKit::WebPage::characterIndexForPoint):
1072
1073 2012-11-21  Simon Hausmann  <simon.hausmann@digia.com>
1074
1075         Unreviewed Qt/Windows build fix.
1076         https://bugs.webkit.org/show_bug.cgi?id=102787
1077
1078         Remove inclusion of QtQml, which drags in QtNetwork, which drags in qnetworksession.h, which
1079         defines a member function called "interface". Since windows headers also define a pre-processor
1080         macro called "interface", it has to do that. However we have now a dependency between combaseapi.h,
1081         which #defines interface and is included earlier (before qnetworksession.h) and shlwapi.h, which _needs_
1082         the interface macro and is included afterwards. Since this module-wide QtQml inclusion is unnecessary
1083         and just slows down the build, this patch removes it.
1084
1085         * UIProcess/API/qt/qwebkittest_p.h:
1086
1087 2012-11-21  Huang Dongsung  <luxtella@company100.net>
1088
1089         Coordinated Graphics: refactor LayerTreeRenderer::syncRemoteContent().
1090         https://bugs.webkit.org/show_bug.cgi?id=102900
1091
1092         Reviewed by Noam Rosenthal.
1093
1094         Currently, QQuickWebPage::updatePaintNode() calls
1095         LayerTreeRenderer::syncRemoteContent() with locking the main thread.
1096         syncRemoteContent() is heavy, so we should not call syncRemoteContent() in
1097         updatePaintNode(). Calling syncRemoteContent() in the painting thread is
1098         thread-safe because syncRemoteContent() does not access any data
1099         structures, which the main thread use.
1100
1101         After this patch, syncRemoteContent() is used only internally, so
1102         syncRemoteContent() becomes private.
1103
1104         * UIProcess/API/efl/EwkViewImpl.cpp:
1105         (EwkViewImpl::displayTimerFired):
1106         * UIProcess/API/qt/qquickwebpage.cpp:
1107         (QQuickWebPage::updatePaintNode):
1108         * UIProcess/API/qt/raw/qrawwebview.cpp:
1109         (QRawWebView::paint):
1110         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1111         (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
1112         (WebKit::LayerTreeRenderer::ensureRootLayer):
1113         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1114         (LayerTreeRenderer):
1115
1116 2012-11-21  Andras Becsi  <andras.becsi@digia.com>
1117
1118         [WK2] Viewport meta tag broken after r134801
1119         https://bugs.webkit.org/show_bug.cgi?id=102801
1120
1121         Reviewed by Kenneth Rohde Christiansen.
1122
1123         If the initial-scale attribute is not explicitly specified it is left -1 by the
1124         viewport meta algorithm and if the content is not scalable the min and max scales
1125         are restricted by restrictScaleFactorToInitialScaleIfNotUserScalable() which resulted
1126         in negative scales on the UI side.
1127         Make sure that the minimum scale to fit the viewport is calculated before restricting
1128         the scales and use this scale as the initial scale if no explicit initial scale was set.
1129
1130         * UIProcess/PageViewportController.cpp:
1131         (WebKit::PageViewportController::PageViewportController):
1132         (WebKit::PageViewportController::pageTransitionViewportReady):
1133         (WebKit::PageViewportController::didChangeViewportAttributes):
1134         (WebKit::PageViewportController::updateMinimumScaleToFit):
1135
1136 2012-11-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1137
1138         [EFL][WK2] Support Context Menu
1139         https://bugs.webkit.org/show_bug.cgi?id=96200
1140
1141         Reviewed by Laszlo Gombos.
1142
1143         This patch supports WK2 EFL's context menu as WK1 implementation because we can't use elementary in inside WebKit.
1144         Only basic functionalities of context menu are supported. Beside this implementation follows GTK's implementation.
1145         For example, ewk_context_menu_new, ewk_context_menu_item_append, ewk_context_menu_item_remove are supported.
1146
1147         In addition, ewk_defines.h file is added in order to support cross inclusion as GTK port.
1148
1149         * PlatformEfl.cmake:
1150         * UIProcess/API/efl/EWebKit2.h:
1151         * UIProcess/API/efl/EwkViewImpl.cpp:
1152         (EwkViewImpl::EwkViewImpl):
1153         (EwkViewImpl::showContextMenu):
1154         (EwkViewImpl::hideContextMenu):
1155         * UIProcess/API/efl/EwkViewImpl.h:
1156         (WebKit):
1157         (EwkViewImpl):
1158         * UIProcess/API/efl/ewk_context_menu.cpp: Added.
1159         (EwkContextMenu::EwkContextMenu):
1160         (EwkContextMenu::~EwkContextMenu):
1161         (EwkContextMenu::hide):
1162         (Ewk_Context_Menu::appendItem):
1163         (Ewk_Context_Menu::removeItem):
1164         (EwkContextMenu::contextMenuItemSelected):
1165         (ewk_context_menu_new):
1166         (ewk_context_menu_new_with_items):
1167         (ewk_context_menu_item_append):
1168         (ewk_context_menu_item_remove):
1169         (ewk_context_menu_hide):
1170         (ewk_context_menu_items_get):
1171         (ewk_context_menu_item_select):
1172         * UIProcess/API/efl/ewk_context_menu.h: Added.
1173         * UIProcess/API/efl/ewk_context_menu_item.cpp: Added.
1174         (EwkContextMenuItem::EwkContextMenuItem):
1175         (ewk_context_menu_item_new):
1176         (ewk_context_menu_item_new_with_submenu):
1177         (ewk_context_menu_item_type_get):
1178         (ewk_context_menu_item_type_set):
1179         (ewk_context_menu_item_action_get):
1180         (ewk_context_menu_item_action_set):
1181         (ewk_context_menu_item_title_get):
1182         (ewk_context_menu_item_title_set):
1183         (ewk_context_menu_item_checked_get):
1184         (ewk_context_menu_item_checked_set):
1185         (ewk_context_menu_item_enabled_get):
1186         (ewk_context_menu_item_enabled_set):
1187         * UIProcess/API/efl/ewk_context_menu_item.h: Added.
1188         * UIProcess/API/efl/ewk_context_menu_item_private.h: Added.
1189         (EwkContextMenuItem):
1190         (EwkContextMenuItem::create):
1191         (EwkContextMenuItem::action):
1192         (EwkContextMenuItem::setAction):
1193         (EwkContextMenuItem::title):
1194         (EwkContextMenuItem::setTitle):
1195         (EwkContextMenuItem::type):
1196         (EwkContextMenuItem::setType):
1197         (EwkContextMenuItem::checked):
1198         (EwkContextMenuItem::setChecked):
1199         (EwkContextMenuItem::enabled):
1200         (EwkContextMenuItem::setEnabled):
1201         * UIProcess/API/efl/ewk_context_menu_private.h: Added.
1202         (WebKit):
1203         (EwkContextMenu):
1204         (EwkContextMenu::create):
1205         (EwkContextMenu::items):
1206         * UIProcess/API/efl/ewk_defines.h: Added.
1207         * UIProcess/API/efl/ewk_view.h:
1208         * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp: Added.
1209         (checkBasicContextMenuItem):
1210         (showContextMenu):
1211         (TEST_F):
1212         * UIProcess/efl/ContextMenuClientEfl.cpp: Added.
1213         (toContextClientEfl):
1214         (ContextMenuClientEfl::ContextMenuClientEfl):
1215         (ContextMenuClientEfl::getContextMenuFromProposedMenu):
1216         * UIProcess/efl/ContextMenuClientEfl.h: Added.
1217         (WebKit):
1218         (ContextMenuClientEfl):
1219         (WebKit::ContextMenuClientEfl::create):
1220         * UIProcess/efl/PageClientBase.cpp:
1221         (WebKit::PageClientBase::createContextMenuProxy):
1222         * UIProcess/efl/WebContextMenuProxyEfl.cpp: Added.
1223         (WebKit):
1224         (WebKit::WebContextMenuProxyEfl::WebContextMenuProxyEfl):
1225         (WebKit::WebContextMenuProxyEfl::~WebContextMenuProxyEfl):
1226         (WebKit::WebContextMenuProxyEfl::showContextMenu):
1227         (WebKit::WebContextMenuProxyEfl::hideContextMenu):
1228         (WebKit::WebContextMenuProxyEfl::contextMenuItemSelected):
1229         * UIProcess/efl/WebContextMenuProxyEfl.h: Added.
1230         (WebKit):
1231         (WebContextMenuProxyEfl):
1232         (WebKit::WebContextMenuProxyEfl::create):
1233
1234 2012-11-21  Jongseok Yang  <js45.yang@samsung.com>
1235
1236         [EFL][WK2] Rename ewk_view_setting_encoding_custom_XXX to ewk_view_custom_encoding_XXX
1237         https://bugs.webkit.org/show_bug.cgi?id=102867
1238
1239         Reviewed by Gyuyoung Kim.
1240
1241         Rename ewk_view_setting_encoding_custom_XXX to ewk_view_custom_encoding_XXX.
1242
1243         ewk_view_setting_encoding_custom_XXX APIs might be misunderstanded as the "setting" word
1244         because ewk_view_setting_encoding_custom_set triggers the "reload" operation.
1245         And ewk_view_setting_XXX is not correct because there is ewk_settings object for settings.
1246
1247         * UIProcess/API/efl/ewk_view.cpp:
1248         (ewk_view_encoding_custom_get):
1249         (ewk_view_encoding_custom_set):
1250         * UIProcess/API/efl/ewk_view.h:
1251         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1252         (TEST_F):
1253
1254 2012-11-20  Jinwoo Song  <jinwoo7.song@samsung.com>
1255
1256         [EFL][WK2] Remove unnecessary #include in API test
1257         https://bugs.webkit.org/show_bug.cgi?id=102674
1258
1259         Reviewed by Laszlo Gombos.
1260
1261         Removed duplicated header files from the API test cases.
1262         Now, EWK2UnitTestBase.h includes the basic header files, 
1263         so test cases may only include this one and add the addtional
1264         header files if necessary.
1265
1266         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
1267         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
1268         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestMain.cpp:
1269         * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
1270         * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
1271         * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
1272         * UIProcess/API/efl/tests/test_ewk2_context.cpp:
1273         * UIProcess/API/efl/tests/test_ewk2_context_history_callbacks.cpp:
1274         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
1275         * UIProcess/API/efl/tests/test_ewk2_database_manager.cpp:
1276         * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
1277         * UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:
1278         * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
1279         * UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:
1280         * UIProcess/API/efl/tests/test_ewk2_intents.cpp:
1281         * UIProcess/API/efl/tests/test_ewk2_object.cpp:
1282         * UIProcess/API/efl/tests/test_ewk2_popup_menu.cpp:
1283         * UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp:
1284         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
1285         * UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp:
1286         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
1287         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1288
1289 2012-11-19  Sam Weinig  <sam@webkit.org>
1290
1291         Simplify WebConnection by removing its underlying CoreIPC::Connection
1292         https://bugs.webkit.org/show_bug.cgi?id=102771
1293
1294         Reviewed by Anders Carlsson.
1295
1296         Instead of having WebConnection subclasses own the CoreIPC::Connection,
1297         move back to having the WebProcess and WebProcessProxy own it (and be
1298         its Connection::Client) and use the new MessageReceiver class to vend
1299         messages to the WebConnection.
1300
1301         * Shared/WebConnection.cpp:
1302         (WebKit::WebConnection::WebConnection):
1303         (WebKit::WebConnection::postMessage):
1304         (WebKit::WebConnection::didClose):
1305         (WebKit::WebConnection::didReceiveMessage):
1306         * Shared/WebConnection.h:
1307         Make WebConnection both a MessageReceiver and MessageSender
1308         and add virtual functions for derived classes to fill in.
1309
1310         * UIProcess/WebConnectionToWebProcess.cpp:
1311         (WebKit::WebConnectionToWebProcess::create):
1312         (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
1313         (WebKit::WebConnectionToWebProcess::invalidate):
1314         (WebKit::WebConnectionToWebProcess::decodeMessageBody):
1315         (WebKit::WebConnectionToWebProcess::connection):
1316         (WebKit::WebConnectionToWebProcess::destinationID):
1317         (WebKit::WebConnectionToWebProcess::hasValidConnection):
1318         * UIProcess/WebConnectionToWebProcess.h:
1319         * UIProcess/WebProcessProxy.cpp:
1320         (WebKit::WebProcessProxy::~WebProcessProxy):
1321         (WebKit::WebProcessProxy::fromConnection):
1322         (WebKit::WebProcessProxy::disconnect):
1323         (WebKit::WebProcessProxy::addMessageReceiver):
1324         (WebKit::WebProcessProxy::didClose):
1325         (WebKit::WebProcessProxy::didReceiveInvalidMessage):
1326         (WebKit::WebProcessProxy::didFinishLaunching):
1327         * UIProcess/WebProcessProxy.h:
1328         (WebKit::WebProcessProxy::connection):
1329         (WebProcessProxy):
1330         (WebKit::WebProcessProxy::webConnection):
1331         * WebProcess/WebConnectionToUIProcess.cpp:
1332         (WebKit::WebConnectionToUIProcess::create):
1333         (WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
1334         (WebKit):
1335         (WebKit::WebConnectionToUIProcess::invalidate):
1336         (WebKit::WebConnectionToUIProcess::connection):
1337         (WebKit::WebConnectionToUIProcess::destinationID):
1338         (WebKit::WebConnectionToUIProcess::hasValidConnection):
1339         * WebProcess/WebConnectionToUIProcess.h:
1340         (WebConnectionToUIProcess):
1341         * WebProcess/WebProcess.cpp:
1342         (WebKit::WebProcess::initialize):
1343         (WebKit::WebProcess::terminate):
1344         * WebProcess/WebProcess.h:
1345         (WebKit::WebProcess::connection):
1346         (WebKit::WebProcess::webConnectionToUIProcess):
1347         Move the CoreIPC::Connection back to the processes.
1348
1349 2012-11-20  Jinwoo Song  <jinwoo7.song@samsung.com>
1350
1351         [EFL][WK2] Add Ewk_Window_Features API and related UI callbacks
1352         https://bugs.webkit.org/show_bug.cgi?id=99114
1353
1354         Reviewed by Gyuyoung Kim.
1355
1356         Added Ewk_Window_Features API so that we can create new windows
1357         with various window features such as location, size, toolbar, menubar,
1358         statusbar, locationbar, scrollbar, resizable, and fullscreen.
1359
1360         UI client callbacks related to window features also implemented
1361         so that it is possible to retrieve the window object property values.
1362
1363         * PlatformEfl.cmake:
1364         * UIProcess/API/efl/EWebKit2.h:
1365         * UIProcess/API/efl/EwkViewCallbacks.h:
1366         (EwkViewCallbacks):
1367         * UIProcess/API/efl/EwkViewImpl.cpp:
1368         (EwkViewImpl::windowFeatures):
1369         (EwkViewImpl::createNewPage):
1370         (EwkViewImpl::closePage):
1371         * UIProcess/API/efl/EwkViewImpl.h:
1372         (EwkViewImpl):
1373         * UIProcess/API/efl/ewk_view.h:
1374         * UIProcess/efl/PageUIClientEfl.cpp:
1375         (WebKit::PageUIClientEfl::createNewPage):
1376         (WebKit::PageUIClientEfl::toolbarsAreVisible):
1377         (WebKit):
1378         (WebKit::PageUIClientEfl::setToolbarsAreVisible):
1379         (WebKit::PageUIClientEfl::menuBarIsVisible):
1380         (WebKit::PageUIClientEfl::setMenuBarIsVisible):
1381         (WebKit::PageUIClientEfl::statusBarIsVisible):
1382         (WebKit::PageUIClientEfl::setStatusBarIsVisible):
1383         (WebKit::PageUIClientEfl::isResizable):
1384         (WebKit::PageUIClientEfl::setIsResizable):
1385         (WebKit::PageUIClientEfl::PageUIClientEfl):
1386         * UIProcess/efl/PageUIClientEfl.h:
1387         (PageUIClientEfl):
1388
1389 2012-11-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1390
1391         Unreviewed, rolling out r135295.
1392         http://trac.webkit.org/changeset/135295
1393         https://bugs.webkit.org/show_bug.cgi?id=102834
1394
1395         This patch causes assertion to some layout tests on chromium
1396         (Requested by jianli on #webkit).
1397
1398         * WebProcess/Plugins/PluginView.cpp:
1399         (WebKit::PluginView::performFrameLoadURLRequest):
1400         * WebProcess/WebPage/WebPage.cpp:
1401         (WebKit::WebPage::loadURLRequest):
1402         (WebKit::WebPage::loadData):
1403         (WebKit::WebPage::linkClicked):
1404
1405 2012-11-20  James Simonsen  <simonjam@chromium.org>
1406
1407         Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
1408         https://bugs.webkit.org/show_bug.cgi?id=102151
1409
1410         Reviewed by Adam Barth.
1411
1412         * WebProcess/Plugins/PluginView.cpp:
1413         (WebKit::PluginView::performFrameLoadURLRequest):
1414         * WebProcess/WebPage/WebPage.cpp:
1415         (WebKit::WebPage::loadURLRequest):
1416         (WebKit::WebPage::loadData):
1417
1418 2012-11-20  peavo@outlook.com  <peavo@outlook.com>
1419
1420         WinCairo build fails to link.
1421         https://bugs.webkit.org/show_bug.cgi?id=102804
1422
1423         Reviewed by Alexey Proskuryakov.
1424
1425         * win/WebKit2CFLite.def:
1426
1427 2012-11-20  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1428
1429         [WTR] WebKitTestRunner should be able to run tests using fixed layout
1430         https://bugs.webkit.org/show_bug.cgi?id=102517
1431
1432         Reviewed by Kenneth Rohde Christiansen.
1433
1434         Update EFL private API so we can create a view with fixed layout. We
1435         can keep this as private as I don't see a real life use case for it
1436         outside WTR and the WebInspector.
1437
1438         * UIProcess/API/C/efl/WKView.cpp:
1439         (WKViewCreate):
1440         (WKViewCreateWithFixedLayout):
1441         * UIProcess/API/C/efl/WKView.h:
1442         * UIProcess/API/efl/ewk_view.cpp:
1443         (ewk_view_base_add):
1444         * UIProcess/API/efl/ewk_view_private.h:
1445         * UIProcess/efl/WebInspectorProxyEfl.cpp:
1446         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1447
1448 2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1449
1450         [Qt] PageViewportControllerClient::didChangeViewportAttributes called twice
1451         https://bugs.webkit.org/show_bug.cgi?id=102790
1452
1453         Reviewed by Kenneth Rohde Christiansen.
1454
1455         Change updateMinimumScaleToFit to no longer call PageViewportControllerClient::didChangeViewportAttributes,
1456         but instead return whether it has changed the minimumScaleToFit.
1457
1458         * UIProcess/PageViewportController.cpp:
1459         (WebKit::PageViewportController::didChangeContentsSize):
1460         (WebKit::PageViewportController::updateMinimumScaleToFit):
1461         * UIProcess/PageViewportController.h:
1462         (PageViewportController):
1463
1464 2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1465
1466         [Qt] No test of double-click to zoom out
1467         https://bugs.webkit.org/show_bug.cgi?id=102810
1468
1469         Reviewed by Kenneth Rohde Christiansen.
1470
1471         Adds tests of zoom-stack behaviour, the ability to restore previous zoom levels. It tests
1472         that zoom out always goes to lower zoom levels.
1473
1474         * UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:
1475
1476 2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1477
1478         [Qt] Large areas highlighted on touch
1479         https://bugs.webkit.org/show_bug.cgi?id=97216
1480
1481         Reviewed by Simon Hausmann.
1482
1483         Restrict highlighting of scripted event-handlers to inline elements only.
1484
1485         * WebProcess/WebPage/WebPage.cpp:
1486         (WebKit::WebPage::highlightPotentialActivation):
1487
1488 2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1489
1490         [Qt] Zoom logic confused by page and pinch resize
1491         https://bugs.webkit.org/show_bug.cgi?id=102803
1492
1493         Reviewed by Kenneth Rohde Christiansen.
1494
1495         Clear the zoom-out stack after page resize, and ensure the zoom logic can still detect
1496         zoom-out and zoom-back when the zoom-out stack is empty.
1497
1498         * UIProcess/qt/PageViewportControllerClientQt.cpp:
1499         (WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded):
1500         (WebKit::PageViewportControllerClientQt::clearRelativeZoomState):
1501         (WebKit::PageViewportControllerClientQt::setContentsScale):
1502         (WebKit::PageViewportControllerClientQt::pinchGestureStarted):
1503         (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):
1504         * UIProcess/qt/PageViewportControllerClientQt.h:
1505         (PageViewportControllerClientQt):
1506
1507 2012-11-19  KyungTae Kim  <ktf.kim@samsung.com>
1508
1509         [WK2] Unused parameters on CoordinatedGraphicsLayer.cpp
1510         https://bugs.webkit.org/show_bug.cgi?id=102760
1511
1512         Reviewed by Laszlo Gombos.
1513
1514         Because the 'platformLayer' parameter is not used when !USE(GRAPHICS_SURFACE),
1515         use UNUSED_PARAM macro to fix build warning -Wunused-parameter
1516
1517         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1518         (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
1519
1520 2012-11-19  Huang Dongsung  <luxtella@company100.net>
1521
1522         Coordinated Graphics: Remove tiles of a layer when they are off the viewport.
1523         https://bugs.webkit.org/show_bug.cgi?id=102313
1524
1525         Reviewed by Noam Rosenthal.
1526
1527         Currently, we don't remove tiles of the layer with the special properties: a
1528         transform animation and non affine transform. If a page has a lot of layers with
1529         a transform animation, we will encounter OOM. So this patch removes the
1530         privilege of the layer.
1531
1532         There are two changes.
1533         1. computeTransformedVisibleRect() calculates a layer transform using the
1534         current local transform which a transform animation applied.
1535         2. tiledBackingStoreVisibleRect() calculates a visible
1536         rect of all layers, even if the layer includes the property: a transform
1537         animation or non affine transform.
1538
1539         Test: animations/animation-offscreen-to-onscreen.html
1540
1541         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1542         (WebCore::CoordinatedGraphicsLayer::effectiveContentsScale):
1543         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
1544         (WebCore::CoordinatedGraphicsLayer::hasPendingVisibleChanges):
1545         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
1546         (WebCore::CoordinatedGraphicsLayer::selfOrAncestorHasActiveTransformAnimation):
1547         (WebCore):
1548         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1549         (CoordinatedGraphicsLayer):
1550
1551 2012-11-19  Huang Dongsung  <luxtella@company100.net>
1552
1553         Coordinated Graphics: Remove a texture if an direct composited image is off the viewport.
1554         https://bugs.webkit.org/show_bug.cgi?id=102449
1555
1556         Reviewed by Noam Rosenthal.
1557
1558         Currently, once uploading textures for composited images, Coordinated Graphics
1559         does not release the textures until all layers using images are destroyed.
1560
1561         This patch removes a texture if we don't need to render an image. This mechanism
1562         is similar how TiledBackingStore removes invisible tiles.
1563
1564         When all layers are invisible, we wait 3 seconds to remove the content
1565         of the image, because we want to prevent a transform animation from
1566         creating and destroying a texture over and over again.
1567
1568         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
1569         (WebKit::CoordinatedBackingStore::removeAllTiles):
1570         (WebKit):
1571         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
1572         (CoordinatedBackingStore):
1573         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
1574         (WebKit::LayerTreeCoordinatorProxy::clearImageBackingContents):
1575         (WebKit):
1576         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
1577         (LayerTreeCoordinatorProxy):
1578         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
1579         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1580         (WebKit::LayerTreeRenderer::clearImageBackingContents):
1581         (WebKit):
1582         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1583         (LayerTreeRenderer):
1584         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1585         (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
1586         (WebCore::CoordinatedGraphicsLayer::imageBackingVisible):
1587         (WebCore):
1588         (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
1589         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1590         (CoordinatedGraphicsLayer):
1591         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp:
1592         (WebKit::CoordinatedImageBacking::CoordinatedImageBacking):
1593         (WebKit::CoordinatedImageBacking::addHost):
1594         (WebKit::CoordinatedImageBacking::removeHost):
1595         (WebKit::CoordinatedImageBacking::update):
1596         (WebKit):
1597         (WebKit::CoordinatedImageBacking::updateVisibilityIfNeeded):
1598         (WebKit::CoordinatedImageBacking::clearContentsTimerFired):
1599         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h:
1600         (Coordinator):
1601         (Host):
1602         (CoordinatedImageBacking):
1603         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1604         (WebKit::LayerTreeCoordinator::clearImageBackingContents):
1605         (WebKit):
1606         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1607         (LayerTreeCoordinator):
1608
1609 2012-11-19  Sheriff Bot  <webkit.review.bot@gmail.com>
1610
1611         Unreviewed, rolling out r135201.
1612         http://trac.webkit.org/changeset/135201
1613         https://bugs.webkit.org/show_bug.cgi?id=102725
1614
1615         Broke all non-Mac WK2 builds. (Requested by rakuco on
1616         #webkit).
1617
1618         * Shared/mac/PlatformCertificateInfo.h:
1619         * Shared/mac/PlatformCertificateInfo.mm:
1620         (WebKit):
1621         * WebKit2.xcodeproj/project.pbxproj:
1622         * WebProcess/Authentication/AuthenticationManager.cpp:
1623         * WebProcess/Authentication/AuthenticationManager.h:
1624         (AuthenticationManager):
1625         * WebProcess/Authentication/mac/AuthenticationManager.mac.mm: Copied from Source/WebKit2/Shared/mac/PlatformCertificateInfo.mm.
1626         (WebKit):
1627         (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge):
1628
1629 2012-11-19  Brady Eidson  <beidson@apple.com>
1630
1631         Move tryUsePlatformCertificateInfoForChallenge from AuthenticationManager to PlatformCertificateInfo.
1632         https://bugs.webkit.org/show_bug.cgi?id=102718
1633
1634         Reviewed by Sam Weinig.
1635
1636         Add the shared PlatformCertificateInfo version of the method:
1637         * Shared/mac/PlatformCertificateInfo.h:
1638         * Shared/mac/PlatformCertificateInfo.mm:
1639         (WebKit::tryUsePlatformCertificateInfoForChallenge):
1640
1641         Use the new shared version:
1642         * WebProcess/Authentication/AuthenticationManager.cpp:
1643
1644         Remove the old member version:
1645         * WebProcess/Authentication/AuthenticationManager.h:
1646         * WebProcess/Authentication/mac/AuthenticationManager.mac.mm: Removed.
1647         * WebKit2.xcodeproj/project.pbxproj:
1648
1649 2012-11-19  Huang Dongsung  <luxtella@company100.net>
1650
1651         Coordinated Graphics: refactor syncCanvas to handle the lifecycle clearly.
1652         https://bugs.webkit.org/show_bug.cgi?id=102664
1653
1654         Reviewed by Noam Rosenthal.
1655
1656         This patch makes sync canvas code handle the lifecycle of the canvas
1657         GraphicsSurface in the similar style to a directly image compositing and
1658         an update atlas code. This patch moves the canvas lifecycle handling
1659         code from LayerTreeRenderer to CoordinatedGraphicsLayer, because
1660         CoordinatedGraphicsLayer knows best when to create and remove the canvas
1661         GraphicsSurface.
1662
1663         After this patch, we can remove the canvas GraphicsSurface in UI Process as soon
1664         as the canvas platform layer is unset in Web Process.
1665
1666         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
1667         (WebKit::LayerTreeCoordinatorProxy::createCanvas):
1668         (WebKit):
1669         (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
1670         (WebKit::LayerTreeCoordinatorProxy::destroyCanvas):
1671         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
1672         (LayerTreeCoordinatorProxy):
1673         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
1674         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1675         (WebKit::LayerTreeRenderer::createCanvas):
1676         (WebKit):
1677         (WebKit::LayerTreeRenderer::syncCanvas):
1678         (WebKit::LayerTreeRenderer::destroyCanvas):
1679         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1680         (LayerTreeRenderer):
1681         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1682         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
1683         (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
1684         (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
1685         (WebCore::CoordinatedGraphicsLayer::syncCanvas):
1686         (WebCore):
1687         (WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
1688         (WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):
1689         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1690         (CoordinatedGraphicsLayerClient):
1691         (CoordinatedGraphicsLayer):
1692         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1693         (WebKit::LayerTreeCoordinator::createCanvas):
1694         (WebKit):
1695         (WebKit::LayerTreeCoordinator::syncCanvas):
1696         (WebKit::LayerTreeCoordinator::destroyCanvas):
1697         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1698         (LayerTreeCoordinator):
1699
1700 2012-11-19  Brady Eidson  <beidson@apple.com>
1701
1702         Replace an unneeded #include with a forward declaration after r135179.
1703
1704         Reviewed by nobody, but suggested by Alexey Proskuryakov.
1705
1706         * WebProcess/Network/WebResourceLoader.h:
1707
1708 2012-11-19  Martin Robinson  <mrobinson@igalia.com>
1709
1710         [GTK] REGRESSION(r134955): Plugins are broken due to unresolved symbol in plugin process
1711         https://bugs.webkit.org/show_bug.cgi?id=102613
1712
1713         Unreviewed build fix.
1714
1715         * GNUmakefile.am: Fix the build after one of my previous patches introduced
1716         a link dependency on libsecret.
1717
1718 2012-11-19  Yael Aharon  <yael.aharon@intel.com>
1719
1720         [EFL][WK2] Web Inspector crashes if evas_gl is not available
1721         https://bugs.webkit.org/show_bug.cgi?id=102531
1722
1723         Reviewed by Kenneth Rohde Christiansen.
1724
1725         Teach Web Inspector to fallback gracefully to the software path when evas_gl engine is not available.
1726
1727         * UIProcess/efl/WebInspectorProxyEfl.cpp:
1728         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1729
1730 2012-11-19  Brady Eidson  <beidson@apple.com>
1731
1732         Remove the source files for NetworkRequest from the repository.
1733         They were obsoleted and removed from the project file awhile ago, but I forgot to nuke the source.
1734
1735         Unreviewed.
1736
1737         * NetworkProcess/NetworkRequest.cpp: Removed.
1738         * NetworkProcess/NetworkRequest.h: Removed.
1739
1740 2012-11-19  Brady Eidson  <beidson@apple.com>
1741
1742         Add 64-bit specializations for atomicIncrement and atomicDecrement
1743         https://bugs.webkit.org/show_bug.cgi?id=102702
1744
1745         Reviewed by Eric Carlson.
1746
1747         Move away from the Darwin-specific OSAtomicIncrement64Barrier and use WTF::atomicIncrement instead.
1748
1749         * NetworkProcess/NetworkResourceLoader.cpp:
1750         (WebKit::generateWillSendRequestID): Adopt WTF::atomicIncrement.
1751         (WebKit::generateCanAuthenticateAgainstProtectionSpaceID): Ditto.
1752
1753         * WebProcess/mac/KeychainItemShimMethods.mm:
1754         (WebKit::generateSecKeychainItemRequestID): Ditto.
1755
1756         * WebProcess/mac/SecItemShimMethods.mm:
1757         (WebKit::generateSecItemRequestID): Ditto.
1758
1759 2012-11-19  Brady Eidson  <beidson@apple.com>
1760
1761         NetworkProcess Authentication.
1762         https://bugs.webkit.org/show_bug.cgi?id=102592
1763
1764         Reviewed by Alexey Proskuryakov.
1765
1766         This get's basic HTTP authentication working with the NetworkProcess by dispatching authentication
1767         related events to the WebProcess and relying on existing client APIs to answer them.
1768
1769         Implement ResourceHandleClient methods related to auth challenges and message them to the WebProcess.
1770         Also implement messaging back from the WebProcess to response to those auth challenges:
1771         * NetworkProcess/NetworkResourceLoader.cpp:
1772         (WebKit::willSendRequestResponseMap):
1773         (WebKit::NetworkResourceLoader::willSendRequest):
1774         (WebKit::NetworkResourceLoader::willSendRequestHandled):
1775         (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
1776         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
1777         (WebKit::NetworkResourceLoader::didCancelAuthenticationChallenge):
1778         (WebKit::NetworkResourceLoader::receivedCancellation):
1779         (WebKit::NetworkResourceLoader::receivedAuthenticationCredential):
1780         (WebKit::NetworkResourceLoader::receivedRequestToContinueWithoutAuthenticationCredential):
1781         (WebKit::NetworkResourceLoader::receivedAuthenticationCancellation):
1782         (WebKit::canAuthenticateAgainstProtectionSpaceResponseMap):
1783         (WebKit::generateCanAuthenticateAgainstProtectionSpaceID):
1784         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace):
1785         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceHandled):
1786         * NetworkProcess/NetworkResourceLoader.h:
1787         * NetworkProcess/NetworkResourceLoader.messages.in:
1788
1789         Implement messaging to response to auth challenges from the NetworkProcess, and implement
1790         AuthenticationClient to response to auth responses from WebProcess clients:
1791         * WebProcess/Network/WebResourceLoader.cpp:
1792         (WebKit::WebResourceLoader::canAuthenticateAgainstProtectionSpace):
1793         (WebKit::WebResourceLoader::didReceiveAuthenticationChallenge):
1794         (WebKit::WebResourceLoader::didCancelAuthenticationChallenge):
1795         (WebKit::WebResourceLoader::receivedCredential):
1796         (WebKit::WebResourceLoader::receivedRequestToContinueWithoutCredential):
1797         (WebKit::WebResourceLoader::receivedCancellation):
1798         * WebProcess/Network/WebResourceLoader.h:
1799         (WebKit::WebResourceLoader::refAuthenticationClient):
1800         (WebKit::WebResourceLoader::derefAuthenticationClient):
1801         * WebProcess/Network/WebResourceLoader.messages.in:
1802
1803         Add a BlockingResponseMap for bool responses, which don't need OwnPtr trickery:
1804         * Shared/BlockingResponseMap.h:
1805         (BlockingBoolResponseMap::waitForResponse):
1806         (BlockingBoolResponseMap::didReceiveResponse):
1807
1808         Add "allowsStoredCredentials" to NetworkResourceLoadParameters so the NetworkProcess
1809         already has the answer when the question is asked:
1810         * Shared/Network/NetworkResourceLoadParameters.cpp:
1811         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
1812         (WebKit::NetworkResourceLoadParameters::encode):
1813         (WebKit::NetworkResourceLoadParameters::decode):
1814         * Shared/Network/NetworkResourceLoadParameters.h:
1815         (WebKit::NetworkResourceLoadParameters::allowStoredCredentials):
1816
1817         Grab the value for "allowsStoredCredentials" when scheduling the load in the NetworkProcess:
1818         * WebProcess/Network/WebResourceLoadScheduler.cpp:
1819         (WebKit::WebResourceLoadScheduler::scheduleLoad):
1820
1821         Add a FIXME for client certs:
1822         * WebProcess/Authentication/mac/AuthenticationManager.mac.mm:
1823         (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge):
1824
1825         Add a FIXME for downloads:
1826         * WebProcess/Downloads/mac/DownloadMac.mm:
1827
1828         Remove unused messaging related methods:
1829         * WebProcess/Network/NetworkProcessConnection.cpp:
1830         * WebProcess/Network/NetworkProcessConnection.h:
1831
1832 2012-11-19  Kihong Kwon  <kihong.kwon@samsung.com>
1833
1834         Add PROXIMITY_EVENTS feature
1835         https://bugs.webkit.org/show_bug.cgi?id=102658
1836
1837         Reviewed by Kentaro Hara.
1838
1839         Add PROXIMITY_EVENTS feature to xcode project for WebKit2.
1840
1841         * Configurations/FeatureDefines.xcconfig:
1842
1843 2012-11-19  Christophe Dumez  <christophe.dumez@intel.com>
1844
1845         [EFL][WK2] Fix possible crash in EwkViewImpl::displayTimerFired()
1846         https://bugs.webkit.org/show_bug.cgi?id=102682
1847
1848         Reviewed by Kenneth Rohde Christiansen.
1849
1850         Add NULL check for DrawingAreaProxy and LayerTreeCoordinatorProxy
1851         in displayTimerFired() to avoid crashing if those have already
1852         been destroyed by the time to timer is fired.
1853
1854         * UIProcess/API/efl/EwkViewImpl.cpp:
1855         (EwkViewImpl::layerTreeRenderer):
1856         (EwkViewImpl::displayTimerFired):
1857         (EwkViewImpl::createGLSurface):
1858         (EwkViewImpl::enterAcceleratedCompositingMode):
1859         * UIProcess/API/efl/EwkViewImpl.h:
1860         (WebKit):
1861         (EwkViewImpl):
1862
1863 2012-11-19  Christophe Dumez  <christophe.dumez@intel.com>
1864
1865         [WK2][WTR] Memory leak in TestController::initialize()
1866         https://bugs.webkit.org/show_bug.cgi?id=102616
1867
1868         Reviewed by Kenneth Rohde Christiansen.
1869
1870         Export a few additional WTF symbols for windows port.
1871
1872         * win/WebKit2.def:
1873
1874 2012-11-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1875
1876         [GTK] Test /webkit2/WebKitWebView/create-ready-close is failing after r134586
1877         https://bugs.webkit.org/show_bug.cgi?id=102668
1878
1879         Reviewed by Philippe Normand.
1880
1881         Check only that window properties match when creating a new window
1882         if the expected window properties has been set. Also remove a
1883         FIXME and actually check that x and y are equal to the expected
1884         one, now that the issue is fixed.
1885
1886         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
1887
1888 2012-11-19  Balazs Kelemen  <kbalazs@webkit.org>
1889
1890         Unreviewed buildfix.
1891
1892         Fix -Wdelete-non-virtual-destructor error with gcc 4.7 after r135056.
1893
1894         * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h:
1895         (WebCustomFilterProgramProxy): This is a polymorphic derived class
1896         so the destructor should be virtual.
1897
1898 2012-11-19  Christophe Dumez  <christophe.dumez@intel.com>
1899
1900         [CG][WK2] Assertion in CoordinatedGraphicsLayer::setContentsToImage(WebCore::Image*)
1901         https://bugs.webkit.org/show_bug.cgi?id=102652
1902
1903         Reviewed by Kenneth Rohde Christiansen.
1904
1905         Handle null return of nativeImageForCurrentFrame similarly to Chromium
1906         port in r130610. This can happen if there is an error early in the
1907         decoding of an image.
1908
1909         Test: Already covered by compositing/images/truncated-direct-png-image.html
1910
1911         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1912         (WebCore::CoordinatedGraphicsLayer::setContentsToImage):
1913
1914 2012-11-18  Jaehun Lim  <ljaehun.lim@samsung.com>
1915
1916         [EFL][WK2] Remove underscore characters in Ewk class names.
1917         https://bugs.webkit.org/show_bug.cgi?id=102641
1918
1919         Reviewed by Gyuyoung Kim.
1920
1921         WebKit EFL doesn't use '_' in C++ class names.
1922
1923         * UIProcess/API/efl/EwkViewCallbacks.h:
1924         * UIProcess/API/efl/EwkViewImpl.h:
1925         (EwkViewImpl::settings):
1926         (EwkViewImpl::backForwardList):
1927         (EwkViewImpl):
1928         * UIProcess/API/efl/ewk_auth_request.h:
1929         * UIProcess/API/efl/ewk_auth_request_private.h:
1930         * UIProcess/API/efl/ewk_back_forward_list.cpp:
1931         (EwkBackForwardList::EwkBackForwardList):
1932         (EwkBackForwardList::nextItem):
1933         (EwkBackForwardList::previousItem):
1934         (EwkBackForwardList::currentItem):
1935         (EwkBackForwardList::itemAt):
1936         (EwkBackForwardList::size):
1937         (EwkBackForwardList::backList):
1938         (EwkBackForwardList::forwardList):
1939         (EwkBackForwardList::getFromCacheOrCreate):
1940         (EwkBackForwardList::createEinaList):
1941         (EwkBackForwardList::update):
1942         * UIProcess/API/efl/ewk_back_forward_list.h:
1943         * UIProcess/API/efl/ewk_back_forward_list_item.h:
1944         * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
1945         * UIProcess/API/efl/ewk_back_forward_list_private.h:
1946         (EwkBackForwardList::create):
1947         (EwkBackForwardList):
1948         * UIProcess/API/efl/ewk_color_picker.cpp:
1949         (EwkColorPicker::EwkColorPicker):
1950         (EwkColorPicker::setColor):
1951         (EwkColorPicker::color):
1952         * UIProcess/API/efl/ewk_color_picker.h:
1953         * UIProcess/API/efl/ewk_color_picker_private.h:
1954         (EwkColorPicker::create):
1955         (EwkColorPicker):
1956         * UIProcess/API/efl/ewk_context.h:
1957         * UIProcess/API/efl/ewk_context_private.h:
1958         * UIProcess/API/efl/ewk_cookie_manager.cpp:
1959         (EwkCookieManager::EwkCookieManager):
1960         (EwkCookieManager::~EwkCookieManager):
1961         (EwkCookieManager::setPersistentStorage):
1962         (EwkCookieManager::setHTTPAcceptPolicy):
1963         (EwkCookieManager::clearHostnameCookies):
1964         (EwkCookieManager::clearAllCookies):
1965         (EwkCookieManager::watchChanges):
1966         (EwkCookieManager::isWatchingForChanges):
1967         (EwkCookieManager::getHostNamesWithCookies):
1968         (EwkCookieManager::getHTTPAcceptPolicy):
1969         (EwkCookieManager::cookiesDidChange):
1970         * UIProcess/API/efl/ewk_cookie_manager.h:
1971         * UIProcess/API/efl/ewk_cookie_manager_private.h:
1972         (EwkCookieManager::create):
1973         (EwkCookieManager):
1974         * UIProcess/API/efl/ewk_database_manager.cpp:
1975         (EwkDatabaseManager::EwkDatabaseManager):
1976         (EwkDatabaseManager::getDatabaseOrigins):
1977         (EwkDatabaseManager::createOriginList):
1978         * UIProcess/API/efl/ewk_database_manager.h:
1979         * UIProcess/API/efl/ewk_database_manager_private.h:
1980         (EwkDatabaseManager::create):
1981         (EwkDatabaseManager):
1982         * UIProcess/API/efl/ewk_download_job.h:
1983         * UIProcess/API/efl/ewk_download_job_private.h:
1984         * UIProcess/API/efl/ewk_error.cpp:
1985         (EwkError::EwkError):
1986         (EwkError::url):
1987         (EwkError::description):
1988         (EwkError::domain):
1989         (EwkError::errorCode):
1990         (EwkError::isCancellation):
1991         * UIProcess/API/efl/ewk_error.h:
1992         * UIProcess/API/efl/ewk_error_private.h:
1993         (EwkError::create):
1994         (EwkError):
1995         * UIProcess/API/efl/ewk_favicon_database.cpp:
1996         (EwkFaviconDatabase::EwkFaviconDatabase):
1997         (EwkFaviconDatabase::~EwkFaviconDatabase):
1998         (EwkFaviconDatabase::iconURLForPageURL):
1999         (EwkFaviconDatabase::watchChanges):
2000         (EwkFaviconDatabase::unwatchChanges):
2001         (EwkFaviconDatabase::iconForPageURL):
2002         (EwkFaviconDatabase::didChangeIconForPageURL):
2003         (EwkFaviconDatabase::getIconSurfaceSynchronously):
2004         (EwkFaviconDatabase::iconDataReadyForPageURL):
2005         * UIProcess/API/efl/ewk_favicon_database.h:
2006         * UIProcess/API/efl/ewk_favicon_database_private.h:
2007         (EwkFaviconDatabase::create):
2008         (EwkFaviconDatabase):
2009         * UIProcess/API/efl/ewk_file_chooser_request.h:
2010         * UIProcess/API/efl/ewk_file_chooser_request_private.h:
2011         * UIProcess/API/efl/ewk_form_submission_request.h:
2012         * UIProcess/API/efl/ewk_form_submission_request_private.h:
2013         * UIProcess/API/efl/ewk_intent.h:
2014         * UIProcess/API/efl/ewk_intent_private.h:
2015         * UIProcess/API/efl/ewk_intent_service.h:
2016         * UIProcess/API/efl/ewk_intent_service_private.h:
2017         * UIProcess/API/efl/ewk_navigation_data.h:
2018         * UIProcess/API/efl/ewk_navigation_data_private.h:
2019         * UIProcess/API/efl/ewk_navigation_policy_decision.h:
2020         * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
2021         * UIProcess/API/efl/ewk_object.h:
2022         * UIProcess/API/efl/ewk_object_private.h:
2023         (EwkObject::~EwkObject):
2024         (ewk_object_is_of_type):
2025         (ewk_object_cast_check):
2026         (ewk_object_cast):
2027         * UIProcess/API/efl/ewk_popup_menu.cpp:
2028         (EwkPopupMenu::EwkPopupMenu):
2029         (EwkPopupMenu::~EwkPopupMenu):
2030         (EwkPopupMenu::close):
2031         (EwkPopupMenu::items):
2032         (EwkPopupMenu::selectedIndex):
2033         (EwkPopupMenu::setSelectedIndex):
2034         * UIProcess/API/efl/ewk_popup_menu.h:
2035         * UIProcess/API/efl/ewk_popup_menu_item.cpp:
2036         (EwkPopupMenuItem::EwkPopupMenuItem):
2037         (EwkPopupMenuItem::type):
2038         (EwkPopupMenuItem::textDirection):
2039         (EwkPopupMenuItem::text):
2040         (EwkPopupMenuItem::tooltipText):
2041         (EwkPopupMenuItem::accessibilityText):
2042         (EwkPopupMenuItem::hasTextDirectionOverride):
2043         (EwkPopupMenuItem::isEnabled):
2044         (EwkPopupMenuItem::isLabel):
2045         (EwkPopupMenuItem::isSelected):
2046         * UIProcess/API/efl/ewk_popup_menu_item.h:
2047         * UIProcess/API/efl/ewk_popup_menu_item_private.h:
2048         (EwkPopupMenuItem::create):
2049         (EwkPopupMenuItem):
2050         * UIProcess/API/efl/ewk_popup_menu_private.h:
2051         (EwkPopupMenu::create):
2052         (EwkPopupMenu):
2053         * UIProcess/API/efl/ewk_resource.h:
2054         * UIProcess/API/efl/ewk_resource_private.h:
2055         * UIProcess/API/efl/ewk_security_origin.h:
2056         * UIProcess/API/efl/ewk_security_origin_private.h:
2057         * UIProcess/API/efl/ewk_settings.cpp:
2058         (EwkSettings::preferences):
2059         * UIProcess/API/efl/ewk_settings.h:
2060         * UIProcess/API/efl/ewk_settings_private.h:
2061         (EwkSettings::create):
2062         (EwkSettings::EwkSettings):
2063         * UIProcess/API/efl/ewk_storage_manager.cpp:
2064         (EwkStorageManager::EwkStorageManager):
2065         (EwkStorageManager::getStorageOrigins):
2066         (EwkStorageManager::createOriginList):
2067         * UIProcess/API/efl/ewk_storage_manager.h:
2068         * UIProcess/API/efl/ewk_storage_manager_private.h:
2069         (EwkStorageManager::create):
2070         (EwkStorageManager):
2071         * UIProcess/API/efl/ewk_url_request.h:
2072         * UIProcess/API/efl/ewk_url_request_private.h:
2073         * UIProcess/API/efl/ewk_url_response.h:
2074         * UIProcess/API/efl/ewk_url_response_private.h:
2075         * UIProcess/API/efl/ewk_url_scheme_request.h:
2076         * UIProcess/API/efl/ewk_url_scheme_request_private.h:
2077         * UIProcess/API/efl/tests/test_ewk2_object.cpp:
2078         (TEST_F):
2079
2080 2012-11-18  Yael Aharon  <yael.aharon@intel.com>
2081
2082         [EFL][WK2] Wrong transform when using software path.
2083         https://bugs.webkit.org/show_bug.cgi?id=102549
2084
2085         Reviewed by Kenneth Rohde Christiansen.
2086
2087         When using the software path, our transform is not correct and results 
2088         in drawing the wrong part of the page. This becomes more obvious after scrolling.
2089
2090         * UIProcess/efl/WebInspectorProxyEfl.cpp:
2091         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2092
2093 2012-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>
2094
2095         [WK2] REGRESSION: After web process crash a new web process is created for every existing page
2096         https://bugs.webkit.org/show_bug.cgi?id=102520
2097
2098         Reviewed by Alexey Proskuryakov.
2099
2100         When process model is SharedSecondaryProcess a new shared process
2101         should be created instead of a new process per page.
2102
2103         * UIProcess/WebContext.cpp:
2104         (WebKit::WebContext::ensureSharedWebProcess): Ensure a shared web
2105         process and return it.
2106         (WebKit::WebContext::createWebPage): Update to change in
2107         ensureSharedWebProcess() that returns the shared web process now.
2108         * UIProcess/WebContext.h:
2109         (WebContext): Remove relaunchProcessIfNecessary().
2110         (WebKit::WebContext::sendToAllProcessesRelaunchingThemIfNecessary):
2111         Use ensureSharedWebProcess() instead of relaunchProcessIfNecessary().
2112         * UIProcess/WebPageProxy.cpp:
2113         (WebKit::WebPageProxy::reattachToWebProcess): Ensure a shared web
2114         process for SharedSecondaryProcess model or create a new web
2115         process for multi-process models.
2116
2117 2012-11-17  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
2118
2119         Remove 8-bit related assertion from NetscapePluginModuleX11.
2120         https://bugs.webkit.org/show_bug.cgi?id=102588
2121
2122         Reviewed by Andreas Kling.
2123
2124         Follow-up to r135043: since String::fromUTF8() is not guaranteed
2125         to give us a 16-bit string, the assertion in
2126         truncateToSingleLine() will fail in that case.
2127
2128         This should make the EFL WK2 Debug bot stop failing all
2129         plugin-related tests because "WebKit Test Plugin" is returned as
2130         an 8-bit string.
2131
2132         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
2133         (WebKit::truncateToSingleLine):
2134
2135 2012-11-17  Alexandru Chiculita  <achicu@adobe.com>
2136
2137         [Texmap][CSS Shaders] Reuse the precompiled shader for custom filters in TextureMapperGL
2138         https://bugs.webkit.org/show_bug.cgi?id=101801
2139
2140         Reviewed by Noam Rosenthal.
2141
2142         Changed the encoding code for ValidatedCustomFilterOperation to only encode the ID of the program.
2143         LayerTreeCoordinator makes sure to send the programs in full before the encoder runs.
2144         LayerTreeRenderer will maintain a HashMap from these IDs to the real CustomFilterProgram.
2145         The UI process will also receive a message from the WebProcess when the shader is no longer in needed.
2146         LayerTreeRenderer calls the TextureMapper's removeCachedCustomFilterProgram to notify
2147         about the removed CustomFilterProgram.
2148
2149         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2150         (CoreIPC::::encode):
2151         (CoreIPC::::decode):
2152         (CoreIPC):
2153         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
2154         (WebCore):
2155         * Shared/CoordinatedGraphics/WebCustomFilterOperation.h: Added.
2156         (WebCore):
2157         (WebCustomFilterOperation):
2158         (WebCore::WebCustomFilterOperation::create):
2159         (WebCore::WebCustomFilterOperation::programID):
2160         (WebCore::WebCustomFilterOperation::WebCustomFilterOperation):
2161         * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h:
2162         (WebKit::WebCustomFilterProgramProxy::create):
2163         (WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):
2164         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2165         (WebKit):
2166         (WebKit::LayerTreeCoordinatorProxy::removeCustomFilterProgram):
2167         (WebKit::LayerTreeCoordinatorProxy::createCustomFilterProgram):
2168         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
2169         (LayerTreeCoordinatorProxy):
2170         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2171         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2172         (WebKit::LayerTreeRenderer::setLayerFilters):
2173         (WebKit):
2174         (WebKit::LayerTreeRenderer::injectCachedCustomFilterPrograms):
2175         (WebKit::LayerTreeRenderer::createCustomFilterProgram):
2176         (WebKit::LayerTreeRenderer::removeCustomFilterProgram):
2177         (WebKit::LayerTreeRenderer::setLayerAnimations):
2178         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2179         (WebCore):
2180         (LayerTreeRenderer):
2181         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2182         (WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
2183         (WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
2184         (WebKit::LayerTreeCoordinator::setLayerAnimations):
2185
2186 2012-11-17  Brady Eidson  <beidson@apple.com>
2187
2188         Add an integer identifier field to AuthenticationChallengeBase.
2189         https://bugs.webkit.org/show_bug.cgi?id=102593
2190
2191         Reviewed by Darin Adler.
2192
2193         Properly encode/decode the identifier when sending the challenge over CoreIPC.
2194
2195         * Shared/WebCoreArgumentCoders.cpp:
2196         (CoreIPC::::encode):
2197         (CoreIPC::::decode):
2198
2199 2012-11-17  Balazs Kelemen  <kbalazs@webkit.org>
2200
2201         8bit-unaware String usage in NetscapePluginModuleX11.cpp
2202         https://bugs.webkit.org/show_bug.cgi?id=102482
2203
2204         Reviewed by Michael Saboff.
2205
2206         String::fromUTF8 is not guaranteed to give a 16 bit string.
2207
2208         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
2209         (WebKit::truncateToSingleLine): Do an explicit 16 bit conversion.
2210
2211 2012-11-16  Jaehun Lim  <ljaehun.lim@samsung.com>
2212
2213         [EFL][WK2] Remove unnecessary #include statemtns
2214         https://bugs.webkit.org/show_bug.cgi?id=102577
2215
2216         Reviewed by Anders Carlsson.
2217
2218         ewk_*_private.h doesn't need to include RefCounted.h after Ewk_Object refactoring.
2219
2220         * UIProcess/API/efl/ewk_auth_request_private.h:
2221         * UIProcess/API/efl/ewk_database_manager.cpp:
2222         * UIProcess/API/efl/ewk_file_chooser_request_private.h:
2223         * UIProcess/API/efl/ewk_form_submission_request_private.h:
2224         * UIProcess/API/efl/ewk_navigation_data_private.h:
2225         * UIProcess/API/efl/ewk_resource_private.h:
2226         * UIProcess/API/efl/ewk_storage_manager.cpp:
2227
2228 2012-11-16  Sam Weinig  <weinig@apple.com>
2229
2230         Fix the windows build.
2231
2232         * WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp:
2233         (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
2234         (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
2235         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2236         (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
2237         (WebKit::InjectedBundle::switchNetworkLoaderToNewTestingSession):
2238         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2239         (WebKit::WebPlatformStrategies::defaultCookieStorage):
2240         * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h:
2241         (WebFrameNetworkingContext):
2242         * WebProcess/WebPage/WebPage.cpp:
2243         (WebKit::WebPage::updatePreferences):
2244         * WebProcess/WebPage/win/WebPageWin.cpp:
2245         (WebKit::cachedResponseForURL):
2246         * WebProcess/WebProcess.cpp:
2247         (WebKit::WebProcess::initializeWebProcess):
2248         * WebProcess/win/WebProcessWin.cpp:
2249         (WebKit::WebProcess::platformSetCacheModel):
2250         (WebKit::WebProcess::platformClearResourceCaches):
2251         (WebKit::WebProcess::platformInitializeWebProcess):
2252
2253 2012-11-16  Alec Flett  <alecflett@chromium.org>
2254
2255         Add tests for explicit serialization values
2256         https://bugs.webkit.org/show_bug.cgi?id=96818
2257
2258         Reviewed by Adam Barth.
2259
2260         Add exports for SerializedScriptValue changes.
2261
2262         * win/WebKit2.def:
2263         * win/WebKit2CFLite.def:
2264
2265 2012-11-16  Kiran Muppala  <cmuppala@apple.com>
2266
2267         Set task priority of WebKit2 processes to zero on Mac
2268         https://bugs.webkit.org/show_bug.cgi?id=102567
2269
2270         Reviewed by Mark Rowe.
2271
2272         Explicitly set task priority of WebKit2 processes to zero, to
2273         override automatic priority determination by the system.
2274
2275         * Shared/ChildProcess.cpp:
2276         (WebKit::ChildProcess::ChildProcess): Add call to platformInitialize() and
2277         move MAC specific call to disableProcessSuppression to platformInitialize.
2278         (WebKit::ChildProcess::platformInitialize): Dummy for non MAC platforms.
2279         * Shared/ChildProcess.h:
2280         * Shared/mac/ChildProcessMac.mm:
2281         (WebKit::ChildProcess::platformInitialize): Add call to setpriority().
2282
2283 2012-11-16  Brady Eidson  <beidson@apple.com>
2284
2285         Move resource loader messaging from NetworkConnectionToWebProcess directly to NetworkResourceLoader
2286         https://bugs.webkit.org/show_bug.cgi?id=102570
2287
2288         Reviewed by Alexey Proskuryakov.
2289
2290         This patch adds the ability for WebResourceLoader to message NetworkResourceLoader directly.
2291
2292         This further cements the 1-to-1 relationship between the two classes and makes it easy to add/change
2293         loader related messaging going forward.
2294
2295         Build/infrastructure stuff:
2296         * Platform/CoreIPC/MessageID.h:
2297         * WebKit2.xcodeproj/project.pbxproj:
2298         * DerivedSources.make:
2299
2300         Remove the WillSendRequestHandled message, and forward NetworkResourceLoader messages on to the correct object:
2301         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
2302         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
2303         * NetworkProcess/NetworkConnectionToWebProcess.h:
2304         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
2305
2306         Hang on to a master map of identifiers to NetworkResourceLoaders:
2307         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
2308         (WebKit::NetworkResourceLoadScheduler::scheduleResourceLoad):
2309         (WebKit::NetworkResourceLoadScheduler::removeLoadIdentifier):
2310         (WebKit::NetworkResourceLoadScheduler::networkResourceLoaderForIdentifier):
2311         * NetworkProcess/NetworkResourceLoadScheduler.h:
2312
2313         Change the way "willSendRequestHandled" comes in to be a direct message:
2314         * NetworkProcess/NetworkResourceLoader.cpp:
2315         (WebKit::NetworkResourceLoader::willSendRequest):
2316         (WebKit::NetworkResourceLoader::willSendRequestHandled):
2317         * NetworkProcess/NetworkResourceLoader.h:
2318         * NetworkProcess/NetworkResourceLoader.messages.in:
2319
2320         Make WebResourceLoader a MessageSender:
2321         * WebProcess/Network/WebResourceLoader.cpp:
2322         (WebKit::WebResourceLoader::connection):
2323         (WebKit::WebResourceLoader::destinationID):
2324         (WebKit::WebResourceLoader::willSendRequest): Use MessageSender abilities to message the NetworkResourceLoader.
2325         * WebProcess/Network/WebResourceLoader.h:
2326
2327 2012-11-16  Tony Chang  <tony@chromium.org>
2328
2329         Remove ENABLE_CSS_HIERARCHIES since it's no longer in use
2330         https://bugs.webkit.org/show_bug.cgi?id=102554
2331
2332         Reviewed by Andreas Kling.
2333
2334         As mentioned in https://bugs.webkit.org/show_bug.cgi?id=79939#c41 ,
2335         we're going to revist this feature once additional vendor support is
2336         achieved.
2337
2338         * Configurations/FeatureDefines.xcconfig:
2339
2340 2012-11-16  Brent Fulgham  <bfulgham@webkit.org>
2341
2342         [WinCairo] Build correction after r134960.
2343
2344         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:  Stub out
2345         calls to CFNetwork-based implementation.
2346
2347 2012-11-16  Martin Robinson  <mrobinson@igalia.com>
2348
2349         Move authentication dialog to the UIProcess
2350
2351         [GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
2352         https://bugs.webkit.org/show_bug.cgi?id=101843
2353
2354         Reviewed by Gustavo Noronha Silva.
2355
2356         Move the use of GtkAuthenticationDialog to the UIProcess along with the rest of
2357         the GTK+ widgets. This will allow us to to embed the dialog into the WebView
2358         in the future and to test authentication with the WebKit2 C API.
2359
2360         * GNUmakefile.list.am: Add the new class to the source list and remove the
2361         GTK+-only WebFrameLoader implementation file.
2362         * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp: Added. A subclass of GtkAuthenticationDialog
2363         which uses the WebKit2 classes to do the UIProcess-side authentication.
2364         * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h: Added.
2365         * UIProcess/API/gtk/WebKitLoaderClient.cpp: Add a callback for didReceiveAuthenticationChallengeInFrame.
2366         (didReceiveAuthenticationChallengeInFrame): Added.
2367         (attachLoaderClientToView): Use the new callback.
2368         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
2369         (WebKit::AuthenticationChallengeProxy::core): Add this getter for the WebCore class.
2370         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2371         (WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): Share the implementation
2372         again.
2373         * WebProcess/WebCoreSupport/gtk/WebFrameLoaderClientGtk.cpp: Removed.
2374
2375 2012-11-15  Alexey Proskuryakov  <ap@apple.com>
2376
2377         Private Browsing is a per-page setting that sets a global value
2378         https://bugs.webkit.org/show_bug.cgi?id=67870
2379
2380         Reviewed by Sam Weinig.
2381
2382         * NetworkProcess/mac/RemoteNetworkingContext.h: Added storageSession().
2383
2384         * NetworkProcess/mac/RemoteNetworkingContext.mm:
2385         (WebKit::RemoteNetworkingContext::storageSession): Just always fall back to default
2386         so far.
2387
2388         * WebKit2.xcodeproj/project.pbxproj: Added WebPlatformStrategiesMac.mm for strategy
2389         code that uses Objective C.
2390
2391         * WebProcess/Cookies/mac/WebCookieManagerMac.mm:
2392         (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): Use WebFrameNetworkingContext
2393         instead of hardcoding access to sessiosn here.
2394
2395         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2396         (WebKit::InjectedBundle::setPrivateBrowsingEnabled): Create and destroy private
2397         browsing session as appropriate.
2398         (WebKit::InjectedBundle::switchNetworkLoaderToNewTestingSession): Use WebFrameNetworkingContext
2399         instead of hardcoding access to sessiosn here.
2400
2401         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2402         * WebProcess/WebCoreSupport/mac/WebPlatformStrategiesMac.mm: Added.
2403         (WebKit::WebPlatformStrategies::defaultCookieStorage):
2404         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2405         (WebKit::WebPlatformStrategies::defaultCookieStorage):
2406         Implemented defaultCookieStorage() through WebFrameNetworkingContext.
2407
2408         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
2409         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
2410         Moved code for dealing with global contexts here from WebCore.
2411
2412         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::updatePreferences):
2413         Create a global private session when any page enters private browsing, and
2414         delete it when any page exits private browsing. This is handling a preference
2415         change, so all pages get it once.
2416
2417         * WebProcess/WebPage/mac/WebPageMac.mm:
2418         (WebKit::WebPage::platformHasLocalDataForURL): Use main frame's context.
2419         (WebKit::cachedResponseForURL): Ditto.
2420
2421         * WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeWebProcess): Updated
2422         to talk to WebFrameNetworkingContext instead of ResourceHandle for global session.
2423
2424 2012-11-16  Viatcheslav Ostapenko  <v.ostapenko@samsung.com>
2425
2426         [EFL][WK2] White flicker when scrolling big pages with dark background on slower hardware.
2427         https://bugs.webkit.org/show_bug.cgi?id=102000
2428
2429         Reviewed by Kenneth Rohde Christiansen.
2430
2431         Add matching of view background color to the page background. This helps to reduce 
2432         visibility of flicker during scrolling/scaling/repainting where page tiles are not
2433         ready. View background color matching is disabled by default and can be enabled 
2434         with new API function ewk_view_draws_page_background_set .
2435         View background color can interfere with semi-transparent pages and should be
2436         disabled by default.
2437         Upstreaming changes by Youngtaeck Song(youngtaeck.song@samsung.com).
2438
2439         * UIProcess/API/efl/EwkViewImpl.cpp:
2440         (EwkViewImpl::EwkViewImpl):
2441         (EwkViewImpl::displayTimerFired):
2442         * UIProcess/API/efl/EwkViewImpl.h:
2443         (EwkViewImpl::setDrawsBackground):
2444         (EwkViewImpl):
2445         * UIProcess/API/efl/ewk_view.cpp:
2446         (ewk_view_draws_page_background_set):
2447         * UIProcess/API/efl/ewk_view.h:
2448         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2449         (WebKit::LayerTreeCoordinatorProxy::setBackgroundColor):
2450         (WebKit):
2451         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
2452         (LayerTreeCoordinatorProxy):
2453         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2454         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2455         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
2456         (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
2457         (WebKit::LayerTreeRenderer::paintToGraphicsContext):
2458         (WebKit::LayerTreeRenderer::setBackgroundColor):
2459         (WebKit):
2460         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2461         (LayerTreeRenderer):
2462         (WebKit::LayerTreeRenderer::setDrawsBackground):
2463         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2464         (WebKit::LayerTreeCoordinator::setBackgroundColor):
2465         (WebKit):
2466         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2467         (LayerTreeCoordinator):
2468         * WebProcess/WebPage/LayerTreeHost.h:
2469         (WebKit::LayerTreeHost::setBackgroundColor):
2470         * WebProcess/WebPage/WebPage.cpp:
2471         (WebKit::WebPage::WebPage):
2472         (WebKit::WebPage::mainFrameDidLayout):
2473         * WebProcess/WebPage/WebPage.h:
2474         (WebPage):
2475
2476 2012-11-16  Krzysztof Czech  <k.czech@samsung.com>
2477
2478         [WK2][GTK][EFL] Share WebKit2-GTK's WebProcess Accessibility implementation with other WebKit ports.
2479         https://bugs.webkit.org/show_bug.cgi?id=101748
2480
2481         Reviewed by Martin Robinson.
2482
2483         Remove and rename files related to Accessibility from WebPage/gtk to WebPage/atk.
2484
2485         * GNUmakefile.am:
2486         * GNUmakefile.list.am:
2487         * WebProcess/WebPage/atk/WebPageAccessibilityObject.h: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.h.
2488         (WebKit):
2489         (_WebPageAccessibilityObject):
2490         (_WebPageAccessibilityObjectClass):
2491         * WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.cpp.
2492         (accessibilityRootObjectWrapper):
2493         (webPageAccessibilityObjectInitialize):
2494         (webPageAccessibilityObjectGetIndexInParent):
2495         (webPageAccessibilityObjectGetNChildren):
2496         (webPageAccessibilityObjectRefChild):
2497         (web_page_accessibility_object_init):
2498         (web_page_accessibility_object_class_init):
2499         (webPageAccessibilityObjectNew):
2500         (webPageAccessibilityObjectRefresh):
2501
2502 2012-11-16  Alexandru Chiculita  <achicu@adobe.com>
2503
2504         [Texmap][CSS Shaders] Make the CustomFilterValidatedProgram maintain the platform compiled program
2505         https://bugs.webkit.org/show_bug.cgi?id=102414
2506
2507         Reviewed by Noam Rosenthal.
2508
2509         This is the first part of shader caching implementation for the Custom Filters in WK2 LayerTreeCoordinator.
2510         In this patch it will just make the LayerTreeCoordinator knowledgeable about the life-time
2511         of the custom filter programs. It can allocate IDs for the filters and it also gets a callback when the
2512         filters are not needed anymore.
2513
2514         The UI process is still recreating the shader every time, but https://bugs.webkit.org/show_bug.cgi?id=101801
2515         will fix that and try to reuse existing custom filters.
2516
2517         * CMakeLists.txt:
2518         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2519         (CoreIPC::::encode):
2520         * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.cpp: Added.
2521         (WebKit):
2522         (WebKit::WebCustomFilterProgramProxy::~WebCustomFilterProgramProxy):
2523         * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h: Added.
2524         (WebKit):
2525         (WebCustomFilterProgramProxyClient):
2526         (WebCustomFilterProgramProxy):
2527         (WebKit::WebCustomFilterProgramProxy::create):
2528         (WebKit::WebCustomFilterProgramProxy::id):
2529         (WebKit::WebCustomFilterProgramProxy::refFromValidatedProgram):
2530         (WebKit::WebCustomFilterProgramProxy::derefFromValidatedProgram):
2531         (WebKit::WebCustomFilterProgramProxy::setClient):
2532         (WebKit::WebCustomFilterProgramProxy::client):
2533         (WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):
2534         * Target.pri:
2535         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2536         (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
2537         (WebKit::LayerTreeCoordinator::syncLayerFilters):
2538         (WebKit):
2539         (WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
2540         (WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
2541         (WebKit::LayerTreeCoordinator::disconnectCustomFilterPrograms):
2542         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2543         (LayerTreeCoordinator):
2544
2545 2012-11-16  Peter Gal  <galpeter@inf.u-szeged.hu>
2546
2547         [Qt][Mac] Fix the build after r124873
2548         https://bugs.webkit.org/show_bug.cgi?id=102475
2549
2550         Reviewed by Noam Rosenthal.
2551
2552         Change the CoordinatedImageBackingID typedef from uintptr_t to uint64_t.
2553
2554         * Shared/WebLayerTreeInfo.h:
2555         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2556
2557 2012-11-16  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
2558
2559         [EFL][WK2] Unset the tooltip when the web process has crashed
2560         https://bugs.webkit.org/show_bug.cgi?id=102232
2561
2562         Reviewed by Gyuyoung Kim.
2563
2564         Emit 'tooltip,text,unset' signal to unset the tooltip
2565         when the web process has crashed.
2566
2567         * UIProcess/efl/PageClientBase.cpp:
2568         (WebKit::PageClientBase::processDidCrash):
2569
2570 2012-11-16  Helder Correia  <helder.correia@nokia.com>
2571
2572         [CoordGfx] Follow coding style on explicit constructors
2573         https://bugs.webkit.org/show_bug.cgi?id=102451
2574
2575         Reviewed by Noam Rosenthal.
2576
2577         Use the explicit keyword on single argument constructors.
2578
2579         No new tests needed.
2580
2581         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
2582         (WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
2583         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
2584         (CoordinatedTileBackend):
2585
2586 2012-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2587
2588         Unreviewed, rolling out r134908.
2589         http://trac.webkit.org/changeset/134908
2590         https://bugs.webkit.org/show_bug.cgi?id=102473
2591
2592         Broke the Apple Windows Debug build. (Requested by dydx on
2593         #webkit).
2594
2595         * win/WebKit2.def:
2596         * win/WebKit2CFLite.def:
2597
2598 2012-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2599
2600         Unreviewed, rolling out r134913.
2601         http://trac.webkit.org/changeset/134913
2602         https://bugs.webkit.org/show_bug.cgi?id=102472
2603
2604         Incorrect fix. (Requested by dydx on #webkit).
2605
2606         * win/WebKit2.def:
2607         * win/WebKit2CFLite.def:
2608
2609 2012-11-16  Daniel Bates  <dbates@webkit.org>
2610
2611         Attempt to fix the Apple Windows Debug build after http://trac.webkit.org/changeset/134908
2612         (https://bugs.webkit.org/show_bug.cgi?id=102354).
2613
2614         Add symbol.
2615
2616         * win/WebKit2.def:
2617         * win/WebKit2CFLite.def:
2618
2619 2012-11-16  KyungTae Kim  <ktf.kim@samsung.com>
2620
2621         [WK2] Bug on ASSERT code in CoordinatedBackingStore.cpp
2622         https://bugs.webkit.org/show_bug.cgi?id=102465
2623
2624         Reviewed by Noam Rosenthal.
2625
2626         The ASSERT code should be fixed because the 'operator>=' is not defined for WebCore::IntSize.
2627
2628         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
2629         (WebKit::CoordinatedBackingStoreTile::swapBuffers):
2630
2631 2012-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2632
2633         Unreviewed, rolling out r134865.
2634         http://trac.webkit.org/changeset/134865
2635         https://bugs.webkit.org/show_bug.cgi?id=102466
2636
2637         Broke the Apple Windows Debug build. (Requested by dydx on
2638         #webkit).
2639
2640         * win/WebKit2.def:
2641         * win/WebKit2CFLite.def:
2642
2643 2012-11-16  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2644
2645         Avoid copying of ViewportArguments in computeViewportAttributes function
2646         https://bugs.webkit.org/show_bug.cgi?id=102354
2647
2648         Reviewed by Kenneth Rohde Christiansen.
2649
2650         Update exported symbols.
2651
2652         * win/WebKit2.def:
2653         * win/WebKit2CFLite.def:
2654
2655 2012-11-15  Huang Dongsung  <luxtella@company100.net>
2656
2657         Coordinated Graphics: Refactor code related to directly composited images.
2658         https://bugs.webkit.org/show_bug.cgi?id=101023
2659
2660         Reviewed by Noam Rosenthal.
2661
2662         Internal Review by Gwang Yoon Hwang and Jae Hyun Park.
2663
2664         Currently, LayerTreeCoordinator manages composited images using
2665         ShareableBitmap. This patch introduces CoordinatedImageBacking which
2666         plays a role in managing composited images. CoordinatedImageBacking makes us
2667         gather code related to a directly composited image into a single class.
2668
2669         We create only one CoordinatedImageBacking per image. For example, in the leaves
2670         demo, we create only 3 textures of leaves.
2671
2672         * CMakeLists.txt:
2673         * Shared/WebLayerTreeInfo.h:
2674         (WebKit::WebLayerInfo::WebLayerInfo):
2675         (WebLayerInfo):
2676         * Target.pri:
2677         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
2678         (WebKit::CoordinatedBackingStoreTile::swapBuffers):
2679         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2680         (WebKit::LayerTreeCoordinatorProxy::createImageBacking):
2681         (WebKit::LayerTreeCoordinatorProxy::updateImageBacking):
2682         (WebKit):
2683         (WebKit::LayerTreeCoordinatorProxy::removeImageBacking):
2684         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
2685         (LayerTreeCoordinatorProxy):
2686         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2687         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2688         (WebKit::LayerTreeRenderer::setLayerState):
2689         (WebKit::LayerTreeRenderer::createImageBacking):
2690         (WebKit::LayerTreeRenderer::updateImageBacking):
2691         (WebKit::LayerTreeRenderer::removeImageBacking):
2692         (WebKit):
2693         (WebKit::LayerTreeRenderer::assignImageBackingToLayer):
2694         (WebKit::LayerTreeRenderer::removeReleasedImageBackingsIfNeeded):
2695         (WebKit::LayerTreeRenderer::flushLayerChanges):
2696         (WebKit::LayerTreeRenderer::purgeGLResources):
2697         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2698         (LayerTreeRenderer):
2699         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2700         (WebCore::CoordinatedGraphicsLayer::setContentsToImage):
2701         (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
2702         (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
2703         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
2704         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2705         (CoordinatedGraphicsLayerClient):
2706         (CoordinatedGraphicsLayer):
2707         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp: Added.
2708         (WebKit):
2709         (WebKit::CoordinatedImageBacking::getCoordinatedImageBackingID):
2710         (WebKit::CoordinatedImageBacking::create):
2711         (WebKit::CoordinatedImageBacking::CoordinatedImageBacking):
2712         (WebKit::CoordinatedImageBacking::~CoordinatedImageBacking):
2713         (WebKit::CoordinatedImageBacking::addLayerClient):
2714         (WebKit::CoordinatedImageBacking::removeLayerClient):
2715         (WebKit::CoordinatedImageBacking::markDirty):
2716         (WebKit::CoordinatedImageBacking::update):
2717         (WebKit::CoordinatedImageBacking::releaseSurfaceIfNeeded):
2718         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h: Added.
2719         (WebCore):
2720         (WebKit):
2721         (CoordinatedImageBacking):
2722         (Coordinator):
2723         (WebKit::CoordinatedImageBacking::id):
2724         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2725         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
2726         (WebKit::LayerTreeCoordinator::createImageBackingIfNeeded):
2727         (WebKit::LayerTreeCoordinator::createImageBacking):
2728         (WebKit::LayerTreeCoordinator::updateImageBacking):
2729         (WebKit::LayerTreeCoordinator::removeImageBacking):
2730         (WebKit::LayerTreeCoordinator::flushPendingImageBackingChanges):
2731         (WebKit::LayerTreeCoordinator::purgeBackingStores):
2732         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2733         (LayerTreeCoordinator):
2734
2735 2012-11-15  Huang Dongsung  <luxtella@company100.net>
2736
2737         Coordinated Graphics: A Minor optimization of calculating transforms in CoordinagedGraphicsLayer.
2738         https://bugs.webkit.org/show_bug.cgi?id=102309
2739
2740         We calculate an inverse transform each tiledBackingStoreVisibleRect() call by
2741         a TiledBackingStore and every tiles.
2742         This patch caches the inverse transform to reuse it.
2743
2744         Reviewed by Noam Rosenthal.
2745
2746         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2747         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
2748         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
2749         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2750         (CoordinatedGraphicsLayer):
2751
2752 2012-11-15  Alec Flett  <alecflett@chromium.org>
2753
2754         Add tests for explicit serialization values
2755         https://bugs.webkit.org/show_bug.cgi?id=96818
2756
2757         Reviewed by Adam Barth.
2758
2759         Add exports for SerializedScriptValue changes.
2760
2761         * win/WebKit2.def:
2762         * win/WebKit2CFLite.def:
2763
2764 2012-11-15  Gustavo Noronha Silva  <gns@gnome.org>
2765
2766         [GTK] Split WebCore/platform into a separate library
2767         https://bugs.webkit.org/show_bug.cgi?id=94435
2768
2769         Reviewed by Martin Robinson.
2770
2771         More people have been reporting problems when linking WebCore because
2772         the command line limit is being exceeded. Splitting WebCore a bit more
2773         is in order.
2774
2775         * GNUmakefile.am: link libWebCorePlatform into libwebkit2gtk
2776
2777 2012-11-15  Anders Carlsson  <andersca@apple.com>
2778
2779         Consolidate four accelerated compositing WKView methods into a single method
2780         https://bugs.webkit.org/show_bug.cgi?id=102419
2781
2782         Reviewed by Andreas Kling.
2783
2784         Add a single -[WKView _setAcceleratedCompositingModeRootLayer:] method and have
2785         the existing PageClientImpl member functions call it. Also, add a new
2786         PageClient member function, setAcceleratedCompositingRootLayer.
2787
2788         * UIProcess/API/mac/PageClientImpl.h:
2789         * UIProcess/API/mac/PageClientImpl.mm:
2790         (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
2791         (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
2792         (WebKit::PageClientImpl::updateAcceleratedCompositingMode):
2793         (WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
2794         * UIProcess/API/mac/WKView.mm:
2795         (-[WKView _processDidCrash]):
2796         (-[WKView _setAcceleratedCompositingModeRootLayer:]):
2797         * UIProcess/API/mac/WKViewInternal.h:
2798         * UIProcess/PageClient.h:
2799         * UIProcess/WebPageProxy.h:
2800         * UIProcess/mac/RemoteLayerTreeHost.mm:
2801         (WebKit::RemoteLayerTreeHost::commit):
2802         * UIProcess/mac/WebPageProxyMac.mm:
2803         (WebKit::WebPageProxy::setAcceleratedCompositingRootLayer):
2804
2805 2012-11-15  Rick Byers  <rbyers@chromium.org>
2806
2807         No tests for changing mouse cursors
2808         https://bugs.webkit.org/show_bug.cgi?id=100550
2809
2810         Reviewed by Brent Fulgham.
2811
2812         Add necessary exports for Internals::getCurrentCursorInfo
2813
2814         * win/WebKit2.def:
2815         * win/WebKit2CFLite.def:
2816
2817 2012-11-15  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2818
2819         Remove initiallyFitToViewport attribute
2820         https://bugs.webkit.org/show_bug.cgi?id=102392
2821
2822         Reviewed by Noam Rosenthal.
2823
2824         Remove the initiallyFitToViewport which shouldn't have been
2825         added in the first place. We now reset userScalable to auto (-1)
2826         in case it was not explicitly set by the web author.
2827
2828         Same behavior, covered by existing tests.
2829
2830         * UIProcess/PageViewportController.cpp:
2831         (WebKit::PageViewportController::PageViewportController):
2832         (WebKit::PageViewportController::pageTransitionViewportReady):
2833         * WebProcess/WebPage/WebPage.cpp:
2834         (WebKit::WebPage::sendViewportAttributesChanged):
2835
2836 2012-11-15  Balazs Kelemen  <kbalazs@webkit.org>
2837
2838         Coordinated Graphics: support the "freeze animations" API
2839         https://bugs.webkit.org/show_bug.cgi?id=100703
2840
2841         Reviewed by Noam Rosenthal.
2842
2843         Implement suspendAnimations and resumeAnimations in CoordinatedGraphicsLayer.
2844
2845         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2846         (WebCore::CoordinatedGraphicsLayer::suspendAnimations):
2847         (WebCore):
2848         (WebCore::CoordinatedGraphicsLayer::resumeAnimations):
2849         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2850         (CoordinatedGraphicsLayer):
2851
2852 2012-11-15  Yuni Jeong  <yhnet.jung@samsung.com>
2853
2854         [EFL][WK2] Add APIs to get/set whether scripts can open new windows.
2855         https://bugs.webkit.org/show_bug.cgi?id=102054
2856
2857         Reviewed by Gyuyoung Kim.
2858
2859         Added setting APIs make it possible to allow or prevent scripts from opening new windows automatically.
2860
2861         * UIProcess/API/efl/ewk_settings.cpp:
2862         (ewk_settings_scripts_can_open_windows_set):
2863         (ewk_settings_scripts_can_open_windows_get):
2864         * UIProcess/API/efl/ewk_settings.h:
2865         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2866         (TEST_F):
2867
2868 2012-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2869
2870         Unreviewed, rolling out r134691, r134703, r134715, r134716,
2871         and r134733.
2872         http://trac.webkit.org/changeset/134691
2873         http://trac.webkit.org/changeset/134703
2874         http://trac.webkit.org/changeset/134715
2875         http://trac.webkit.org/changeset/134716
2876         http://trac.webkit.org/changeset/134733
2877         https://bugs.webkit.org/show_bug.cgi?id=102342
2878
2879         "Broke the Apple Windows Debug and GTK builds." (Requested by
2880         dydx on #webkit).
2881
2882         * win/WebKit2.def:
2883         * win/WebKit2CFLite.def:
2884
2885 2012-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2886
2887         Unreviewed, rolling out r134741.
2888         http://trac.webkit.org/changeset/134741
2889         https://bugs.webkit.org/show_bug.cgi?id=102337
2890
2891         "Change is incorrect." (Requested by dydx on #webkit).
2892
2893         * win/WebKit2.def:
2894         * win/WebKit2CFLite.def:
2895
2896 2012-11-14  Daniel Bates  <dbates@webkit.org>
2897
2898         Attempt to fix the Apple Windows Debug and GTK builds after <http://trac.webkit.org/changeset/134691>
2899         (https://bugs.webkit.org/show_bug.cgi?id=96818)
2900
2901         Export symbols of the form:
2902         ?deserializeBuffer@Internals@WebCore[...]
2903         ?serializeObject@Internals@WebCore[...]
2904
2905         * win/WebKit2.def:
2906         * win/WebKit2CFLite.def:
2907
2908 2012-11-14  Alec Flett  <alecflett@chromium.org>
2909
2910         Fix windows build exports (again)
2911         https://bugs.webkit.org/show_bug.cgi?id=102324
2912
2913         Unreviewed windows-only build fix.
2914
2915         Add one more export that was causing unit tests to fail to link.
2916
2917         * win/WebKit2.def:
2918         * win/WebKit2CFLite.def:
2919
2920 2012-11-14  Brent Fulgham  <bfulgham@webkit.org>
2921
2922         [WinCairo] Build correction after r134703.
2923
2924         * win/WebKit2CFLite.def: Add exports to CFLite version of
2925         Windows build to match Alec's last update.
2926
2927 2012-11-14  Alec Flett  <alecflett@chromium.org>
2928
2929         Fix Windows exports for TestWebKit
2930         https://bugs.webkit.org/show_bug.cgi?id=102302
2931
2932         Unreviewed, fixing Safari Win build.
2933
2934         Add missing exports.
2935
2936         * win/WebKit2.def:
2937
2938 2012-11-14  Huang Dongsung  <luxtella@company100.net>
2939
2940         Coordinated Graphics: Remove unused members and methods in CoordinatedGraphicsLayer.
2941         https://bugs.webkit.org/show_bug.cgi?id=102172
2942
2943         Reviewed by Noam Rosenthal.
2944
2945         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2946         (CoordinatedGraphicsLayer):
2947
2948 2012-11-14  Brady Eidson  <beidson@apple.com>
2949
2950         Move loading responsibility out of WebResourceLoadScheduler into a new WebResourceLoader
2951         https://bugs.webkit.org/show_bug.cgi?id=102259
2952
2953         Reviewed by Alexey Proskuryakov.
2954
2955         Add a new WebResourceLoader message class which allows NetworkResourceLoader to message
2956         WebResourceLoaders directly.
2957
2958         Consolidate the NetworkProcessConnection and WebResourceLoadScheduler messaging responsibilities
2959         directly into WebResourceLoader.
2960
2961         Build-system infrastructure stuff:
2962         * DerivedSources.make:
2963         * Platform/CoreIPC/MessageID.h:
2964         * WebKit2.xcodeproj/project.pbxproj:
2965
2966         Message directly to WebResourceLoader instead of NetworkProcessConnection:
2967         * NetworkProcess/NetworkResourceLoader.cpp:
2968         (WebKit::NetworkResourceLoader::connection):
2969         (WebKit::NetworkResourceLoader::didReceiveResponse):
2970         (WebKit::NetworkResourceLoader::didReceiveData):
2971         (WebKit::NetworkResourceLoader::didFinishLoading):
2972         (WebKit::NetworkResourceLoader::didFail):
2973         (WebKit::NetworkResourceLoader::willSendRequest):
2974         * NetworkProcess/NetworkResourceLoader.h:
2975         (WebKit::NetworkResourceLoader::destinationID):
2976
2977         For now handle the only relevant message class which is the WebResourceLoader class:
2978         * WebProcess/Network/NetworkProcessConnection.cpp:
2979         (WebKit::NetworkProcessConnection::didReceiveMessage):
2980         * WebProcess/Network/NetworkProcessConnection.h:
2981         * WebProcess/Network/NetworkProcessConnection.messages.in:
2982
2983         Allow access to WebResourceLoaders by identifier:
2984         * WebProcess/Network/WebResourceLoadScheduler.cpp:
2985         * WebProcess/Network/WebResourceLoadScheduler.h:
2986         (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier):
2987
2988         Directly handle resource loading messages instead of having WebResourceLoadScheduler do it:
2989         * WebProcess/Network/WebResourceLoader.cpp:
2990         (WebKit::WebResourceLoader::willSendRequest):
2991         (WebKit::WebResourceLoader::didReceiveResponse):
2992         (WebKit::WebResourceLoader::didReceiveData):
2993         (WebKit::WebResourceLoader::didFinishResourceLoad):
2994         (WebKit::WebResourceLoader::didFailResourceLoad):
2995         (WebKit::WebResourceLoader::didReceiveResource):
2996         * WebProcess/Network/WebResourceLoader.h:
2997         * WebProcess/Network/WebResourceLoader.messages.in:
2998
2999 2012-11-14  Andy Estes  <aestes@apple.com>
3000
3001         Fix the Lion build after r134681.
3002
3003         * WebProcess/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
3004
3005 2012-11-08  Andy Estes  <aestes@apple.com>
3006
3007         [WebKit2] Need API in UIProcess to enable loading of custom protocols
3008         https://bugs.webkit.org/show_bug.cgi?id=101674
3009
3010         Reviewed by Brady Eidson.
3011
3012         Enable clients of WebKit2 to implement NSURLProtocol subclasses to
3013         control the loading of resources with schemes that WebKit2 cannot
3014         handle natively. Since loading happens in a different process, we
3015         accomplish this by registering a global NSURLProtocol in the web
3016         process and proxying NSURLProtocol and NSURLProtocolClient calls to
3017         the client's NSURLProtocol in the UI process.
3018
3019         * DerivedSources.make: Addded new .messages.in files.
3020         * Platform/CoreIPC/MessageID.h:
3021         * Shared/WebProcessCreationParameters.cpp: Added the list of supported schemes.
3022         (WebKit::WebProcessCreationParameters::encode):
3023         (WebKit::WebProcessCreationParameters::decode):
3024         * Shared/WebProcessCreationParameters.h:
3025         * UIProcess/API/mac/WKBrowsingContextController.h:
3026         * UIProcess/API/mac/WKBrowsingContextController.mm:
3027         (+[WKBrowsingContextController registerSchemeForCustomProtocol:]):
3028         Added a class method where a client can register a scheme that it supports.
3029         (+[WKBrowsingContextController unregisterSchemeForCustomProtocol:]):
3030         Added a class method where a client can unregister a scheme that it no longer supports.
3031         (+[WKBrowsingContextController customSchemes]):
3032         * UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
3033         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h: Added.
3034         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.messages.in: Added.
3035         * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm: Added.
3036
3037         Implemented an NSURLConnectionDelegate that proxies messages to the
3038         equivalent NSURLProtocolClient in the web process:
3039         (-[WKCustomProtocolLoader initWithCustomProtocolManagerProxy:customProtocolID:request:connection:]):
3040         (-[WKCustomProtocolLoader dealloc]):
3041         (-[WKCustomProtocolLoader connection:didFailWithError:]):
3042         (-[WKCustomProtocolLoader connection:willCacheResponse:]):
3043         (-[WKCustomProtocolLoader connection:didReceiveResponse:]):
3044         (-[WKCustomProtocolLoader connection:didReceiveData:]):
3045         (-[WKCustomProtocolLoader connection:willSendRequest:redirectResponse:]):
3046         (-[WKCustomProtocolLoader connectionDidFinishLoading:]):
3047
3048         Implemented a proxy that recieves -startLoading and -stopLoading
3049         messages from the NSURLProtocol in the web process and starts an
3050         NSURLConnection in the UI process, which will instantiate the client's NSURLProtocol:
3051         (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
3052         (WebKit::CustomProtocolManagerProxy::didReceiveMessage):
3053         (WebKit::CustomProtocolManagerProxy::startLoading):
3054         (WebKit::CustomProtocolManagerProxy::stopLoading):
3055
3056         * UIProcess/WebContext.h: Declared strings that store names of
3057         NSNotifications used for scheme registration in the UI process.
3058         * UIProcess/WebProcessProxy.cpp:
3059         (WebKit::WebProcessProxy::WebProcessProxy):
3060         (WebKit::WebProcessProxy::didReceiveMessage): Forwarded messages to the
3061         CustomProtocolManagerProxy.
3062         * UIProcess/WebProcessProxy.h:
3063         * UIProcess/mac/WebContextMac.mm:
3064         (WebKit::WebContext::platformInitializeWebProcess): Added the currently
3065         registered schemes to the WebProcessCreationParameters and register
3066         NSNotification observers for new scheme registration that forwards to
3067         the context's web processes.
3068         * WebKit2.xcodeproj/project.pbxproj:
3069         * WebKit2Prefix.h: Enabled the CUSTOM_PROTOCOLS macro for the Mac.
3070         * WebProcess/Network/CustomProtocols/CustomProtocolManager.h: Added.
3071         * WebProcess/Network/CustomProtocols/CustomProtocolManager.messages.in: Added.
3072         * WebProcess/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm: Added.
3073         (generateCustomProtocolID): Generate a per-WebProcess unique ID.
3074
3075         Implemented a global NSURLProtocol that claims to support all schemes
3076         registered in the UI process. When NSURLConnection calls -startLoading
3077         and -stopLoading, we forward these messages to the client's NSURLProtocol
3078         in the UI process:
3079         (+[WKCustomProtocol canInitWithRequest:]):
3080         (+[WKCustomProtocol canonicalRequestForRequest:]):
3081         (+[WKCustomProtocol requestIsCacheEquivalent:toRequest:]):
3082         (-[WKCustomProtocol initWithRequest:cachedResponse:client:]):
3083         (-[WKCustomProtocol startLoading]):
3084         (-[WKCustomProtocol stopLoading]):
3085
3086         Implemented a manager that receives NSURLConnectionDelegate messages
3087         forwarded from the UI process and passes them to the global NSURLProtocol's NSURLProtocolClient:
3088         (WebKit::CustomProtocolManager::shared):
3089         (WebKit::CustomProtocolManager::registerCustomProtocolClass):
3090         (WebKit::CustomProtocolManager::addCustomProtocol):
3091         (WebKit::CustomProtocolManager::removeCustomProtocol):
3092         (WebKit::CustomProtocolManager::registerScheme):
3093         (WebKit::CustomProtocolManager::unregisterScheme):
3094         (WebKit::CustomProtocolManager::supportsScheme):
3095         (WebKit::CustomProtocolManager::didReceiveMessage):
3096         (WebKit::CustomProtocolManager::didFailWithError):
3097         (WebKit::CustomProtocolManager::didLoadData):
3098         (WebKit::CustomProtocolManager::didReceiveResponse):
3099         (WebKit::CustomProtocolManager::didFinishLoading):
3100         (WebKit::CustomProtocolManager::protocolForID):
3101
3102         * WebProcess/WebProcess.cpp:
3103         (WebKit::WebProcess::didReceiveMessage): Forwarded messages to the
3104         shared CustomProtocolManager.
3105         (WebKit::WebProcess::registerSchemeForCustomProtocol): Register a
3106         scheme received from the UI process.
3107         (WebKit::WebProcess::unregisterSchemeForCustomProtocol): Unregister a
3108         scheme received from the UI process.
3109         * WebProcess/WebProcess.h:
3110         * WebProcess/WebProcess.messages.in: Declared messages for passing
3111         supported schemes from the UI process the web process.
3112         * WebProcess/mac/WebProcessMac.mm:
3113         (WebKit::WebProcess::platformInitializeWebProcess): Register the
3114         schemes contained in the WebProcessCreationParameters.
3115
3116 2012-11-14  Helder Correia  <helder.correia@nokia.com>
3117
3118         [TexMap][Cairo] Accelerated compositing debug visuals
3119         https://bugs.webkit.org/show_bug.cgi?id=101883
3120
3121         Reviewed by Kenneth Rohde Christiansen.
3122
3123         No new tests, just introducing a debug feature.
3124
3125         Add a Cairo implementation to complement the patch from bug 90116
3126         (http://trac.webkit.org/changeset/122275).
3127
3128         For this feature to be enabled, the environment variable
3129         WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS must be set to 1. Once enabled,
3130         both repaint counters and tile borders will be painted.
3131
3132         A Cairo-specific drawRepaintCounter() implementation was added to
3133         TextureMapperGL. A cairo_surface_t is used as scratch buffer to paint
3134         the counters. It is then uploaded to a BitmapTexture acquired
3135         from the pool and finally draw by TextureMapper. The actual compositing
3136         happens inside LayerBackingStore::paintToTextureMapper(). Each
3137         LayerBackingStoreTile has a repaint counter which gets incremented in
3138         LayerBackingStore::updateTile().
3139
3140         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
3141         (WebKit::shouldShowTileDebugVisuals):
3142
3143 2012-11-14  No'am Rosenthal  <noam.rosenthal@nokia.com>
3144
3145         Coordinated Graphics: Rename m_CoordinatedGraphicsLayerClient to m_coordinator
3146         https://bugs.webkit.org/show_bug.cgi?id=102133
3147
3148         Renamed m_CoordinatedGraphicsLayerClient to m_coordinator.
3149         Also, there is no need for calling setCoordinator every time the tree changes,
3150         since we can call it once when the layer is created, now that LayerTreeCoordinator
3151         is the GraphicsLayerFactory.
3152
3153         Reviewed by Kenneth Rohde Christiansen
3154
3155         No change in functionality.
3156
3157         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3158         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
3159         (WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
3160         (WebCore::CoordinatedGraphicsLayer::setChildren):
3161         (WebCore::CoordinatedGraphicsLayer::addChild):
3162         (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
3163         (WebCore::CoordinatedGraphicsLayer::addChildAbove):
3164         (WebCore::CoordinatedGraphicsLayer::addChildBelow):
3165         (WebCore::CoordinatedGraphicsLayer::replaceChild):
3166         (WebCore::CoordinatedGraphicsLayer::setContentsToImage):
3167         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
3168         (WebCore::CoordinatedGraphicsLayer::setReplicatedByLayer):
3169         (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
3170         (WebCore::CoordinatedGraphicsLayer::syncChildren):
3171         (WebCore::CoordinatedGraphicsLayer::syncFilters):
3172         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
3173         (WebCore::CoordinatedGraphicsLayer::syncAnimations):
3174         (WebCore::CoordinatedGraphicsLayer::syncCanvas):
3175         (WebCore::CoordinatedGraphicsLayer::ensureImageBackingStore):
3176         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
3177         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
3178         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
3179         (WebCore::CoordinatedGraphicsLayer::createTile):
3180         (WebCore::CoordinatedGraphicsLayer::updateTile):
3181         (WebCore::CoordinatedGraphicsLayer::removeTile):
3182         (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
3183         (WebCore::CoordinatedGraphicsLayer::setCoordinator):
3184         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
3185         (CoordinatedGraphicsLayer):
3186         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3187         (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
3188         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
3189         (WebKit::LayerTreeCoordinator::paintContents):
3190
3191 2012-11-14  Anders Carlsson  <andersca@apple.com>
3192
3193         More steps towards actually hosting layers in the UI process
3194         https://bugs.webkit.org/show_bug.cgi?id=102275
3195
3196         Reviewed by Andreas Kling.
3197
3198         * Shared/mac/RemoteLayerTreeTransaction.h:
3199         (WebKit::RemoteLayerTreeTransaction::rootLayerID):
3200         Add a getter for the root layer ID.
3201
3202         * UIProcess/mac/RemoteLayerTreeHost.h:
3203         (RemoteLayerTreeHost):
3204         Add root layer member variable. Make the RemoteLayerTreeHost class a GraphicsLayerClient.
3205
3206         * UIProcess/mac/RemoteLayerTreeHost.mm:
3207         (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
3208         Initialize the root layer to null.
3209
3210         (WebKit::RemoteLayerTreeHost::notifyAnimationStarted):
3211         (WebKit::RemoteLayerTreeHost::notifyFlushRequired):
3212         (WebKit::RemoteLayerTreeHost::paintContents):
3213         Add empty stubs.
3214
3215         (WebKit::RemoteLayerTreeHost::commit):
3216         Try to get the root layer.
3217
3218         (WebKit::RemoteLayerTreeHost::getOrCreateLayer):
3219         Look up the layer with the given ID in the m_layers hash table and create it if it doesn't exist.
3220
3221 2012-11-14  Brady Eidson  <beidson@apple.com>
3222
3223         Fix the Production build after r134640 broke it.
3224
3225         * WebProcess/Network/WebResourceLoader.h:
3226         (WebKit::WebResourceLoader::resourceLoadIdentifier): Use the un-used.
3227
3228 2012-11-14  Tim Horton  <timothy_horton@apple.com>
3229
3230         PDFPlugin should make use of PDFKit's fluid zooming
3231         https://bugs.webkit.org/show_bug.cgi?id=101962
3232         <rdar://problem/12555229>
3233
3234         Reviewed by Anders Carlsson.
3235
3236         Expose the notion of a frame that handles page scale gestures via WebFrame and to the bundle via WKBundleFrame.
3237         The only frames that will purport to handle page scale gestures are those which contain PluginDocuments
3238         backed by PDFPlugin, for now. Also, allow PDFKit to do its own fluid zooming animation.
3239
3240         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
3241         (WKBundleFrameHandlesPageScaleGesture): Provide WKBundleFrameHandlesPageScaleGesture to
3242         inform the injected bundle whether or not the frame handles scaling itself.
3243         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: Add WKBundleFrameHandlesPageScaleGesture.
3244         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3245         (WebKit::PDFPlugin::geometryDidChange): Allow PDFKit to use its fluid zooming instead of changing
3246         the scale factor immediately.
3247         * WebProcess/WebPage/WebFrame.cpp:
3248         (WebKit::WebFrame::handlesPageScaleGesture): For now, the only frames that handle page scale
3249         gestures themselves are plugins that purport to handle page scale changes themselves (i.e. only PDFPlugin).
3250         * WebProcess/WebPage/WebFrame.h:
3251         (WebFrame):
3252
3253 2012-11-14  Tim Horton  <timothy_horton@apple.com>
3254
3255         PDFPlugin should support downloading PDFs
3256         https://bugs.webkit.org/show_bug.cgi?id=102152
3257         <rdar://problem/12555313>
3258
3259         Reviewed by Alexey Proskuryakov.
3260
3261         Clicking on the "Download PDF" HUD button should download the current
3262         PDF to the Downloads folder.
3263
3264         * UIProcess/WebPageProxy.cpp:
3265         (WebKit::WebPageProxy::savePDFToFileInDownloadsFolder): Added. Save the
3266         PDF data to disk, in the Downloads folder. This will only save files with
3267         the .pdf extension, and of MIME type "application/pdf".
3268         * UIProcess/WebPageProxy.h:
3269         (WebPageProxy): Add savePDFToFileInDownloadsFolder.
3270         * UIProcess/WebPageProxy.messages.in: Add savePDFToFileInDownloadsFolder.
3271         * WebProcess/Plugins/PDF/PDFPlugin.h:
3272         (PDFPlugin): Add saveToPDF().
3273         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3274         (-[WKPDFLayerControllerDelegate saveToPDF]): Forward saveToPDF delegate callback to PDFPlugin.
3275         (WebKit::PDFPlugin::saveToPDF): Hand WebPageProxy the raw data for the
3276         current PDF, which it will save to the Downloads folder. We receive
3277         the suggested filename during loading.
3278         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
3279         (WebKit::SimplePDFPlugin::suggestedFilename): Expose a getter for suggestedFilename.
3280         * WebProcess/Plugins/PDF/SimplePDFPlugin.mm:
3281         (WebKit::SimplePDFPlugin::pluginInfo): Add a missing space after an operator.
3282
3283 2012-11-14  Brady Eidson  <beidson@apple.com>
3284
3285         Part of "Move loading responsibility out of WebResourceLoadScheduler into a new WebResourceLoader"
3286         https://bugs.webkit.org/show_bug.cgi?id=102259
3287
3288         Reviewed by Alexey Proskuryakov.
3289
3290         WebResourceLoadScheduler has taken on too many responsibilities that shouldn't belong to it.
3291
3292         We should create a WebResourceLoader that will eventually act as an intermediary between
3293         WebCore::ResourceLoader and NetworkResourceLoader.
3294
3295         This patch is prep-work: It adds a new skeleton class to the WebProcess.
3296
3297         * WebKit2.xcodeproj/project.pbxproj:
3298
3299         Add the new WebResourceLoader class which is a very thin skeleton for now:
3300         * WebProcess/Network/WebResourceLoader.cpp: Added.
3301         (WebKit::WebResourceLoader::create):
3302         (WebKit::WebResourceLoader::WebResourceLoader):
3303         (WebKit::WebResourceLoader::~WebResourceLoader):
3304         * WebProcess/Network/WebResourceLoader.h: Added.
3305         (WebKit::WebResourceLoader::coreLoader):
3306
3307         Adapt WebResourceLoadScheduler to use this new class where appropriate:
3308         * WebProcess/Network/WebResourceLoadScheduler.cpp:
3309         (WebKit::WebResourceLoadScheduler::scheduleLoad):
3310         (WebKit::WebResourceLoadScheduler::addMainResourceLoad):
3311         (WebKit::WebResourceLoadScheduler::remove):
3312         (WebKit::WebResourceLoadScheduler::willSendRequest):
3313         (WebKit::WebResourceLoadScheduler::didReceiveResponse):
3314         (WebKit::WebResourceLoadScheduler::didReceiveData):
3315         (WebKit::WebResourceLoadScheduler::didFinishResourceLoad):
3316         (WebKit::WebResourceLoadScheduler::didReceiveResource):
3317         (WebKit::WebResourceLoadScheduler::didFailResourceLoad):
3318         * WebProcess/Network/WebResourceLoadScheduler.h:
3319
3320
3321 2012-11-14  Brady Eidson  <beidson@apple.com>
3322
3323         Deliver data from NetworkProcess to resources progressively.
3324         https://bugs.webkit.org/show_bug.cgi?id=102171
3325
3326         Reviewed by Alexey Proskuryakov.
3327
3328         Instead of buffering up the data for an entire resource and delivering it in one chunk, we need
3329         to deliver data progressively.
3330
3331         This allows progressive parsing of textual resources and progressive rendering of images,
3332         as well as allows endless multipart resources (e.g., multipart jpegs) to work at all.
3333
3334         * NetworkProcess/NetworkResourceLoader.cpp:
3335         (WebKit::NetworkResourceLoader::didReceiveData): Don't buffer data locally (for now) but rather
3336           pass it straight through to the WebProcess.
3337         (WebKit::NetworkResourceLoader::didFinishLoading): Only notify didFinishLoading instead of
3338           delivering a chunk of buffered data.
3339         (WebKit::NetworkResourceLoader::didFail):
3340         * NetworkProcess/NetworkResourceLoader.h:
3341
3342         * WebProcess/Network/NetworkProcessConnection.cpp:
3343         (WebKit::NetworkProcessConnection::didReceiveData): Pass through towards ResourceLoader.
3344         (WebKit::NetworkProcessConnection::didFinishResourceLoad):
3345         (WebKit::NetworkProcessConnection::didFailResourceLoad):
3346         * WebProcess/Network/NetworkProcessConnection.h:
3347         * WebProcess/Network/NetworkProcessConnection.messages.in:
3348
3349         * WebProcess/Network/WebResourceLoadScheduler.cpp:
3350         (WebKit::WebResourceLoadScheduler::didReceiveData): Hand this chunk of data to the ResourceLoader directly.
3351         (WebKit::WebResourceLoadScheduler::didFinishResourceLoad):
3352         * WebProcess/Network/WebResourceLoadScheduler.h:
3353
3354 2012-11-14  Anton Obzhirov  <a.obzhirov@samsung.com>
3355
3356         Add platform implementation of remote web inspector server for GTK port.
3357         https://bugs.webkit.org/show_bug.cgi?id=88094 
3358
3359         Reviewed by Gustavo Noronha Silva.
3360
3361         The platform implementation is based on GSocket API (WebInspectorServerGtk.cpp and WebSocketServerGtk.cpp).
3362         The server listens on port 2999 by default. IP address of the server can be set
3363         in WEBKIT_INSPECTOR_SERVER (for example export WEBKIT_INSPECTOR_SERVER="192.168.124.130:2999").
3364         The server is started during WebKit context initialization.
3365         Once a page is loaded insector server can be accessed via other WebKit based browser.
3366         New WebKit API gtk tests have beed added.
3367         inspectorPageIndex.html has been moved to new location to share the file between GTK and Qt ports.
3368
3369         Test: test-page-list, test-remote-debugging-message, test-open-debugging-session
3370
3371         * GNUmakefile.am:
3372         * GNUmakefile.list.am:
3373         * Platform/Logging.cpp:
3374         (WebKit):
3375         (WebKit::getChannelFromName):
3376         (WebKit::initializeLogChannelsIfNecessary):
3377         * Platform/Logging.h:
3378         (WebKit):
3379         * UIProcess/API/gtk/tests/GNUmakefile.am:
3380         * UIProcess/API/gtk/tests/InspectorTestServer.cpp: Added.
3381         (loadChangedCallback):
3382         (main):
3383         * UIProcess/API/gtk/tests/TestInspectorServer.cpp: Added.
3384         (stopTestServer):
3385         (sigAbortHandler):
3386         (testServerMonitorThreadFunc):
3387         (startTestServerMonitor):
3388         (startTestServer):
3389         (testInspectorServerPageList):
3390         (testRemoteDebuggingMessage):
3391         (openRemoteDebuggingSession):
3392         (beforeAll):
3393         (afterAll):
3394         * UIProcess/InspectorServer/WebInspectorServer.h:
3395         (WebInspectorServer):
3396         * UIProcess/InspectorServer/WebSocketServer.h:
3397         (WebSocketServer):
3398         * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
3399         (WebKit::WebSocketServerConnection::WebSocketServerConnection):
3400         (WebKit::WebSocketServerConnection::shutdownNow):
3401         (WebKit::WebSocketServerConnection::shutdownAfterSendOrNow):
3402         (WebKit::WebSocketServerConnection::didCloseSocketStream):
3403         (WebKit::WebSocketServerConnection::didReceiveSocketStreamData):
3404         (WebKit):
3405         (WebKit::WebSocketServerConnection::didUpdateBufferedAmount):
3406         * UIProcess/InspectorServer/WebSocketServerConnection.h:
3407         (WebSocketServerConnection):
3408         * UIProcess/InspectorServer/front-end: Added.
3409         * UIProcess/InspectorServer/front-end/inspectorPageIndex.html: Added.
3410         * UIProcess/InspectorServer/gtk: Added.
3411         * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp: Added.
3412         (WebKit):
3413         (WebKit::WebInspectorServer::platformResourceForPath):
3414         (WebKit::WebInspectorServer::buildPageList):
3415         * UIProcess/InspectorServer/gtk/WebSocketServerGtk.cpp: Added.
3416         (WebKit):
3417         (WebKit::connectionCallback):
3418         (WebKit::WebSocketServer::platformInitialize):
3419         (WebKit::WebSocketServer::platformListen):
3420         (WebKit::WebSocketServer::platformClose):
3421         * UIProcess/gtk/WebContextGtk.cpp:
3422         (WebKit::initInspectorServer):
3423         (WebKit):
3424         (WebKit::WebContext::platformInitializeWebProcess):
3425         * WebKit2.qrc:
3426         * config.h:
3427         * qt/Resources/inspectorPageIndex.html: Removed.
3428
3429 2012-11-14  Christophe Dumez  <christophe.dumez@intel.com>
3430
3431         [EFL][WK2][AC] Print out warning if we fallback back to software mode
3432         https://bugs.webkit.org/show_bug.cgi?id=102188
3433
3434         Reviewed by Kenneth Rohde Christiansen.
3435
3436         Print out a warning if accelerated compositing is enabled but the
3437         implementation is falling back to software mode for some reason.
3438
3439         * UIProcess/API/efl/EwkViewImpl.cpp:
3440         (EwkViewImpl::createGLSurface):
3441
3442 2012-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>
3443
3444         Unreviewed, rolling out r134531.
3445         http://trac.webkit.org/changeset/134531
3446         https://bugs.webkit.org/show_bug.cgi?id=102193
3447
3448         Makes >70 tests crash on EFL and Qt bots. (Requested by drott
3449         on #webkit).
3450
3451         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3452         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
3453         (WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
3454         (WebCore::CoordinatedGraphicsLayer::setChildren):
3455         (WebCore::CoordinatedGraphicsLayer::addChild):
3456         (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
3457         (WebCore::CoordinatedGraphicsLayer::addChildAbove):
3458         (WebCore::CoordinatedGraphicsLayer::addChildBelow):
3459         (WebCore::CoordinatedGraphicsLayer::replaceChild):
3460         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
3461         (WebCore::CoordinatedGraphicsLayer::setReplicatedByLayer):
3462         (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
3463         (WebCore::CoordinatedGraphicsLayer::syncChildren):
3464         (WebCore::CoordinatedGraphicsLayer::syncFilters):
3465         (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
3466         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
3467         (WebCore::CoordinatedGraphicsLayer::syncAnimations):
3468         (WebCore::CoordinatedGraphicsLayer::syncCanvas):
3469         (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
3470         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
3471         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
3472         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
3473         (WebCore::CoordinatedGraphicsLayer::createTile):
3474         (WebCore::CoordinatedGraphicsLayer::updateTile):
3475         (WebCore::CoordinatedGraphicsLayer::removeTile):
3476         (WebCore::CoordinatedGraphicsLayer::setCoordinatedGraphicsLayerClient):