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