[Qt] Doc: Fixing Qt WebKit reference documentation.
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2012-12-13  Jerome Pasion  <jerome.pasion@digia.com>
2
3         [Qt] Doc: Fixing Qt WebKit reference documentation.
4
5         Reviewed by Simon Hausmann.
6
7         Fixes:
8         -added \module for C++ classes and \qmlmodule for QML types
9         -added links to the Qt WebKit Examples pages
10         -fixed the qhp settings for Qt Creator
11
12         Task-number: QTBUG-28583
13         Task-number: QTBUG-28418
14         Task-number: QTBUG-27646
15
16         * UIProcess/API/qt/qquickwebview.cpp:
17
18 2012-12-13  Jussi Kukkonen  <jussi.kukkonen@intel.com>
19
20         [EFL][GTK] Don't call deprecated g_type_init when glib => 2.35
21         https://bugs.webkit.org/show_bug.cgi?id=103209
22
23         Reviewed by Kenneth Rohde Christiansen.
24
25         g_type_init() is deprecated from 2.35.0 onwards. Don't call it
26         in that case to avoid warnings and/or build failure.
27
28         Also, remove a call to g_type_init() from WebProcessMainGtk():
29         It is not needed if gtk_init() is called.
30
31         * UIProcess/API/efl/ewk_main.cpp:
32         (ewk_init):
33         * WebProcess/efl/WebProcessMainEfl.cpp:
34         (WebKit::WebProcessMainEfl):
35         * WebProcess/gtk/WebProcessMainGtk.cpp:
36         (WebKit::WebProcessMainGtk):
37
38 2012-12-13  Joaquim Rocha  <jrocha@igalia.com>
39
40         REGRESSION (r137432): The /webkit2/WebKitCookieManager/accept-policy unit test is failing
41         https://bugs.webkit.org/show_bug.cgi?id=104790
42
43         Reviewed by Carlos Garcia Campos.
44
45         The cookies accept policy and the cookies persistent storage type
46         were not being correctly assigned.
47
48         * UIProcess/WebContext.cpp: Set the default value of the cookie
49         accept policy.
50         (WebKit::WebContext::WebContext):
51         * UIProcess/gtk/WebContextGtk.cpp: Fix setting the cookies persistent
52         storage type (it was mistakenly assigning the policy instead) and
53         set the accept policy which was missing.
54         (WebKit::WebContext::platformInitializeWebProcess):
55
56 2012-12-13  Jon Lee  <jonlee@apple.com>
57
58         plugin snapshotting accepts bad snapshot after 5 seconds
59         https://bugs.webkit.org/show_bug.cgi?id=104886
60         <rdar://problem/12838753>
61
62         Reviewed by Maciej Stachowiak.
63
64         * WebProcess/Plugins/PluginView.cpp: Increase to 60 tries, equating to a little over 60 seconds total.
65
66 2012-12-12  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
67
68         NetworkInfoController needs to support destructor
69         https://bugs.webkit.org/show_bug.cgi?id=104642
70
71         Reviewed by Kentaro Hara.
72
73         Though NetworkInfoController can be referenced by each port in order to update network status change,
74         there is no virtual interface to destroy it. Beside each port client also needs to be destroyed when
75         controller is destroyed.
76
77         * UIProcess/efl/NetworkInfoProvider.cpp:
78         (NetworkInfoProvider::networkInfoControllerDestroyed):
79         * UIProcess/efl/NetworkInfoProvider.h:
80         (NetworkInfoProvider):
81         * WebProcess/WebCoreSupport/WebNetworkInfoClient.cpp:
82         (WebKit::WebNetworkInfoClient::networkInfoControllerDestroyed):
83         (WebKit):
84         * WebProcess/WebCoreSupport/WebNetworkInfoClient.h:
85         (WebNetworkInfoClient):
86
87 2012-12-12  Andy Estes  <aestes@apple.com>
88
89         Rename currentMousePosition() to lastKnownMousePosition() and mark it as OVERRIDE.
90
91         * WebProcess/Plugins/PDF/PDFPlugin.h:
92
93 2012-12-12  Seokju Kwon  <seokju.kwon@gmail.com>
94
95         [EFL] Refactor duplicate code into EflInspectorUtilities
96         https://bugs.webkit.org/show_bug.cgi?id=104329
97
98         Reviewed by Kenneth Rohde Christiansen.
99
100         Remove duplicated work to get the resource path for inspector.
101         And use WebCore::inspectorResourcePath().
102
103         * UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
104         (WebKit::WebInspectorServer::platformResourceForPath):
105         * UIProcess/efl/WebInspectorProxyEfl.cpp:
106         (WebKit::WebInspectorProxy::inspectorBaseURL):
107
108 2012-12-12  Mark Lam  <mark.lam@apple.com>
109
110         Encapsulate externally used webdatabase APIs in DatabaseManager.
111         https://bugs.webkit.org/show_bug.cgi?id=104741.
112
113         Reviewed by Sam Weinig.
114
115         Use DatabaseManager instead of accessing DatabaseTracker, AbstractDatabase,
116         and DatabaseContext directly. This is to prepare for upcoming webkit2
117         refactoring.
118
119         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
120         (WebKit::WebChromeClient::exceededDatabaseQuota):
121         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
122         (WebKit::WebDatabaseManager::initialize):
123         (WebKit::WebDatabaseManager::WebDatabaseManager):
124         (WebKit::WebDatabaseManager::getDatabasesByOrigin):
125         (WebKit::WebDatabaseManager::getDatabaseOrigins):
126         (WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin):
127         (WebKit::WebDatabaseManager::deleteDatabasesForOrigin):
128         (WebKit::WebDatabaseManager::deleteAllDatabases):
129         (WebKit::WebDatabaseManager::setQuotaForOrigin):
130         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
131         (WebDatabaseManager):
132         * WebProcess/WebPage/WebPage.cpp:
133         (WebKit::WebPage::updatePreferences):
134
135 2012-12-12  Alexey Proskuryakov  <ap@apple.com>
136
137         <rdar://problem/12862512> Crashes in NetworkResourceLoadScheduler::receivedRedirect
138         https://bugs.webkit.org/show_bug.cgi?id=104844
139
140         Reviewed by Sam Weinig.
141
142         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
143         (WebKit::NetworkResourceLoadScheduler::receivedRedirect): The load may be already
144         canceled.
145
146         * WebProcess/Network/WebResourceLoader.cpp:
147         (WebKit::WebResourceLoader::didReceiveResponse): Expanded logging a little.
148
149 2012-12-12  Andras Becsi  <andras.becsi@digia.com>
150
151         [Qt][WK2] Fix the build on Mac
152
153         Unreviewed build fix.
154
155         Add missing virtual destructor with empty
156         definition to fix missing vtable error
157         in test util's LoadStartedCatcher.
158
159         * UIProcess/API/qt/tests/util.h:
160         (LoadStartedCatcher::~LoadStartedCatcher):
161
162 2012-12-12  Alexey Proskuryakov  <ap@apple.com>
163
164         Make LOG() work in WebProcess and NetworkProcess
165         https://bugs.webkit.org/show_bug.cgi?id=104718
166
167         Reviewed by Tim Horton.
168
169         * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess):
170         Initialize WebCore and WebKit2 logging.
171
172         * Platform/Logging.cpp: (WebKit::initializeLogChannelsIfNecessary):
173         Added Network and NetworkScheduling. Re-ordered to match declaration order,
174         alphabetical clearly doesn't help here.
175
176         * WebProcess/WebProcess.cpp: (WebKit::WebProcess::WebProcess): Initialize WebKit2
177         logging in addition to WebCore.
178
179         * UIProcess/WebContext.cpp: (WebKit::WebContext::WebContext): Initialize WebKit2
180         logging in addition to WebCore.
181
182 2012-12-12  Simon Pena  <spena@igalia.com>
183
184         [GTK] Add sections documentation to WebKit2 GTK+ API
185         https://bugs.webkit.org/show_bug.cgi?id=104484
186
187         Reviewed by Martin Robinson.
188
189         Many of the sections in the WebKit2 GTK+ API documentation were
190         missing. This commit adds new documentation, in some cases
191         adapting it from WebKitGtk+ and in others writing it from the
192         scratch.
193
194         It also removes the WebKitWebViewBase class from the documentation
195         index, since it is not really relevant.
196
197         * UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
198         * UIProcess/API/gtk/WebKitContextMenu.cpp:
199         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
200         * UIProcess/API/gtk/WebKitCookieManager.cpp:
201         * UIProcess/API/gtk/WebKitDownload.cpp:
202         * UIProcess/API/gtk/WebKitError.cpp:
203         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
204         * UIProcess/API/gtk/WebKitFindController.cpp:
205         * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
206         * UIProcess/API/gtk/WebKitPlugin.cpp:
207         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
208         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
209         * UIProcess/API/gtk/WebKitURIRequest.cpp:
210         * UIProcess/API/gtk/WebKitURIResponse.cpp:
211         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
212         * UIProcess/API/gtk/WebKitVersion.cpp:
213         * UIProcess/API/gtk/WebKitWebContext.cpp:
214         * UIProcess/API/gtk/WebKitWebInspector.cpp:
215         * UIProcess/API/gtk/WebKitWebResource.cpp:
216         (webkit_web_resource_class_init):
217         * UIProcess/API/gtk/WebKitWebView.cpp:
218         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
219
220 2012-12-12  Kondapally Kalyan  <kalyan.kondapally@intel.com>
221
222         [EFL [WebGL] [Wk2] Resizing the canvas breaks WebGL.
223         https://bugs.webkit.org/show_bug.cgi?id=104535.
224
225         Reviewed by Kenneth Rohde Christiansen.
226
227         GraphicsContext3DEfl does not re-create the surface on canvas resize, this
228         conflicted with the logic in coordinated graphics Layer.
229         CoordinatedGraphicsLayer checks for GraphicsSurfaceToken to decide if the surface
230         in UI-Process should be recreated or not. With this
231         patch we also check for size of the platform Layer.
232
233         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
234         (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
235         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
236         (CoordinatedGraphicsLayer):
237
238 2012-12-12  Sheriff Bot  <webkit.review.bot@gmail.com>
239
240         Unreviewed, rolling out r137438.
241         http://trac.webkit.org/changeset/137438
242         https://bugs.webkit.org/show_bug.cgi?id=104798
243
244         assertion reached when removing tile (Requested by tmpsantos
245         on #webkit).
246
247         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
248         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
249         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
250         (WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
251         (WebCore::CoordinatedGraphicsLayer::setContentsScale):
252         (WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
253         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
254         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
255         (WebCore::CoordinatedGraphicsLayer::createTile):
256         (WebCore::CoordinatedGraphicsLayer::updateTile):
257         (WebCore::CoordinatedGraphicsLayer::removeTile):
258         (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
259         (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
260         (WebCore::CoordinatedGraphicsLayer::adjustVisibleRect):
261         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
262         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
263         (CoordinatedGraphicsLayerClient):
264         (CoordinatedGraphicsLayer):
265         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
266         (WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
267         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
268         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
269         (WebKit::CoordinatedLayerTreeHost::layerTreeTileUpdatesAllowed):
270         (WebKit):
271         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
272         (CoordinatedLayerTreeHost):
273
274 2012-12-12  Mario Sanchez Prada  <mario@webkit.org>
275
276         [GTK][WK2] New API to detect display/execution of insecure content
277         https://bugs.webkit.org/show_bug.cgi?id=104578
278
279         Reviewed by Martin Robinson.
280
281         Added new API and documentation for detecting insecure content.
282
283         Implemented needed functions from C API's WKPageLoaderClient
284
285         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
286         (didDisplayInsecureContentForFrame): Implemented.
287         (didRunInsecureContentForFrame): Ditto.
288         (attachLoaderClientToView): Added newly implemented functions.
289
290         Added new 'insecure-content-detected' signal to API.
291
292         * UIProcess/API/gtk/WebKitWebView.cpp:
293         (webkit_web_view_class_init): Installed new signal.
294         (webkitWebViewInsecureContentDetected): Helper function aded to
295         private API to emit the new signal from the page loader client.
296         * UIProcess/API/gtk/WebKitWebView.h:
297         (_WebKitWebViewClass): Added new signal.
298
299         * UIProcess/API/gtk/WebKitWebViewPrivate.h: Added prototype of the
300         new helper function webkitWebViewInsecureContentDetected().
301
302         Added new unit tests.
303
304         * UIProcess/API/gtk/tests/TestSSL.cpp:
305         (testSSL): Updated to the new variable name for the https server.
306         (testInsecureContent): New unit test.
307         (httpsServerCallback): Renamed from serverCallback() and updated
308         to return HTML content linking to external resources in an
309         insecure (plain http) server, to be used by the new test.
310         (httpServerCallback): New callback for a new http server, that
311         will serve a script and an image when requested.
312         (beforeAll): Run the new http server, besides the https one.
313         (afterAll): Delete both the http and the https server.
314
315         Updated documentation with new API.
316
317         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added references
318         to the new WebKitInsecureContentEvent enum type.
319
320 2012-12-12  Huang Dongsung  <luxtella@company100.net>
321
322         Coordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
323         https://bugs.webkit.org/show_bug.cgi?id=103959
324
325         Reviewed by Kenneth Rohde Christiansen.
326
327         Currently, CoordinatedGraphicsLayer has complex code related to TiledBackingStore.
328         It has two problem.
329         1. CoordinatedGraphicsLayer hacks TiledBackingStore to prevent
330         TiledBackingStore from asynchronously sending UpdateTile message to UI
331         Process.
332         2. CreateTile and RemoveTile message can be sent to UI Process at any time.
333
334         This patch makes CoordinatedGraphicsLayer use TiledBackingStore more explicitly.
335         It means only during flushing layer states, CoordinatedGraphicsLayer
336         calls methods of TiledBackingStore, which indirectly call createTile(),
337         updateTile() and removeTile().
338
339         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
340         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
341         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
342         (WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
343         (WebCore::CoordinatedGraphicsLayer::setContentsScale):
344         (WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
345         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreHasPendingTileCreation):
346         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
347         (WebCore::CoordinatedGraphicsLayer::createTile):
348         (WebCore::CoordinatedGraphicsLayer::updateTile):
349         (WebCore::CoordinatedGraphicsLayer::removeTile):
350         (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
351         (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
352         (WebCore::CoordinatedGraphicsLayer::setNeedsVisibleRectAdjustment):
353         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
354         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
355         (CoordinatedGraphicsLayerClient):
356         (CoordinatedGraphicsLayer):
357         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
358         (WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
359         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
360         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
361         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
362         (CoordinatedLayerTreeHost):
363
364 2012-12-12  Joaquim Rocha  <jrocha@igalia.com>
365
366         [GTK] Cookies' storage path and policy are not set when the WebProcess is killed and relaunched
367         https://bugs.webkit.org/show_bug.cgi?id=104370
368
369         Reviewed by Carlos Garcia Campos.
370
371         This issue happens on ports that use Soup and causes problems like not finding the stored cookies
372         nor their policy when the WebProcess is relaunched. As an example of a problem caused by this,
373         a previously logged in user will not be logged in again when the process is relaunched and the
374         policy used is always the same one.
375
376         * Shared/WebProcessCreationParameters.cpp:
377         (WebKit::WebProcessCreationParameters::encode): Encode cookies' persistent storage path,
378         storage type and acceptance policy.
379         (WebKit::WebProcessCreationParameters::decode): Decode cookies' persistent storage path,
380         storage type and acceptance policy.
381         * Shared/WebProcessCreationParameters.h: Create 3 variables to hold the values mentioned above.
382         (WebProcessCreationParameters):
383         * UIProcess/WebCookieManagerProxy.cpp:
384         (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
385         (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): Call WebCookieManagerProxySoup::setCookieAcceptPolicy.
386         * UIProcess/WebCookieManagerProxy.h: Declare new Soup's methods setCookieAcceptPolicy, cookieAcceptPolicy and
387         cookiePersistentStorage as well as the variables m_cookieAcceptPolicy and m_cookiePersistentStorage.
388         (WebCookieManagerProxy):
389         * UIProcess/efl/WebContextEfl.cpp: Assign the parameters' cookiePersistentStoragePath and
390         cookiePersistentStorageType with the respective values.
391         (WebKit::WebContext::platformInitializeWebProcess):
392         * UIProcess/gtk/WebContextGtk.cpp: Assign the parameters' cookiePersistentStoragePath and
393         cookiePersistentStorageType with the respective values.
394         (WebKit::WebContext::platformInitializeWebProcess):
395         * UIProcess/soup/WebCookieManagerProxySoup.cpp:
396         (WebKit::WebCookieManagerProxy::setCookiePersistentStorage): Assign the m_cookiePersistentStorage pair
397         with the method's parameters.
398         (WebKit):
399         (WebKit::WebCookieManagerProxy::getCookiePersistentStorage): Implement this getter.
400         * WebProcess/Cookies/WebCookieManager.h: Declare setCookiePersistentStorage.
401         (WebCookieManager):
402         * WebProcess/soup/WebProcessSoup.cpp:
403         (WebKit::WebProcess::platformInitializeWebProcess): Set the cookies' persistent storage and policy
404         using the WebCookieManager's methods.
405
406 2012-12-11  Jinwoo Song  <jinwoo7.song@samsung.com>
407
408         [EFL][WK2] Duplicated WebPageGroup initialization
409         https://bugs.webkit.org/show_bug.cgi?id=103229
410
411         Reviewed by Kenneth Rohde Christiansen.
412
413         WebPageGroup does not need to be created in creating EwkView when the pageGroupRef is 0
414         because the default WebPageGroup(m_defaultPageGroup) is created in WebContext constructor.
415
416         As a side effect on the duplicated initialization, pageGroupID increases even when the EwkView
417         is created with default context.
418
419         * UIProcess/API/efl/ewk_view.cpp:
420         (createEwkView):
421
422 2012-12-11  Sam Weinig  <sam@webkit.org>
423
424         Add API to set the maximum number of processes allowed in a WKContext
425         https://bugs.webkit.org/show_bug.cgi?id=104769
426
427         Reviewed by Dan Bernstein.
428
429         Switch from using NSUserDefaults to a WKContext API to set the maximum number of processes
430         for a context.
431
432         * UIProcess/API/C/WKContext.cpp:
433         (WKContextSetMaximumNumberOfProcesses):
434         (WKContextGetMaximumNumberOfProcesses):
435         * UIProcess/API/C/WKContext.h:
436         * UIProcess/WebContext.cpp:
437         (WebKit::WebContext::setMaximumNumberOfProcesses):
438         (WebKit):
439         * UIProcess/WebContext.h:
440         (WebContext):
441         (WebKit::WebContext::maximumNumberOfProcesses):
442         * UIProcess/mac/WebContextMac.mm:
443         (WebKit::registerUserDefaultsIfNeeded):
444         (WebKit::WebContext::platformInitialize):
445
446 2012-12-11  Kihong Kwon  <kihong.kwon@samsung.com>
447
448         Vibration API: IDL type doesn't match implementation type
449         https://bugs.webkit.org/show_bug.cgi?id=103899
450
451         Reviewed by Kentaro Hara.
452
453         According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
454         Therefore unsigned long need to be changed to unsigned for the Vibration API.
455         - Change a parameter type of vibrate function from uint64_t to uint_32_t.
456
457         * UIProcess/API/C/WKVibration.h:
458         * UIProcess/API/efl/EwkViewCallbacks.h:
459         * UIProcess/WebVibrationProvider.cpp:
460         (WebKit::WebVibrationProvider::vibrate):
461         * UIProcess/WebVibrationProvider.h:
462         (WebVibrationProvider):
463         * UIProcess/WebVibrationProxy.cpp:
464         (WebKit::WebVibrationProxy::vibrate):
465         * UIProcess/WebVibrationProxy.h:
466         (WebVibrationProxy):
467         * UIProcess/WebVibrationProxy.messages.in:
468         * UIProcess/efl/VibrationClientEfl.cpp:
469         (VibrationClientEfl::vibrateCallback):
470         * UIProcess/efl/VibrationClientEfl.h:
471         (VibrationClientEfl):
472         * WebProcess/WebCoreSupport/WebVibrationClient.cpp:
473         (WebKit::WebVibrationClient::vibrate):
474         * WebProcess/WebCoreSupport/WebVibrationClient.h:
475         (WebVibrationClient):
476
477 2012-12-11  Alexey Proskuryakov  <ap@apple.com>
478
479         <rdar://problem/12857870> [WK2 NetworkProcess] Cannot load HTTPS sites
480         https://bugs.webkit.org/show_bug.cgi?id=104732
481
482         Reviewed by Anders Carlsson.
483
484         * Shared/BlockingResponseMap.h: (BlockingBoolResponseMap::waitForResponse):
485         Fixed to make sense.
486
487 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
488
489         Add window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
490         https://bugs.webkit.org/show_bug.cgi?id=104714
491
492         Reviewed by Eric Seidel.
493
494         Export symbol Page::mainThreadScrollingReasonsAsText().
495
496         * win/WebKit2.def.in:
497
498 2012-12-11  Gwang Yoon Hwang  <ryumiel@company100.net>
499
500         Coordinated Graphics: Rename LayerTreeCoordinator to CoordinatedLayerTreeHost
501         https://bugs.webkit.org/show_bug.cgi?id=104641
502
503         Reviewed by Noam Rosenthal.
504
505         The name of LayerTreeCoordinator does not match LayerTreeHost.  This
506         patch renames it to CoordinatedLayerTreeHost. And make a getter for
507         CoordinatedLayerTreeHostProxy in QQuickWebPagePrivate to make a cleaner code.
508
509         No new tests - just a refactoring.
510
511         * CMakeLists.txt:
512         * DerivedSources.pri:
513         * Platform/CoreIPC/MessageID.h:
514         * Target.pri:
515         * UIProcess/API/efl/EwkViewImpl.cpp:
516         (EwkViewImpl::layerTreeRenderer):
517         * UIProcess/API/qt/qquickwebpage.cpp:
518         (QQuickWebPagePrivate::paint):
519         (QQuickWebPagePrivate::coordinatedLayerTreeHostProxy):
520         (QQuickWebPage::updatePaintNode):
521         (QQuickWebPagePrivate::updateSize):
522         * UIProcess/API/qt/qquickwebpage_p_p.h:
523         (WebKit):
524         (QQuickWebPagePrivate):
525         * UIProcess/API/qt/raw/qrawwebview.cpp:
526         (QRawWebView::setSize):
527         (QRawWebView::layerTreeRenderer):
528         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp.
529         (WebKit):
530         (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
531         (WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
532         (WebKit::CoordinatedLayerTreeHostProxy::updateViewport):
533         (WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
534         (WebKit::CoordinatedLayerTreeHostProxy::createTileForLayer):
535         (WebKit::CoordinatedLayerTreeHostProxy::updateTileForLayer):
536         (WebKit::CoordinatedLayerTreeHostProxy::removeTileForLayer):
537         (WebKit::CoordinatedLayerTreeHostProxy::createUpdateAtlas):
538         (WebKit::CoordinatedLayerTreeHostProxy::removeUpdateAtlas):
539         (WebKit::CoordinatedLayerTreeHostProxy::deleteCompositingLayer):
540         (WebKit::CoordinatedLayerTreeHostProxy::setRootCompositingLayer):
541         (WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerState):
542         (WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerChildren):
543         (WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerFilters):
544         (WebKit::CoordinatedLayerTreeHostProxy::removeCustomFilterProgram):
545         (WebKit::CoordinatedLayerTreeHostProxy::createCustomFilterProgram):
546         (WebKit::CoordinatedLayerTreeHostProxy::didRenderFrame):
547         (WebKit::CoordinatedLayerTreeHostProxy::createImageBacking):
548         (WebKit::CoordinatedLayerTreeHostProxy::updateImageBacking):
549         (WebKit::CoordinatedLayerTreeHostProxy::clearImageBackingContents):
550         (WebKit::CoordinatedLayerTreeHostProxy::removeImageBacking):
551         (WebKit::CoordinatedLayerTreeHostProxy::setContentsSize):
552         (WebKit::CoordinatedLayerTreeHostProxy::setLayerAnimations):
553         (WebKit::CoordinatedLayerTreeHostProxy::setAnimationsLocked):
554         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
555         (WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
556         (WebKit::CoordinatedLayerTreeHostProxy::requestAnimationFrame):
557         (WebKit::CoordinatedLayerTreeHostProxy::animationFrameReady):
558         (WebKit::CoordinatedLayerTreeHostProxy::didChangeScrollPosition):
559         (WebKit::CoordinatedLayerTreeHostProxy::createCanvas):
560         (WebKit::CoordinatedLayerTreeHostProxy::syncCanvas):
561         (WebKit::CoordinatedLayerTreeHostProxy::destroyCanvas):
562         (WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
563         (WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor):
564         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h.
565         (WebKit):
566         (CoordinatedLayerTreeHostProxy):
567         (WebKit::CoordinatedLayerTreeHostProxy::layerTreeRenderer):
568         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in.
569         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
570         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
571         (WebKit::LayerTreeRenderer::animationFrameReady):
572         (WebKit::LayerTreeRenderer::updateViewport):
573         (WebKit::LayerTreeRenderer::renderNextFrame):
574         (WebKit::LayerTreeRenderer::purgeBackingStores):
575         (WebKit::LayerTreeRenderer::detach):
576         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
577         (WebKit):
578         (LayerTreeRenderer):
579         * UIProcess/DrawingAreaProxy.cpp:
580         (WebKit::DrawingAreaProxy::didReceiveCoordinatedLayerTreeHostProxyMessage):
581         * UIProcess/DrawingAreaProxy.h:
582         (WebKit):
583         (WebKit::DrawingAreaProxy::coordinatedLayerTreeHostProxy):
584         (DrawingAreaProxy):
585         * UIProcess/DrawingAreaProxyImpl.cpp:
586         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
587         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
588         (WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):
589         (WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
590         * UIProcess/DrawingAreaProxyImpl.h:
591         (WebKit):
592         * UIProcess/WebPageProxy.cpp:
593         (WebKit::WebPageProxy::didReceiveMessage):
594         * UIProcess/efl/PageClientBase.cpp:
595         * UIProcess/efl/PageClientLegacyImpl.cpp:
596         (WebKit::PageClientLegacyImpl::didChangeContentsSize):
597         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
598         (WebKit::PageViewportControllerClientEfl::setRendererActive):
599         (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
600         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
601         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp.
602         (WebKit):
603         (WebKit::CoordinatedLayerTreeHost::create):
604         (WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
605         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
606         (WebKit::CoordinatedLayerTreeHost::setLayerFlushSchedulingEnabled):
607         (WebKit::CoordinatedLayerTreeHost::scheduleLayerFlush):
608         (WebKit::CoordinatedLayerTreeHost::cancelPendingLayerFlush):
609         (WebKit::CoordinatedLayerTreeHost::setShouldNotifyAfterNextScheduledLayerFlush):
610         (WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
611         (WebKit::CoordinatedLayerTreeHost::invalidate):
612         (WebKit::CoordinatedLayerTreeHost::setNonCompositedContentsNeedDisplay):
613         (WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
614         (WebKit::CoordinatedLayerTreeHost::forceRepaint):
615         (WebKit::CoordinatedLayerTreeHost::forceRepaintAsync):
616         (WebKit::CoordinatedLayerTreeHost::sizeDidChange):
617         (WebKit::CoordinatedLayerTreeHost::didInstallPageOverlay):
618         (WebKit::CoordinatedLayerTreeHost::didUninstallPageOverlay):
619         (WebKit::CoordinatedLayerTreeHost::setPageOverlayNeedsDisplay):
620         (WebKit::CoordinatedLayerTreeHost::setPageOverlayOpacity):
621         (WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
622         (WebKit::CoordinatedLayerTreeHost::initializeRootCompositingLayerIfNeeded):
623         (WebKit::CoordinatedLayerTreeHost::syncLayerState):
624         (WebKit::CoordinatedLayerTreeHost::syncLayerChildren):
625         (WebKit::CoordinatedLayerTreeHost::createCanvas):
626         (WebKit::CoordinatedLayerTreeHost::syncCanvas):
627         (WebKit::CoordinatedLayerTreeHost::destroyCanvas):
628         (WebKit::CoordinatedLayerTreeHost::syncLayerFilters):
629         (WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
630         (WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
631         (WebKit::CoordinatedLayerTreeHost::disconnectCustomFilterPrograms):
632         (WebKit::CoordinatedLayerTreeHost::detachLayer):
633         (WebKit::updateOffsetFromViewportForSelf):
634         (WebKit::updateOffsetFromViewportForLayer):
635         (WebKit::CoordinatedLayerTreeHost::syncFixedLayers):
636         (WebKit::CoordinatedLayerTreeHost::lockAnimations):
637         (WebKit::CoordinatedLayerTreeHost::unlockAnimations):
638         (WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):
639         (WebKit::CoordinatedLayerTreeHost::syncDisplayState):
640         (WebKit::CoordinatedLayerTreeHost::didPerformScheduledLayerFlush):
641         (WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired):
642         (WebKit::CoordinatedLayerTreeHost::createPageOverlayLayer):
643         (WebKit::CoordinatedLayerTreeHost::destroyPageOverlayLayer):
644         (WebKit::CoordinatedLayerTreeHost::createImageBackingIfNeeded):
645         (WebKit::CoordinatedLayerTreeHost::createImageBacking):
646         (WebKit::CoordinatedLayerTreeHost::updateImageBacking):
647         (WebKit::CoordinatedLayerTreeHost::clearImageBackingContents):
648         (WebKit::CoordinatedLayerTreeHost::removeImageBacking):
649         (WebKit::CoordinatedLayerTreeHost::flushPendingImageBackingChanges):
650         (WebKit::CoordinatedLayerTreeHost::notifyAnimationStarted):
651         (WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
652         (WebKit::CoordinatedLayerTreeHost::paintContents):
653         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
654         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
655         (WebKit::CoordinatedLayerTreeHost::createTile):
656         (WebKit::CoordinatedLayerTreeHost::updateTile):
657         (WebKit::CoordinatedLayerTreeHost::removeTile):
658         (WebKit::CoordinatedLayerTreeHost::createUpdateAtlas):
659         (WebKit::CoordinatedLayerTreeHost::removeUpdateAtlas):
660         (WebKit::CoordinatedLayerTreeHost::visibleContentsRect):
661         (WebKit::CoordinatedLayerTreeHost::setLayerAnimations):
662         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
663         (WebKit::CoordinatedLayerTreeHost::graphicsLayerFactory):
664         (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
665         (WebKit::CoordinatedLayerTreeHost::animationFrameReady):
666         (WebKit::CoordinatedLayerTreeHost::renderNextFrame):
667         (WebKit::CoordinatedLayerTreeHost::layerTreeTileUpdatesAllowed):
668         (WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
669         (WebKit::CoordinatedLayerTreeHost::beginContentUpdate):
670         (WebKit::CoordinatedLayerTreeHost::scheduleReleaseInactiveAtlases):
671         (WebKit::CoordinatedLayerTreeHost::releaseInactiveAtlasesTimerFired):
672         (WebKit::CoordinatedLayerTreeHost::setBackgroundColor):
673         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h.
674         (WebKit):
675         (CoordinatedLayerTreeHost):
676         (WebKit::CoordinatedLayerTreeHost::layerTreeContext):
677         (WebKit::CoordinatedLayerTreeHost::pageOverlayShouldApplyFadeWhenPainting):
678         (WebKit::CoordinatedLayerTreeHost::pauseRendering):
679         (WebKit::CoordinatedLayerTreeHost::resumeRendering):
680         (WebKit::CoordinatedLayerTreeHost::deviceScaleFactorDidChange):
681         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in.
682         * WebProcess/WebPage/DrawingArea.h:
683         (DrawingArea):
684         * WebProcess/WebPage/DrawingAreaImpl.cpp:
685         (WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):
686         * WebProcess/WebPage/DrawingAreaImpl.h:
687         (DrawingAreaImpl):
688         * WebProcess/WebPage/LayerTreeHost.cpp:
689         (WebKit::LayerTreeHost::create):
690         * WebProcess/WebPage/LayerTreeHost.h:
691         (LayerTreeHost):
692         * WebProcess/WebPage/WebPage.cpp:
693         (WebKit::WebPage::WebPage):
694         (WebKit::WebPage::~WebPage):
695         (WebKit::WebPage::didReceiveMessage):
696
697 2012-12-11  Alexey Proskuryakov  <ap@apple.com>
698
699         <rdar://problem/12857080> Per-Tab WebProcess: Blue lines between menu tabs at apple.com
700         https://bugs.webkit.org/show_bug.cgi?id=104709
701
702         Reviewed by Sam Weinig.
703
704         Data URLs were broken. Removing a no longer valid optimization for now.
705
706         * WebProcess/Network/WebResourceLoadScheduler.cpp:
707         (WebKit::WebResourceLoadScheduler::scheduleLoad):
708
709 2012-12-11  Michael Pruett  <michael@68k.org>
710
711         [JSC] Add tests for explicit serialization values
712         https://bugs.webkit.org/show_bug.cgi?id=104423
713
714         Reviewed by Oliver Hunt.
715
716         Add tests for serialization and deserialization mechanisms of
717         the JSC implementation of SerializedScriptValue. Similar tests
718         already exist for the V8 implementation.
719
720         * win/WebKit2.def.in:
721
722 2012-12-11  Jon Lee  <jonlee@apple.com>
723
724         Initialize new web processes with list of auto-start origins for plug-ins
725         https://bugs.webkit.org/show_bug.cgi?id=103219
726         <rdar://problem/12747219>
727
728         Reviewed by Anders Carlsson.
729
730         Serialize the set of hashes into a vector as a parameter in web process creation.
731
732         * Shared/WebProcessCreationParameters.h: Add a parameter for the origin hashes.
733
734         * Shared/WebProcessCreationParameters.cpp: Encode/decode that parameter.
735         (WebKit::WebProcessCreationParameters::encode):
736         (WebKit::WebProcessCreationParameters::decode):
737
738         * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
739         (WebKit::PlugInAutoStartProvider::autoStartOriginsCopy): Return a vector copy with contents from the
740         hash set.
741         * UIProcess/Plugins/PlugInAutoStartProvider.h:
742         (PlugInAutoStartProvider):
743
744         * UIProcess/WebContext.cpp:
745         (WebKit::WebContext::createNewWebProcess): Populate the parameter with the contents of the set.
746         * WebProcess/WebProcess.cpp:
747         (WebKit::WebProcess::initializeWebProcess): Add the items in the vector to the web process' copy of the set.
748
749 2012-12-11  Andreas Kling  <akling@apple.com>
750
751         CoreIPC: ArgumentEncoder should have an inline buffer.
752         <http://webkit.org/b/104622>
753
754         Reviewed by Anders Carlsson.
755
756         Add a 4K inline buffer to CoreIPC::ArgumentEncoder to avoid malloc/free churn.
757         It was dominating the transient allocations graph in Instruments.
758
759         * Platform/CoreIPC/ArgumentEncoder.cpp:
760         (CoreIPC::ArgumentEncoder::ArgumentEncoder):
761         (CoreIPC::ArgumentEncoder::grow):
762         * Platform/CoreIPC/ArgumentEncoder.h:
763         (CoreIPC::ArgumentEncoder::buffer):
764         (ArgumentEncoder):
765         (CoreIPC::ArgumentEncoder::usesInlineBuffer):
766
767 2012-12-11  Mike West  <mkwst@chromium.org>
768
769         Web Inspector: ConsoleTypes should not expose MessageType - it should be private to inspector.
770         https://bugs.webkit.org/show_bug.cgi?id=66371
771
772         Reviewed by Pavel Feldman.
773
774         Drops WebCore::MessageLevel from the addMessageToConsole method.
775
776         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
777         (WebKit::WebChromeClient::addMessageToConsole):
778         * WebProcess/WebCoreSupport/WebChromeClient.h:
779         (WebChromeClient):
780
781 2012-12-11  Thiago Marcos P. Santos  <thiago.santos@intel.com>
782
783         [EFL] Increase the timeout of the API unit tests
784         https://bugs.webkit.org/show_bug.cgi?id=104666
785
786         Reviewed by Kenneth Rohde Christiansen.
787
788         Palliative fix until we find out why the tests are taking so long.
789
790         * PlatformEfl.cmake:
791
792 2012-12-11  Kenneth Rohde Christiansen  <kenneth@webkit.org>
793
794         [Qt][EFL][WK2] Resizing the window doesn't always result in right content position
795         https://bugs.webkit.org/show_bug.cgi?id=104416
796
797         Reviewed by Simon Hausmann.
798
799         Make sure the client is notified about position and scale changed done by us.
800         Rename the m_*IsLocked to m_pending*Change as that makes the code more obvious.
801
802         Patch verified with both Qt and EFL.
803
804         * UIProcess/PageViewportController.cpp:
805         (WebKit::PageViewportController::PageViewportController):
806         (WebKit::PageViewportController::didRenderFrame): Notify client and pixel align.
807         (WebKit::PageViewportController::didChangeContentsVisibility):
808         (WebKit::PageViewportController::didChangeViewportAttributes):
809         (WebKit::PageViewportController::applyScaleAfterRenderingContents):
810         (WebKit::PageViewportController::applyPositionAfterRenderingContents):
811         * UIProcess/PageViewportController.h:
812         (PageViewportController):
813
814 2012-12-11  Christophe Dumez  <christophe.dumez@intel.com>
815
816         [CoordinatedGraphics] Use unsigned integers for UpdateAtlas IDs
817         https://bugs.webkit.org/show_bug.cgi?id=104654
818
819         Reviewed by Kenneth Rohde Christiansen.
820
821         UpdateAtlas currently uses *signed* integer type for its identifier.
822         Due to the way we generate those IDs, it is safer to use *unsigned*
823         integers. This is because the generated ID will overflow at some
824         point and the C and C++ language standards say that overflow of a
825         signed value is undefined behaviour.
826
827         This patch switches to unsigned integer type for UpdateAtlas IDs
828         since unsigned integers are guaranteed to wrap around on overflow.
829
830         * Shared/SurfaceUpdateInfo.h:
831         (SurfaceUpdateInfo):
832         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
833         (WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
834         (WebKit::LayerTreeCoordinatorProxy::removeUpdateAtlas):
835         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
836         (LayerTreeCoordinatorProxy):
837         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
838         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
839         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
840         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
841         (CoordinatedGraphicsLayerClient):
842         (CoordinatedGraphicsLayer):
843         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
844         (CoordinatedTileClient):
845         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
846         (WebKit::LayerTreeCoordinator::createUpdateAtlas):
847         (WebKit::LayerTreeCoordinator::removeUpdateAtlas):
848         (WebKit::LayerTreeCoordinator::beginContentUpdate):
849         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
850         (LayerTreeCoordinator):
851         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
852         (WebKit::UpdateAtlas::UpdateAtlas):
853         (WebKit::UpdateAtlas::~UpdateAtlas):
854         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
855         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
856         (UpdateAtlasClient):
857         (UpdateAtlas):
858
859 2012-12-11  Jinwoo Song  <jinwoo7.song@samsung.com>
860
861         [EFL][WK2] Create a ewk view object with new context for API tests
862         https://bugs.webkit.org/show_bug.cgi?id=103692
863
864         Reviewed by Gyuyoung Kim. 
865
866         Bug 103229 fixes the issue which PageGroupID increased even though
867         the EwkView was created with default context. If the Bug 103229 is
868         resolved, the EwkViews with same context will have same setting preferences.
869
870         Currently, WebKit2/EFL API test is creating the ewk view object
871         with the default context so the setting values set previously may
872         influence the following tests. So this patch created a ewk view object
873         with a new context instead of default one.
874
875         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
876         (EWK2UnitTest::EWK2UnitTestBase::SetUp):
877
878 2012-12-10  Dan Winship  <danw@gnome.org>
879
880         [Soup] Fix spelling of "initiating" in API.
881
882         Reviewed by Martin Robinson.
883
884         * WebProcess/soup/WebSoupRequestManager.cpp:
885         (WebKit::WebSoupRequestManager::send):
886
887 2012-12-10  Alexey Proskuryakov  <ap@apple.com>
888
889         [WK2] Add a user default to limit the number of web processes
890         https://bugs.webkit.org/show_bug.cgi?id=104606
891
892         Reviewed by Sam Weinig.
893
894         When the limit is reached, we'll reuse an existing process with fewest pages.
895
896         * UIProcess/WebContext.cpp:
897         (WebKit::WebContext::WebContext): Initialize m_webProcessCountLimit.
898         (WebKit::WebContext::platformInitialize): Added a hook for reading the preference,
899         empty implementation on most platforms.
900         (WebKit::WebContext::createNewWebProcess): Changed to return a raw pointer. The new
901         process is put into a vector anyway, so there is no ownership transfer.
902         (WebKit::WebContext::warmInitialProcess): Don't create a new process if that would
903         exceed the limit.
904         (WebKit::WebContext::createNewWebProcessRespectingProcessCountLimit): Added a new
905         function that wither creates a new process, or picks an existing one.
906         (WebKit::WebContext::createWebPage): Call the above new function instead of
907         unconditionally creating a process.
908
909         * UIProcess/WebContext.h: createNewWebProcess is no private. All clients should
910         respect the process count limit.
911
912         * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::reattachToWebProcess):
913         Respect the process count limit.
914
915         * UIProcess/mac/WebContextMac.mm:
916         (WebKit::registerUserDefaultsIfNeeded): Register the new default.
917         (WebKit::WebContext::platformInitialize): Read the default into a WebContext
918         member variable.
919         (WebKit::WebContext::platformInitializeWebProcess): Moved registerUserDefaultsIfNeeded()
920         from here to platformInitialize(), as that's a better place for it. Also added a
921         FIXME for an unrelated issue.
922
923 2012-12-10  Jon Lee  <jonlee@apple.com>
924
925         Build fix.
926
927         * WebProcess/WebCoreSupport/WebPlugInClient.cpp:
928         (WebKit::WebPlugInClient::WebPlugInClient): Remove unneeded m_page variable.
929         * WebProcess/WebCoreSupport/WebPlugInClient.h:
930         (WebPlugInClient):
931
932 2012-12-10  Jon Lee  <jonlee@apple.com>
933
934         Keep track of plug-in snapshots clicked by user
935         https://bugs.webkit.org/show_bug.cgi?id=103206
936         <rdar://problem/12746483>
937
938         Reviewed by Anders Carlsson.
939
940         Create a new provider class for the web context that maintains a mapping of the plug-in origins
941         allowed to auto-start for a specific page origin.
942
943         * WebProcess/WebPage/WebPage.cpp:
944         (WebKit::WebPage::WebPage): Create and set WebPlugInClient.
945
946         Implement WebCore::PlugInClient.
947         * WebProcess/WebCoreSupport/WebPlugInClient.cpp: Added.
948         (WebKit::WebPlugInClient::WebPlugInClient):
949         (WebKit::WebPlugInClient::~WebPlugInClient):
950         (WebKit::WebPlugInClient::pageDestroyed):
951         (WebKit::WebPlugInClient::isAutoStartOrigin): Forward to WebProcess.
952         (WebKit::WebPlugInClient::addAutoStartOrigin): Forward to WebProcess.
953         * WebProcess/WebCoreSupport/WebPlugInClient.h: Added.
954
955         * WebProcess/WebProcess.cpp: Maintains a copy of the hash set.
956         (WebKit::WebProcess::isPlugInAutoStartOrigin): Look for the hash in the set.
957         (WebKit::WebProcess::addPlugInAutoStartOrigin): Tell the UI process to add the hash for the page.
958         (WebKit::WebProcess::didAddPlugInAutoStartOrigin): Add the hash to the cached set.
959         * WebProcess/WebProcess.h:
960         * WebProcess/WebProcess.messages.in: Add DidAddPlugInAutoStartOrigin.
961
962         Add the auto-start provider.
963         * UIProcess/WebContext.cpp:
964         (WebKit::WebContext::WebContext): Initialize the provider.
965         (WebKit::WebContext::addPlugInAutoStartOriginHash): Forward to the provider.
966         * UIProcess/WebContext.h:
967         * UIProcess/WebContext.messages.in: Add AddPlugInAutoStartOriginHash.
968
969         The provider class maintains a map of page domains to hashes, and a set of all the hashes.
970         The latter will be used to initialize new web processes without having to crawl through the
971         whole map.
972         * UIProcess/Plugins/PlugInAutoStartProvider.cpp: Added.
973         (WebKit::PlugInAutoStartProvider::PlugInAutoStartProvider):
974         (WebKit::PlugInAutoStartProvider::addAutoStartOrigin): Add the origin to the map and set. Tell
975         all processes to add the origin to their local copies.
976         * UIProcess/Plugins/PlugInAutoStartProvider.h: Added.
977
978         Add PlugInAutoStartProvider and WebPlugInClient.
979         * CMakeLists.txt:
980         * GNUmakefile.list.am:
981         * Target.pri:
982         * WebKit2.xcodeproj/project.pbxproj:
983         * win/WebKit2.vcproj:
984
985 2012-12-10  Anders Carlsson  <andersca@apple.com>
986
987         Add WKPageSetInvalidMessageFunction stub
988         https://bugs.webkit.org/show_bug.cgi?id=104614
989         <rdar://problem/12841671>
990
991         Reviewed by Mark Rowe.
992
993         * UIProcess/API/C/WKPage.cpp:
994         (WKPageSetInvalidMessageFunction):
995         * UIProcess/API/C/WKPagePrivate.h:
996
997 2012-12-09  Antti Koivisto  <antti@apple.com>
998
999         Factor node traversal into standalone functions
1000         https://bugs.webkit.org/show_bug.cgi?id=104507
1001
1002         Reviewed by Eric Seidel.
1003
1004         * WebProcess/WebPage/WebFrame.cpp:
1005         (WebKit::WebFrame::containsAnyFormElements):
1006
1007 2012-12-10  Eduardo Lima Mitev  <elima@igalia.com>
1008
1009         [GTK] Expose HitTestResult::scrollbar() condition in API
1010         https://bugs.webkit.org/show_bug.cgi?id=104369
1011
1012         Reviewed by Carlos Garcia Campos.
1013
1014         This patch populates WebCore::HitTestResult::scrollbar() condition
1015         in WebKitHitTestResult public API, and includes a corresponding unit
1016         test.
1017
1018         * Shared/WebHitTestResult.cpp: Adds new isScrollbar member to
1019         encoding and decoding methods to carry the scrollbar condition
1020         from Web process to UI process.
1021         (WebKit::WebHitTestResult::Data::encode):
1022         (WebKit::WebHitTestResult::Data::decode):
1023         * Shared/WebHitTestResult.h:
1024         (Data): Adds new bool member isScrollbar.
1025         (WebKit::WebHitTestResult::Data::Data): Initializes isScrollbar from
1026         WebCore::HitTestResult::scrollbar().
1027         (WebKit::WebHitTestResult::isScrollbar): Method that returns value
1028         of isScrollbar member.
1029         (WebHitTestResult):
1030         * UIProcess/API/gtk/WebKitHitTestResult.cpp:
1031         (webkitHitTestResultCreate): Adds scrollbar condition to context upon
1032         initialization.
1033         (webkitHitTestResultCompare): Adds comparison of scrollbar condition.
1034         (webkit_hit_test_result_context_is_scrollbar): Public accessor for
1035         scrollbar presence in context.
1036         * UIProcess/API/gtk/WebKitHitTestResult.h: Adds new flag
1037         WEBKIT_HIT_TEST_RESULT_CONTEXT_SCROLLBAR to
1038         WebKitHitTestResultContext enum.
1039         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Adds new API symbol
1040         to the corresponding documentation sections.
1041         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
1042         (testWebViewMouseTarget): Updates mouse-target
1043         test to include assertions for hitting scrollbar condition, and
1044         an new HTML to privide a positive case.
1045
1046 2012-12-10  Alexis Menard  <alexis@webkit.org>
1047
1048         [CSS3 Backgrounds and Borders] Remove CSS3_BACKGROUND feature flag.
1049         https://bugs.webkit.org/show_bug.cgi?id=104539
1050
1051         Reviewed by Antonio Gomes.
1052
1053         As discussed on webkit-dev it is not needed to keep this feature flag 
1054         as support for <position> type is a small feature that is already 
1055         implemented by three other UAs. It was useful while landing this 
1056         feature as partial bits were landed one after one.
1057
1058         * Configurations/FeatureDefines.xcconfig:
1059
1060 2012-12-10  Alberto Garcia  <agarcia@igalia.com>
1061
1062         WebKitWebViewBase produces a warning if compiled with gcc
1063         https://bugs.webkit.org/show_bug.cgi?id=104561
1064
1065         Reviewed by Carlos Garcia Campos.
1066
1067         * UIProcess/API/gtk/WebKitWebViewBase.h:
1068         since this file can be included from C code, use void to
1069         explicitly specify that webkit_web_view_base_get_type() doesn't
1070         have parameters. Otherwise we get "warning: function declaration
1071         isn't a prototype" with -Wstrict-prototypes.
1072
1073 2012-12-10  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1074
1075         [WK2] TiledBackingStore: remove unneeded 'treatAsInitialValue' parameter from PageViewportControllerClient::setContentsScale
1076         https://bugs.webkit.org/show_bug.cgi?id=104544
1077
1078         Reviewed by Kenneth Rohde Christiansen.
1079
1080         Removed 'treatAsInitialValue' parameter from PageViewportControllerClient::setContentsScale()
1081         as it was not used by anyone.
1082
1083         * UIProcess/PageViewportController.cpp:
1084         (WebKit::PageViewportController::didRenderFrame):
1085         * UIProcess/PageViewportControllerClient.h:
1086         (PageViewportControllerClient):
1087         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
1088         (WebKit::PageViewportControllerClientEfl::setContentsScale):
1089         * UIProcess/efl/PageViewportControllerClientEfl.h:
1090         (PageViewportControllerClientEfl):
1091         * UIProcess/qt/PageViewportControllerClientQt.cpp:
1092         (WebKit::PageViewportControllerClientQt::setContentsScale):
1093         * UIProcess/qt/PageViewportControllerClientQt.h:
1094         (PageViewportControllerClientQt):
1095
1096 2012-12-10  Zoltan Nyul  <zoltan.nyul@intel.com>
1097
1098         Implement testRunner.setViewModeMediaFeature() in WebKitTestRunner
1099         https://bugs.webkit.org/show_bug.cgi?id=103886
1100
1101         Reviewed by Kenneth Rohde Christiansen.
1102
1103         Add support for TestRunner::setViewModeMediaFeature().
1104         This functionality is needed by the following LayoutTests:
1105         fast/media/media-query-list-02.html
1106         fast/media/media-query-list-03.html
1107         fast/media/media-query-list-04.html
1108         fast/media/media-query-list-05.html
1109         fast/media/media-query-list-06.html
1110         fast/media/media-query-list-07.html
1111         fast/media/view-mode-media-feature.html
1112
1113         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1114         (WKBundlePageSetViewMode):
1115         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
1116         * WebProcess/WebPage/WebPage.cpp:
1117         (WebKit::WebPage::setViewMode):
1118         (WebKit):
1119         * WebProcess/WebPage/WebPage.h:
1120         (WebPage):
1121
1122 2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>
1123
1124         [Qt] Fix QtWebProcess discovery on Windows
1125         https://bugs.webkit.org/show_bug.cgi?id=104552
1126
1127         Reviewed by Jocelyn Turcotte.
1128
1129         Make sure to look for QtWebProcess.exe on Windows instead of QtWebProcess.
1130
1131         * Shared/qt/ProcessExecutablePathQt.cpp:
1132         (WebKit::executablePath):
1133
1134 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
1135
1136         [GTK] Bring Harfbuzz-ng support to Gtk
1137         https://bugs.webkit.org/show_bug.cgi?id=92098
1138
1139         Reviewed by Gustavo Noronha Silva.
1140
1141         Add a HarfBuzz dependency.
1142
1143         * GNUmakefile.am: Add FreeType/HarfBuzz CFLAGS/LIBS to the libraries.
1144
1145 2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>
1146
1147         [Qt] Use QLibraryInfo::LibraryExecutablesPath unconditionally
1148         https://bugs.webkit.org/show_bug.cgi?id=104541
1149
1150         Reviewed by Jocelyn Turcotte.
1151
1152         We now depend on a Qt 5 version that is guaranteed to have this API, so we
1153         can remove the configure checks for it.
1154
1155         * PluginProcess.pro:
1156         * Shared/qt/ProcessExecutablePathQt.cpp:
1157         (WebKit::executablePath):
1158         * WebProcess.pro:
1159
1160 2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>
1161
1162         [Qt] Fix build without QtQuick 2
1163
1164         Unreviewed trivial build fix.
1165
1166         This function is defined in QtWebContext, which is only used when QtQuick2 is available.
1167
1168         * UIProcess/qt/WebContextQt.cpp:
1169         (WebKit::WebContext::platformInvalidateContext):
1170
1171 2012-12-10  Huang Dongsung  <luxtella@company100.net>
1172
1173         Coordinated Graphics: Remove the dependency of ShareableSurface from Coordinated Graphics.
1174         https://bugs.webkit.org/show_bug.cgi?id=100819
1175
1176         Reviewed by Kenneth Rohde Christiansen.
1177
1178         It is a follow-up patch of r137117.
1179
1180         There are two changes
1181         1. Add a const qualifier to supportsAlpha().
1182         2. Use << instead of encode() when using ArgumentEncoder.
1183
1184         * Shared/CoordinatedGraphics/CoordinatedSurface.h:
1185         (WebKit::CoordinatedSurface::supportsAlpha):
1186         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
1187         (WebKit::WebCoordinatedSurface::Handle::encode):
1188         (WebKit::WebCoordinatedSurface::copyToTexture):
1189
1190 2012-12-10  Huang Dongsung  <luxtella@company100.net>
1191
1192         Coordinated Graphics: Remove the dependency of ShareableSurface from Coordinated Graphics.
1193         https://bugs.webkit.org/show_bug.cgi?id=100819
1194
1195         Reviewed by Kenneth Rohde Christiansen.
1196
1197         WebCoordinatedSurface::copyToTexture should return early if the backend
1198         is GraphicsSurface.
1199
1200         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
1201         (WebKit::WebCoordinatedSurface::copyToTexture):
1202
1203 2012-12-10  Huang Dongsung  <luxtella@company100.net>
1204
1205         Coordinated Graphics: Add CoordinatedSurface to remove the dependency of ShareableSurface from Coordinated Graphics.
1206         https://bugs.webkit.org/show_bug.cgi?id=100819
1207
1208         Reviewed by Noam Rosenthal.
1209
1210         Internal Review by Gwang Yoon Hwang and Jae Hyun Park.
1211
1212         It is a preparation patch for Threaded Coordinated Graphics on WK1.
1213
1214         Create a CoordinatedSurface class that can be the base class both for
1215         the current IPC-based ShareableSurface, renamed here to
1216         WebCoordinatedSurface, and to a future thread-based surface
1217         implementation.
1218
1219         * CMakeLists.txt:
1220         * Shared/CoordinatedGraphics/CoordinatedSurface.h: Added.
1221         (WebCore):
1222         (WebKit):
1223         (CoordinatedSurface):
1224         (WebKit::CoordinatedSurface::~CoordinatedSurface):
1225         (WebKit::CoordinatedSurface::supportsAlpha):
1226         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp: Renamed from Source/WebKit2/Shared/ShareableSurface.cpp.
1227           Extends CoordinatedSurface.
1228         (WebKit):
1229         (WebKit::WebCoordinatedSurface::Handle::Handle):
1230         (WebKit::WebCoordinatedSurface::Handle::encode):
1231         (WebKit::WebCoordinatedSurface::Handle::decode):
1232         (WebKit::CoordinatedSurface::create):
1233         (WebKit::WebCoordinatedSurface::create):
1234         (WebKit::WebCoordinatedSurface::createWithSurface):
1235         (WebKit::WebCoordinatedSurface::createGraphicsContext):
1236         (WebKit::WebCoordinatedSurface::WebCoordinatedSurface):
1237         (WebKit::WebCoordinatedSurface::~WebCoordinatedSurface):
1238         (WebKit::WebCoordinatedSurface::createHandle):
1239         (WebKit::WebCoordinatedSurface::copyToTexture):
1240         * Shared/CoordinatedGraphics/WebCoordinatedSurface.h: Renamed from Source/WebKit2/Shared/ShareableSurface.h.
1241         (WebCore):
1242         (WebKit):
1243         (WebCoordinatedSurface):
1244         (Handle):
1245         (WebKit::WebCoordinatedSurface::Handle::graphicsSurfaceToken):
1246         (WebKit::WebCoordinatedSurface::isBackedByGraphicsSurface):
1247         * Target.pri:
1248         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
1249         (WebKit::CoordinatedBackingStoreTile::swapBuffers):
1250         (WebKit::CoordinatedBackingStoreTile::setBackBuffer):
1251         (WebKit::CoordinatedBackingStore::updateTile):
1252         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
1253         (WebKit):
1254         (CoordinatedBackingStoreTile):
1255         (CoordinatedBackingStore):
1256         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
1257         (WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
1258         (WebKit::LayerTreeCoordinatorProxy::updateImageBacking):
1259         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
1260         (LayerTreeCoordinatorProxy):
1261         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
1262         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1263         (WebKit::LayerTreeRenderer::updateImageBacking):
1264         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1265         (TileUpdate):
1266         (WebKit::LayerTreeRenderer::TileUpdate::TileUpdate):
1267         (LayerTreeRenderer):
1268         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1269         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
1270         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1271         (CoordinatedGraphicsLayerClient):
1272         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp:
1273         (WebKit::CoordinatedImageBacking::update):
1274         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h:
1275         (Coordinator):
1276         (CoordinatedImageBacking):
1277         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1278         (WebKit::LayerTreeCoordinator::updateImageBacking):
1279         (WebKit::LayerTreeCoordinator::createUpdateAtlas):
1280         (WebKit::LayerTreeCoordinator::beginContentUpdate):
1281         (WebKit::LayerTreeCoordinator::releaseInactiveAtlasesTimerFired):
1282         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1283         (LayerTreeCoordinator):
1284         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
1285         (WebKit::UpdateAtlas::UpdateAtlas):
1286         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
1287         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
1288         (UpdateAtlasClient):
1289         (UpdateAtlas):
1290         (WebKit::UpdateAtlas::supportsAlpha):
1291
1292 2012-12-09  Huang Dongsung  <luxtella@company100.net>
1293
1294         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
1295         https://bugs.webkit.org/show_bug.cgi?id=103843
1296
1297         Reviewed by Noam Rosenthal.
1298
1299         Send SetRootCompositingLayer message to the UI process before
1300         flushing compositing states of layer tree.
1301
1302         This is in preparation for refactoring TextureMapper to work in an actor
1303         model (http://webkit.org/b/103854).
1304
1305         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1306         (WebKit::LayerTreeRenderer::setLayerState):
1307         (WebKit::LayerTreeRenderer::setRootLayerID):
1308         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1309         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
1310         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
1311         (WebKit::LayerTreeCoordinator::initializeRootCompositingLayerIfNeeded):
1312         (WebKit):
1313         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1314         (LayerTreeCoordinator):
1315
1316 2012-12-09  Jon Lee  <jonlee@apple.com>
1317
1318         [WK2] Move button image to injected bundle
1319         https://bugs.webkit.org/show_bug.cgi?id=104107
1320         <rdar://problem/12813842>
1321
1322         Reviewed by Simon Fraser.
1323
1324         Rely on the injected bundle to create the image used for the button in snapshotted plug-ins.
1325
1326         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1327         (WebKit::WebChromeClient::plugInStartLabelImage): Forward the call to the injected bundle UI client.
1328         * WebProcess/WebCoreSupport/WebChromeClient.h: Implement plugInStartLabelImage().
1329
1330         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1331         (WebKit::InjectedBundlePageUIClient::plugInStartLabelImage): Convert the WebCore enums to WK API enums.
1332         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
1333
1334         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Expose a new callback to generate the button image.
1335
1336         * Shared/API/c/cg/WKImageCG.cpp:
1337         (WKImageCreateFromCGImage): Refactor to use GraphicsContext methods so that the image is flipped appropriately.
1338
1339 2012-12-09  Kangil Han  <kangil.han@samsung.com>
1340
1341         Fix unused parameter compile warnings
1342         https://bugs.webkit.org/show_bug.cgi?id=104463
1343
1344         Reviewed by Kentaro Hara.
1345
1346         Remove compile warning messages by omitting parameter name.
1347
1348         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1349         (WebKit::LayerTreeRenderer::createCanvas):
1350
1351 2012-12-08  Seokju Kwon  <seokju.kwon@gmail.com>
1352
1353         [EFL][WK2] Add Remote Web Inspector
1354         https://bugs.webkit.org/show_bug.cgi?id=98705
1355
1356         Reviewed by Gyuyoung Kim.
1357
1358         Add Remote Web Inspector to EFL port.
1359         The WebInspectorSever will be started during WebKit context initialization.
1360         The IP address and port number for the server can be set in WEBKIT_INSPECTOR_SERVER.
1361
1362         * CMakeLists.txt:
1363         * PlatformEfl.cmake:
1364         * UIProcess/InspectorServer/WebInspectorServer.h:
1365         (WebInspectorServer):
1366         * UIProcess/InspectorServer/WebSocketServer.h:
1367         (WebSocketServer):
1368         * UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp: Added.
1369         (WebKit):
1370         (WebKit::inspectorResourcePath):
1371         (WebKit::WebInspectorServer::platformResourceForPath):
1372         (WebKit::WebInspectorServer::buildPageList):
1373         * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp:
1374         (WebKit::connectionCallback):
1375         * UIProcess/efl/WebContextEfl.cpp:
1376         (WebKit::initializeInspectorServer):
1377         (WebKit):
1378         (WebKit::WebContext::platformInitializeWebProcess):
1379         * config.h:
1380
1381 2012-12-08  Gustavo Noronha Silva  <gns@gnome.org>
1382
1383         Unreviewed. Make building the WebKit2 GIR file conditional on building the WebKit2 library.
1384
1385         * GNUmakefile.am:
1386
1387 2012-12-08  Seokju Kwon  <seokju.kwon@gmail.com>
1388
1389         Remove unused headers
1390         https://bugs.webkit.org/show_bug.cgi?id=104428
1391
1392         Reviewed by Kentaro Hara.
1393
1394         Header inclusion cleanup.
1395         Remove <WebCore/NotImplement.h>.
1396
1397         * Platform/qt/WorkQueueQt.cpp:
1398         * Platform/win/WorkQueueWin.cpp:
1399         * Shared/qt/ShareableBitmapQt.cpp:
1400         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
1401         * UIProcess/win/TextCheckerWin.cpp:
1402         * UIProcess/win/WebContextMenuProxyWin.cpp:
1403         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
1404
1405 2012-12-07  Jinwoo Song  <jinwoo7.song@samsung.com>
1406
1407         [EFL][WK2] Remove unused source file from PlatformEfl.cmake
1408         https://bugs.webkit.org/show_bug.cgi?id=104430
1409
1410         Reviewed by Kentaro Hara.
1411
1412         Shared/API/c/gtk/WKGraphicsContextGtk.cpp is not used for building WebKit2/EFL.
1413
1414         * PlatformEfl.cmake:
1415
1416 2012-12-07  Jer Noble  <jer.noble@apple.com>
1417
1418         Allow the WebProcess access to the CoreMedia preferences file.
1419         https://bugs.webkit.org/show_bug.cgi?id=104320
1420         <rdar://problem/10904519>
1421
1422         Reviewed by Alexey Proskuryakov.
1423
1424         Allow read access to ~/Library/Preferences/com.apple.coremedia.plist and com.apple.avfoundation.plist
1425         by the WebProcess. The QuickTime.plugin uses CoreMedia for playback, so allow PluginProcess
1426         to access those preferences as well.
1427
1428         * PluginProcess/mac/com.apple.WebKit.PluginProcess.sb.in:
1429         * WebProcess/com.apple.WebProcess.sb.in:
1430
1431 2012-12-07  Tim Horton  <timothy_horton@apple.com>
1432
1433         [wk2] WebProcessServiceForWebKitDevelopment should forward stdout and stderr to the UIProcess
1434         https://bugs.webkit.org/show_bug.cgi?id=104418
1435
1436         Reviewed by Simon Fraser.
1437
1438         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1439         (WebKit::connectToWebProcessServiceForWebKitDevelopment): Send stdout and stderr file descriptors to the WebProcess.
1440         * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
1441         (WebProcessServiceForWebKitDevelopmentEventHandler): Replace the WebProcess' stdout and stderr with those from the UIProcess.
1442
1443 2012-12-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1444
1445         Unreviewed, rolling out r136993.
1446         http://trac.webkit.org/changeset/136993
1447         https://bugs.webkit.org/show_bug.cgi?id=104415
1448
1449         This patch breaks the mac build (Requested by cabanier on
1450         #webkit).
1451
1452         * win/WebKit2.def.in:
1453
1454 2012-12-07  Alexey Proskuryakov  <ap@apple.com>
1455
1456         There is no need to change cached resource storage policy through ResourceHandleClient
1457         https://bugs.webkit.org/show_bug.cgi?id=104413
1458
1459         Reviewed by Brady Eidson.
1460
1461         * NetworkProcess/NetworkResourceLoader.cpp:
1462         * NetworkProcess/NetworkResourceLoader.h:
1463         Deleted overrides of the removed willCacheResponse.
1464
1465 2012-12-07  Alexey Proskuryakov  <ap@apple.com>
1466
1467         Network process should use a correct storage session in private browsing mode
1468         <rdar://problem/12838490>
1469         https://bugs.webkit.org/show_bug.cgi?id=104401
1470
1471         Reviewed by Brady Eidson.
1472
1473         Notify NetworkProcess when it needs to create or destroy a private browsing session,
1474         and add a NetworkResourceLoadParameters member telling if the particular resource
1475         should be requested using it.
1476
1477         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1478         (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
1479         (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
1480         (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
1481         (WebKit::NetworkConnectionToWebProcess::getRawCookies):
1482         (WebKit::NetworkConnectionToWebProcess::deleteCookie):
1483         (WebKit::NetworkConnectionToWebProcess::getHostnamesWithCookies):
1484         (WebKit::NetworkConnectionToWebProcess::deleteCookiesForHostname):
1485         (WebKit::NetworkConnectionToWebProcess::deleteAllCookies):
1486         Added another dummy argument to dummy networking context.
1487
1488         * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess):
1489         Ensure private browsing session if it's needed due to a persistent preference, not
1490         an API call at runtime (which is handled below as ensure/destroy).
1491
1492         * NetworkProcess/NetworkResourceLoader.cpp:
1493         (WebKit::NetworkResourceLoader::start): Pass private browsing state to RemoteNetworkingContext
1494         used for loading.
1495         (WebKit::NetworkResourceLoader::willCacheResponse): Added an implemntation that
1496         matches WebCore, but may be not needed.
1497
1498         * NetworkProcess/mac/RemoteNetworkingContext.h: (WebKit::RemoteNetworkingContext::create):
1499         Store privateBrowsingEnabled flag.
1500
1501         * NetworkProcess/mac/RemoteNetworkingContext.mm: (WebKit::RemoteNetworkingContext::storageSession):
1502         Return a private session when it's in use.
1503
1504         * Shared/Network/NetworkProcessCreationParameters.cpp:
1505         (WebKit::NetworkProcessCreationParameters::encode):
1506         (WebKit::NetworkProcessCreationParameters::decode):
1507         * Shared/Network/NetworkProcessCreationParameters.h:
1508         Pass privateBrowsingEnabled flag to the new process.
1509
1510         * Shared/Network/NetworkResourceLoadParameters.cpp:
1511         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
1512         (WebKit::NetworkResourceLoadParameters::encode):
1513         (WebKit::NetworkResourceLoadParameters::decode):
1514         * Shared/Network/NetworkResourceLoadParameters.h:
1515         (WebKit::NetworkResourceLoadParameters::inPrivateBrowsingMode):
1516         Pass inPrivateBrowsingMode flag for the request.
1517
1518         * UIProcess/Network/NetworkProcessManager.h: (WebKit::NetworkProcessManager::process):
1519         Exposed, so that we can send messages without going through NetworkProcessManager.
1520
1521         * UIProcess/WebContext.cpp:
1522         (WebKit::WebContext::usesNetworkProcess):
1523         (WebKit::anyContextUsesNetworkProcess):
1524         (WebKit::WebContext::willStartUsingPrivateBrowsing):
1525         (WebKit::WebContext::willStopUsingPrivateBrowsing):
1526         Notify NetworkProcess when entering or exiting private browsing.
1527
1528         * UIProcess/WebContext.h: Exposed usesNetworkProcess() for the new static function
1529         anyContextUsesNetworkProcess to use.
1530
1531         * WebProcess/Network/WebResourceLoadScheduler.cpp: (WebKit::WebResourceLoadScheduler::scheduleLoad):
1532         Put current private browsing state over in NetworkResourceLoadParameters.
1533
1534 2012-12-07  Helder Correia  <helder.correia@nokia.com>
1535
1536         [CoordGfx] Variable name starts with upper case character
1537         https://bugs.webkit.org/show_bug.cgi?id=104327
1538
1539         Reviewed by Noam Rosenthal.
1540
1541         Just fixing a typo.
1542
1543         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1544         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
1545
1546 2012-12-07  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1547
1548         [WK2][EFL][Qt] Pixel alignment is wrong in some cases involving a non-integral content scale
1549         https://webkit.org/b/103519
1550
1551         Reviewed by Noam Rosenthal.
1552
1553         This patch removes the blurriness by pixel aligning the layers. It
1554         does not fully remove the shaking, only minimizes it.
1555
1556         * UIProcess/API/efl/EwkViewImpl.cpp:
1557         (EwkViewImpl::transformFromScene):
1558         (EwkViewImpl::displayTimerFired):
1559         * UIProcess/API/efl/EwkViewImpl.h:
1560         (EwkViewImpl::pagePosition):
1561
1562             As the pixel alignment of the main layer is moved to the
1563             PageViewportController, rename discretePagePosition to just
1564             pagePosition. It now returns a FloatPoint but the positions
1565             should still be discrete.
1566
1567         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
1568         (WebKit::LayerTreeCoordinatorProxy::setVisibleContentsRect):
1569         (WebKit::LayerTreeCoordinatorProxy::didChangeScrollPosition):
1570         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
1571         (LayerTreeCoordinatorProxy):
1572         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
1573         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1574         (WebKit::LayerTreeRenderer::didChangeScrollPosition):
1575         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1576         (LayerTreeRenderer):
1577         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1578         (WebKit::LayerTreeCoordinator::visibleContentsRect):
1579         (WebKit::LayerTreeCoordinator::setVisibleContentsRect):
1580         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1581         (LayerTreeCoordinator):
1582         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in:
1583         * WebProcess/WebPage/LayerTreeHost.h:
1584         (WebCore):
1585         (WebKit::LayerTreeHost::setVisibleContentsRect):
1586
1587             Change the internal scroll position/visible contents rect
1588             to be represented as float positions. The rounding to integer
1589             values not happens just before setFixesVisibleContentsRect.
1590             This makes it possible to know our exact positions and
1591             calculate proper scroll deltas.
1592
1593         (WebKit::LayerTreeRenderer::setLayerState):
1594
1595             Group anchor point, position and size together.
1596
1597         * UIProcess/PageViewportController.h:
1598         (PageViewportController):
1599         * UIProcess/PageViewportController.cpp:
1600         (WebKit::PageViewportController::PageViewportController):
1601         (WebKit::PageViewportController::boundContentsPosition):
1602         (WebKit::PageViewportController::boundContentsPositionAtScale):
1603         (WebKit::PageViewportController::didRenderFrame):
1604         (WebKit::PageViewportController::pageDidRequestScroll):
1605         (WebKit::PageViewportController::didChangeContentsVisibility):
1606         (WebKit::PageViewportController::syncVisibleContents):
1607         (WebKit::PageViewportController::visibleContentsSize):
1608         (WebKit::PageViewportController::applyPositionAfterRenderingContents):
1609         * UIProcess/qt/PageViewportControllerClientQt.cpp:
1610         (WebKit::PageViewportControllerClientQt::focusEditableArea):
1611         (WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded):
1612         (WebKit::PageViewportControllerClientQt::nearestValidVisibleContentsRect):
1613
1614             Some renaming as what was called viewportPos was actually the
1615             contents position. Rename clampViewportToContents to
1616             boundContentsPosition and remove scale argument which is has
1617             direct access to.
1618
1619             Make the boundContentsPosition allow one extra pixel in each
1620             orientation to allow for pixel alignment of fixed position layers
1621
1622         (WebKit::isIntegral):
1623         (WebKit):
1624         (WebKit::PageViewportController::pixelAlignedFloatPoint):
1625
1626             Introduce way to pixel align the main contents layer. Only in
1627             use for EFL so far.
1628
1629         * UIProcess/efl/PageClientLegacyImpl.cpp:
1630         (WebKit::PageClientLegacyImpl::updateViewportSize):
1631         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
1632         (WebKit::PageViewportControllerClientEfl::setViewportPosition):
1633         * UIProcess/efl/PageViewportControllerClientEfl.h:
1634         (WebKit::PageViewportControllerClientEfl::contentPosition):
1635         (PageViewportControllerClientEfl):
1636
1637             Store the contents position as a FloatPoint.
1638
1639         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1640         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
1641         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
1642         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
1643         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
1644         (WebCore::isIntegral):
1645         (WebCore):
1646         (WebCore::CoordinatedGraphicsLayer::computePositionRelativeToBase):
1647         (WebCore::CoordinatedGraphicsLayer::computePixelAlignment):
1648         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
1649         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1650         (CoordinatedGraphicsLayerClient):
1651         (CoordinatedGraphicsLayer):
1652
1653             Pixel align layers when the effective scale is not an integer
1654             value. This code is based on code from GraphicsLayerCA.
1655
1656 2012-12-07  Alexey Proskuryakov  <ap@apple.com>
1657
1658         REGRESSION (r136770): Assertion failure in sendMessage() whenever WebProcess crashes
1659         https://bugs.webkit.org/show_bug.cgi?id=104392
1660
1661         Reviewed by Anders Carlsson.
1662
1663         * Shared/ChildProcessProxy.cpp: (WebKit::ChildProcessProxy::sendMessage): Changed
1664         back to using m_conection where it can be null.
1665
1666 2012-12-07  Jaehun Lim  <ljaehun.lim@samsung.com>
1667
1668         [EFL][WK2] Add ewk_settings APIs for text autosizing
1669         https://bugs.webkit.org/show_bug.cgi?id=103342
1670
1671         Reviewed by Kenneth Rohde Christiansen.
1672
1673         Add ewk_settings_text_autosizing_enabled_get / set() functions.
1674         Text autosizing is disabled by default.
1675
1676         * UIProcess/API/efl/ewk_settings.cpp:
1677         (ewk_settings_text_autosizing_enabled_set):
1678         (ewk_settings_text_autosizing_enabled_get):
1679         * UIProcess/API/efl/ewk_settings.h:
1680         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
1681         (TEST_F):
1682
1683 2012-12-06  Rick Byers  <rbyers@chromium.org>
1684
1685         CSS cursor property should support webkit-image-set
1686         https://bugs.webkit.org/show_bug.cgi?id=99493
1687
1688         Reviewed by Beth Dakin.
1689
1690         Add ENABLE_MOUSE_CURSOR_SCALE - disabled by default.
1691
1692         * Configurations/FeatureDefines.xcconfig:
1693
1694 2012-12-06  Jae Hyun Park  <jae.park@company100.net>
1695
1696         Coordinated Graphics: Rename WebLayerTreeInfo to CoordinatedLayerInfo
1697         https://bugs.webkit.org/show_bug.cgi?id=103983
1698
1699         Reviewed by Noam Rosenthal.
1700
1701         This patch refactors WebLayerTreeInfo in 2 areas.
1702
1703         1. WebLayerTreeInfo is only used by Coordinated Graphics. So, the file
1704         should be located in WebKit2/Shared/CoordinatedGraphics instead of
1705         WebKit2/Shared.
1706
1707         2. The name of WebLayerTreeInfo is incorrect. Currently,
1708         WebLayerTreeInfo only has WebLayerInfo struct. Also, it is hard to know
1709         what WebLayer is since we don't use that name anymore. More appropriate
1710         name for WebLayerInfo would be CoordinatedLayerInfo.
1711
1712         No new test, because no behavioral change.
1713
1714         * CMakeLists.txt:
1715         * Scripts/webkit2/messages.py:
1716         (headers_for_type):
1717         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.cpp: Renamed from Source/WebKit2/Shared/WebLayerTreeInfo.cpp.
1718         (WebKit):
1719         (WebKit::CoordinatedLayerInfo::encode):
1720         (WebKit::CoordinatedLayerInfo::decode):
1721         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.h: Renamed from Source/WebKit2/Shared/WebLayerTreeInfo.h.
1722         (WebKit):
1723         (WebKit::CoordinatedLayerInfo::CoordinatedLayerInfo):
1724         (CoordinatedLayerInfo):
1725         * Shared/LayerTreeContext.h:
1726         (LayerTreeContext):
1727         * Shared/efl/LayerTreeContextEfl.cpp:
1728         (WebKit::LayerTreeContext::LayerTreeContext):
1729         (WebKit::LayerTreeContext::encode):
1730         (WebKit::LayerTreeContext::decode):
1731         (WebKit::LayerTreeContext::isEmpty):
1732         (WebKit::operator==):
1733         * Shared/qt/LayerTreeContextQt.cpp:
1734         (WebKit::LayerTreeContext::LayerTreeContext):
1735         (WebKit::LayerTreeContext::encode):
1736         (WebKit::LayerTreeContext::decode):
1737         (WebKit::LayerTreeContext::isEmpty):
1738         (WebKit::operator==):
1739         * Target.pri:
1740         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
1741         (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
1742         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
1743         (WebKit::LayerTreeCoordinatorProxy::removeTileForLayer):
1744         (WebKit::LayerTreeCoordinatorProxy::deleteCompositingLayer):
1745         (WebKit::LayerTreeCoordinatorProxy::setRootCompositingLayer):
1746         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerState):
1747         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerChildren):
1748         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerFilters):
1749         (WebKit::LayerTreeCoordinatorProxy::setLayerAnimations):
1750         (WebKit::LayerTreeCoordinatorProxy::createCanvas):
1751         (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
1752         (WebKit::LayerTreeCoordinatorProxy::destroyCanvas):
1753         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
1754         (WebKit):
1755         (LayerTreeCoordinatorProxy):
1756         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
1757         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1758         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
1759         (WebKit::LayerTreeRenderer::createLayer):
1760         (WebKit::LayerTreeRenderer::createCanvas):
1761         (WebKit::LayerTreeRenderer::syncCanvas):
1762         (WebKit::LayerTreeRenderer::destroyCanvas):
1763         (WebKit::LayerTreeRenderer::setLayerChildren):
1764         (WebKit::LayerTreeRenderer::setLayerFilters):
1765         (WebKit::LayerTreeRenderer::setLayerState):
1766         (WebKit::LayerTreeRenderer::deleteLayer):
1767         (WebKit::LayerTreeRenderer::ensureLayer):
1768         (WebKit::LayerTreeRenderer::setRootLayerID):
1769         (WebKit::LayerTreeRenderer::createTile):
1770         (WebKit::LayerTreeRenderer::removeTile):
1771         (WebKit::LayerTreeRenderer::updateTile):
1772         (WebKit::LayerTreeRenderer::ensureRootLayer):
1773         (WebKit::LayerTreeRenderer::purgeGLResources):
1774         (WebKit::LayerTreeRenderer::setLayerAnimations):
1775         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1776         (WebKit):
1777         (LayerTreeRenderer):
1778         (WebKit::LayerTreeRenderer::layerByID):
1779         * UIProcess/DrawingAreaProxy.h:
1780         (WebKit):
1781         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1782         (WebCore::layerByIDMap):
1783         (WebCore::toCoordinatedLayerID):
1784         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
1785         (WebCore::CoordinatedGraphicsLayer::id):
1786         (WebCore::CoordinatedGraphicsLayer::syncChildren):
1787         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
1788         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1789         (CoordinatedGraphicsLayerClient):
1790         (CoordinatedGraphicsLayer):
1791         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h:
1792         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1793         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
1794         (WebKit::LayerTreeCoordinator::syncLayerState):
1795         (WebKit::LayerTreeCoordinator::syncLayerChildren):
1796         (WebKit::LayerTreeCoordinator::createCanvas):
1797         (WebKit::LayerTreeCoordinator::syncCanvas):
1798         (WebKit::LayerTreeCoordinator::destroyCanvas):
1799         (WebKit::LayerTreeCoordinator::syncLayerFilters):
1800         (WebKit::LayerTreeCoordinator::createTile):
1801         (WebKit::LayerTreeCoordinator::updateTile):
1802         (WebKit::LayerTreeCoordinator::removeTile):
1803         (WebKit::LayerTreeCoordinator::setLayerAnimations):
1804         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1805         (LayerTreeCoordinator):
1806
1807 2012-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
1808
1809         Unreviewed, rolling out r136900.
1810         http://trac.webkit.org/changeset/136900
1811         https://bugs.webkit.org/show_bug.cgi?id=104318
1812
1813         Unreviewed build for Windows port. (Requested by rfong on
1814         #webkit).
1815
1816         * win/WebKit2.def.in:
1817
1818 2012-12-06  Jon Lee  <jonlee@apple.com>
1819
1820         Retry snapshots if they are too empty
1821         https://bugs.webkit.org/show_bug.cgi?id=104174
1822         <rdar://problem/12820146>
1823
1824         Reviewed by Simon Fraser.
1825
1826         * WebProcess/Plugins/PluginView.h: Add a new variable that keeps track of the number of times we've
1827         retried to come up with a snapshot.
1828         * WebProcess/Plugins/PluginView.cpp:
1829         (WebKit::PluginView::PluginView): Initialize the count to 0.
1830         (WebKit::isAlmostSolidColor): Figure out if the image is almost a solid color by overlaying
1831         a grid of dots, and calculate the differences among them. If the average color difference is greater than
1832         a threshold, we consider it to have meaningful content. For now we expect a minimum size and a specific
1833         bitmap image format, otherwise we return early.
1834         (WebKit::PluginView::pluginSnapshotTimerFired): If we have a snapshot image to look at, and if it is
1835         evaluated to be too empty, then try again.
1836
1837 2012-12-06  Tony Chang  <tony@chromium.org>
1838
1839         Unreviewed, Apple Win Debug build fix.
1840
1841         * win/WebKit2.def.in: Add 2 symbols that are needed by the debug build.
1842
1843 2012-12-06  Alexey Proskuryakov  <ap@apple.com>
1844
1845         Track private browsing session in network process
1846         https://bugs.webkit.org/show_bug.cgi?id=104281
1847
1848         Reviewed by Jessie Berlin.
1849
1850         Added ensure/destroy messages that match what's done in WebProcess. Also similarly,
1851         ensuring a private session may happen on demand if network process has been restarted
1852         after a crash, or if private browsing is enabled via a persistent preference.
1853
1854         Eventually, we should find a way to share code between WebFrameNetworkingContext
1855         and RemoteNetworkingContext.
1856
1857         * NetworkProcess/NetworkProcess.cpp:
1858         (WebKit::NetworkProcess::initializeNetworkProcess):
1859         (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
1860         (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
1861         * NetworkProcess/NetworkProcess.h:
1862         * NetworkProcess/NetworkProcess.messages.in:
1863         * NetworkProcess/mac/RemoteNetworkingContext.h:
1864         (RemoteNetworkingContext):
1865         * NetworkProcess/mac/RemoteNetworkingContext.mm:
1866         (WebKit::privateBrowsingStorageSessionIdentifierBase):
1867         (WebKit::RemoteNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
1868         (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
1869         (WebKit::RemoteNetworkingContext::destroyPrivateBrowsingSession):
1870         * Shared/Network/NetworkProcessCreationParameters.cpp:
1871         (WebKit::NetworkProcessCreationParameters::encode):
1872         (WebKit::NetworkProcessCreationParameters::decode):
1873         * Shared/Network/NetworkProcessCreationParameters.h:
1874         (NetworkProcessCreationParameters):
1875         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
1876         (WebKit::NetworkProcessProxy::platformInitializeNetworkProcess):
1877         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1878         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
1879         * WebProcess/WebProcess.cpp:
1880         (WebKit::WebProcess::initializeWebProcess):
1881
1882 2012-12-06  Laszlo Gombos  <l.gombos@samsung.com>
1883
1884         [EFL] Remove ENABLE_GLIB_SUPPORT CMake variable
1885         https://bugs.webkit.org/show_bug.cgi?id=104278
1886
1887         Reviewed by Brent Fulgham.
1888
1889         The guards are not required as it is always set for EFL.
1890
1891         * PlatformEfl.cmake:
1892         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
1893         (WebKit::PluginProcessProxy::scanPlugin):
1894         * WebProcess/efl/WebProcessMainEfl.cpp:
1895         (WebKit::WebProcessMainEfl):
1896
1897 2012-12-06  Tony Chang  <tony@chromium.org>
1898
1899         REGRESSION(r135082): Restore the ability to insert author level style sheets from script
1900         https://bugs.webkit.org/show_bug.cgi?id=104042
1901
1902         Reviewed by Antti Koivisto.
1903
1904         Update exports for Internals.cpp.
1905
1906         * win/WebKit2.def.in:
1907
1908 2012-12-06  Andras Becsi  <andras.becsi@digia.com>
1909
1910         [Qt][WK2] Fix QWebKitTest's notification of device pixel ratio change
1911         https://bugs.webkit.org/show_bug.cgi?id=104269
1912
1913         Unreviewed, trivialy fixing last minute change.
1914
1915         Move signal emission to the correct place.
1916
1917         * UIProcess/API/qt/qquickwebview.cpp:
1918         (QQuickWebViewFlickablePrivate::onComponentComplete):
1919         * UIProcess/qt/PageViewportControllerClientQt.cpp:
1920         (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
1921
1922 2012-12-06  Andras Becsi  <andras.becsi@digia.com>
1923
1924         [Qt][WK2] Fix QWebKitTest's notification of device pixel ratio change
1925         https://bugs.webkit.org/show_bug.cgi?id=104269
1926
1927         Reviewed by Kenneth Rohde Christiansen.
1928
1929         Since the ViewportInfoItem of MiniBrowser is created before the
1930         WebView finishes construction, thus before the viewport controller
1931         has been instantiated, the shown device pixel ratio was incorrect.
1932         Additionally QWebKitTest's notification signal was also not emitted
1933         when the value changed.
1934
1935         * UIProcess/API/qt/qquickwebview.cpp:
1936         (QQuickWebViewPrivate::QQuickWebViewPrivate):
1937         * UIProcess/qt/PageViewportControllerClientQt.cpp:
1938         (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
1939
1940 2012-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
1941
1942         Unreviewed, rolling out r136788.
1943         http://trac.webkit.org/changeset/136788
1944         https://bugs.webkit.org/show_bug.cgi?id=104260
1945
1946         Asserts on EFL WebKit2 Debug bot (Requested by yael on
1947         #webkit).
1948
1949         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1950         (WebKit::LayerTreeRenderer::setLayerState):
1951         (WebKit::LayerTreeRenderer::setRootLayerID):
1952         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1953         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
1954         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
1955         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1956         (LayerTreeCoordinator):
1957
1958 2012-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
1959
1960         Unreviewed, rolling out r136795.
1961         http://trac.webkit.org/changeset/136795
1962         https://bugs.webkit.org/show_bug.cgi?id=104257
1963
1964         Asserts on EFL WebKit2 Debug bot (Requested by yael on
1965         #webkit).
1966
1967         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1968         (WebKit::LayerTreeRenderer::setRootLayerID):
1969
1970 2012-12-06  Shinya Kawanaka  <shinyak@chromium.org>
1971
1972         Internals.getElementByIdInShadowRoot is nonsense now.
1973         https://bugs.webkit.org/show_bug.cgi?id=104241
1974
1975         Reviewed by Kent Tamura.
1976
1977         * win/WebKit2.def.in:
1978
1979 2012-12-06  Christophe Dumez  <christophe.dumez@intel.com>
1980
1981         [EFL][WK2] Context clients should unregister themselves when destroyed
1982         https://bugs.webkit.org/show_bug.cgi?id=104113
1983
1984         Reviewed by Kenneth Rohde Christiansen.
1985
1986         Make sure the context clients (History and Download clients)
1987         unregister themselves when destroyed to make sure their
1988         callback functions are never called after the client objects
1989         have been destroyed (i.e. when the parent Ewk_Context has
1990         been destroyed).
1991
1992         This addresses crashing issues after a Ewk_Context object
1993         gets unref'd and destroyed.
1994
1995         * UIProcess/efl/ContextHistoryClientEfl.cpp:
1996         (WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
1997         (WebKit):
1998         (WebKit::ContextHistoryClientEfl::~ContextHistoryClientEfl):
1999         * UIProcess/efl/ContextHistoryClientEfl.h:
2000         (ContextHistoryClientEfl):
2001         * UIProcess/efl/DownloadManagerEfl.cpp:
2002         (WebKit::DownloadManagerEfl::~DownloadManagerEfl):
2003         (WebKit):
2004         * UIProcess/efl/DownloadManagerEfl.h:
2005         (DownloadManagerEfl):
2006
2007 2012-12-05  Huang Dongsung  <luxtella@company100.net>
2008
2009         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
2010         https://bugs.webkit.org/show_bug.cgi?id=103843
2011
2012         Reviewed by Noam Rosenthal.
2013
2014         Clarify LayerTreeRenderer::setRootLayerID() can be called only once during its
2015         lifecycle. LayerTreeRenderer, LayerTreeCoordinator and LayerTreeCoordinatorProxy
2016         have the same lifecycle to WebPage and the root layer is reused even if loading
2017         new page, so it is impossible to call LayerTreeRenderer::setRootLayerID() more
2018         than twice.
2019
2020         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2021         (WebKit::LayerTreeRenderer::setRootLayerID):
2022
2023 2012-12-05  Brent Fulgham  <bfulgham@webkit.org>
2024
2025         [Windows, WinCairo] Regenerate .def files on changes
2026         https://bugs.webkit.org/show_bug.cgi?id=104136
2027
2028         Reviewed by Tim Horton.
2029
2030         The new .def file generator is not regenerating the link
2031         export definitions once it creates the definition file
2032         the first time. You must clean the build directory for
2033         new symbols to be added (or removed).
2034
2035         * win/WebKit2.vcproj: Change the WebKit2.def file reference to
2036           point to the generated version of the file.
2037         * win/WebKit2ExportGenerator.vcproj: Add WebKit2.def.in as a source
2038           file that participates in the build so that Visual Studio knows
2039           to build the project when the file changes.
2040         * win/WebKit2ExportGeneratorBuildCmd.cmd: Added. Refactor build
2041           command into its own shell script.
2042         * win/WebKit2ExportGeneratorPostBuild.cmd: Call new BuildCmd script.
2043         * win/WebKit2ExportGeneratorPreBuild.cmd: Delete the old generator
2044           and definition files to ensure a clean build.
2045
2046 2012-12-05  Halton Huo  <halton.huo@intel.com>
2047
2048         [CMake] Unify coding style for CMake files
2049         https://bugs.webkit.org/show_bug.cgi?id=103605
2050
2051         Reviewed by Laszlo Gombos.
2052
2053         Update cmake files(.cmake, CMakeLists.txt) with following style rules:
2054         1. Indentation
2055         1.1 Use spaces, not tabs.
2056         1.2 Four spaces as indent.
2057         2. Spacing
2058         2.1 Place one space between control statements and their parentheses.
2059             For eg, if (), else (), elseif (), endif (), foreach (),
2060             endforeach (), while (), endwhile (), break ().
2061         2.2 Do not place spaces between function and macro statements and
2062             their parentheses. For eg, macro(), endmacro(), function(),
2063             endfunction().
2064         2.3 Do not place spaces between a command or function or macro and its
2065             parentheses, or between a parenthesis and its content. For eg,
2066             message("testing") not message( "testing") or message ("testing" )
2067         2.4 No space at line ending.
2068         3. Lowercase when call commands macros and functions. For eg,
2069            add_executable() not ADD_EXECUTABLE(), set() not SET().
2070
2071         * CMakeLists.txt:
2072         * PlatformEfl.cmake:
2073         * win/WebKit2ExportGenerator.vcproj:
2074         * win/WebKit2ExportGeneratorCommon.vsprops:
2075
2076 2012-12-05  Huang Dongsung  <luxtella@company100.net>
2077
2078         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
2079         https://bugs.webkit.org/show_bug.cgi?id=103843
2080
2081         Reviewed by Noam Rosenthal.
2082
2083         Send SetRootCompositingLayer message to the UI process in the
2084         constructor instead of sending it on the first flush.
2085
2086         This is in preparation for refactoring TextureMapper to work in an actor
2087         model (http://webkit.org/b/103854).
2088
2089         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2090         (WebKit::LayerTreeRenderer::setLayerState):
2091         (WebKit::LayerTreeRenderer::setRootLayerID):
2092         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2093         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
2094         (WebKit::LayerTreeCoordinator::initializeRootCompositingLayer):
2095         (WebKit):
2096         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
2097         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2098         (LayerTreeCoordinator):
2099
2100 2012-12-05  Jinwoo Song  <jinwoo7.song@samsung.com>
2101
2102         [EFL][WK2] Don't use the C API internally in ewk_cookie_manager
2103         https://bugs.webkit.org/show_bug.cgi?id=103243
2104
2105         Reviewed by Gyuyoung Kim.
2106
2107         Used the C++ classes directly instead of the C API wrappers
2108         to avoid a lot of toImpl/toAPI casts.
2109
2110         * UIProcess/API/efl/ewk_context.cpp:
2111         (EwkContext::cookieManager):
2112         * UIProcess/API/efl/ewk_cookie_manager.cpp:
2113         (EwkCookieManager::EwkCookieManager):
2114         (EwkCookieManager::~EwkCookieManager):
2115         (EwkCookieManager::setPersistentStorage):
2116         (EwkCookieManager::setHTTPAcceptPolicy):
2117         (EwkCookieManager::clearHostnameCookies):
2118         (EwkCookieManager::clearAllCookies):
2119         (EwkCookieManager::watchChanges):
2120         (EwkCookieManager::getHostNamesWithCookies):
2121         (EwkCookieManager::getHTTPAcceptPolicy):
2122         * UIProcess/API/efl/ewk_cookie_manager_private.h:
2123         (EwkCookieManager::create):
2124         (EwkCookieManager):
2125
2126 2012-12-05  No'am Rosenthal  <noam@webkit.org>
2127
2128         Coordinated Graphics: Enable support for setContentsToBackgroundColor
2129         https://bugs.webkit.org/show_bug.cgi?id=104128
2130
2131         Reviewed by Kenneth Rohde Christiansen.
2132
2133         Enable setContentsToBackgroundColor in CoordinatedGraphicsLayer, and pass it through to the UI process.
2134
2135         * Shared/WebLayerTreeInfo.h:
2136         (WebLayerInfo):
2137         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2138         (WebKit::LayerTreeRenderer::setLayerState):
2139         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2140         (WebCore::CoordinatedGraphicsLayer::setContentsToBackgroundColor):
2141         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2142         (CoordinatedGraphicsLayer):
2143
2144 2012-12-05  Alexey Proskuryakov  <ap@apple.com>
2145
2146         <rdar://problem/12809890> Should allow sandbox lookup of com.apple.tccd
2147
2148         Reviewed by Beth Dakin and Dan Bernstein.
2149
2150         * WebProcess/com.apple.WebProcess.sb.in:
2151
2152 2012-12-05  Alexey Proskuryakov  <ap@apple.com>
2153
2154         [WK2] Would like to queue messages while NetworkProcess is launching
2155         https://bugs.webkit.org/show_bug.cgi?id=104143
2156
2157         Reviewed by Anders Carlsson.
2158
2159         Factored out process launching and message sending code to a ChildProcessProxy class.
2160         Process closing and crashing code should be moved once we better understand common
2161         requirements for the processes.
2162
2163         * CMakeLists.txt:
2164         * GNUmakefile.list.am:
2165         * Target.pri:
2166         * WebKit2.xcodeproj/project.pbxproj:
2167         * win/WebKit2.vcproj:
2168         Added ChildProcessProxy files.
2169
2170         * Shared/ChildProcessProxy.cpp: Added.
2171         (WebKit::ChildProcessProxy::ChildProcessProxy):
2172         (WebKit::ChildProcessProxy::~ChildProcessProxy):
2173         (WebKit::ChildProcessProxy::fromConnection):
2174         (WebKit::ChildProcessProxy::connect):
2175         (WebKit::ChildProcessProxy::terminate):
2176         (WebKit::ChildProcessProxy::sendMessage):
2177         (WebKit::ChildProcessProxy::isLaunching):
2178         (WebKit::ChildProcessProxy::didFinishLaunching):
2179         (WebKit::ChildProcessProxy::clearConnection):
2180         * Shared/ChildProcessProxy.h: Added.
2181         (WebKit::ChildProcessProxy::connection):
2182         (WebKit::ChildProcessProxy::isValid):
2183         (WebKit::ChildProcessProxy::canSendMessage):
2184         (WebKit::ChildProcessProxy::processIdentifier):
2185         (WebKit::ChildProcessProxy::send):
2186         (WebKit::ChildProcessProxy::sendSync):
2187         Moved code from WebProcessProxy. Every ChildProcessProxy is a connection client,
2188         but every one is a connection queue client, so that latter is passed as an argument.
2189
2190         * UIProcess/Network/NetworkProcessProxy.h:
2191         * UIProcess/Network/NetworkProcessProxy.cpp:
2192         Removed unused syncMessageSendTimedOut(), thank you OVERRIDE.
2193
2194         * UIProcess/Network/NetworkProcessProxy.cpp:
2195         (WebKit::NetworkProcessProxy::NetworkProcessProxy):
2196         (WebKit::NetworkProcessProxy::getLaunchOptions):
2197         (WebKit::NetworkProcessProxy::~NetworkProcessProxy):
2198         (WebKit::NetworkProcessProxy::getNetworkProcessConnection):
2199         (WebKit::NetworkProcessProxy::didFinishLaunching):
2200         * UIProcess/Network/NetworkProcessProxy.h:
2201         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
2202         (WebKit::NetworkProcessProxy::setApplicationIsOccluded):
2203         * UIProcess/WebProcessProxy.cpp:
2204         (WebKit::WebProcessProxy::WebProcessProxy):
2205         (WebKit::WebProcessProxy::~WebProcessProxy):
2206         (WebKit::WebProcessProxy::getLaunchOptions):
2207         (WebKit::WebProcessProxy::disconnect):
2208         (WebKit::WebProcessProxy::didFinishLaunching):
2209         Use shared code.
2210
2211         * UIProcess/WebProcessProxy.h: (WebKit::WebProcessProxy::fromConnection):
2212         NetworkProcess inherits from conneciton client privately, so we need to do most
2213         of the work in ClientProcessProxy, and further upcast here.
2214
2215         * UIProcess/efl/WebProcessProxyEfl.cpp:
2216         (WebKit::WebProcessProxy::platformGetLaunchOptions):
2217         * UIProcess/gtk/WebProcessProxyGtk.cpp:
2218         (WebKit::WebProcessProxy::platformGetLaunchOptions):
2219         * UIProcess/mac/WebProcessProxyMac.mm:
2220         (WebKit::WebProcessProxy::platformGetLaunchOptions):
2221         * UIProcess/qt/WebProcessProxyQt.cpp:
2222         (WebKit::WebProcessProxy::platformGetLaunchOptions):
2223         * UIProcess/win/WebProcessProxyWin.cpp:
2224         (WebKit::WebProcessProxy::platformGetLaunchOptions):
2225         Updated for renaming, platformConnect -> platformGetLaunchOptions().
2226
2227 2012-12-05  Kiran Muppala  <cmuppala@apple.com>
2228
2229         WebKit2 child processes need to initialize timer coalescing policy on Mac.
2230         https://bugs.webkit.org/show_bug.cgi?id=103613
2231
2232         Reviewed by Mark Rowe.
2233
2234         Set timer coalescing policy of WebKit2 child processes to that of visible applications
2235         until they can manage the policy based on UI process visibility.
2236
2237         * Shared/mac/ChildProcessMac.mm:
2238         (WebKit::initializeTimerCoalescingPolicy): Set task_latency and task_throughput QOS tiers as appropriate
2239         for visible applications.
2240         (WebKit::ChildProcess::platformInitialize): Add call to initializeTimerCoalescingPolicy.
2241
2242 2012-12-05  Anders Carlsson  <andersca@apple.com>
2243
2244         Connection::waitForMessage shouldn't use the message ID
2245         https://bugs.webkit.org/show_bug.cgi?id=104157
2246
2247         Reviewed by Andreas Kling.
2248
2249         Pass the message receiver name and message name to waitForMessage and use them for lookups instead of
2250         the message ID.
2251
2252         * Platform/CoreIPC/Connection.cpp:
2253         (CoreIPC::Connection::createSyncMessageEncoder):
2254         (CoreIPC::Connection::waitForMessage):
2255         (CoreIPC::Connection::processIncomingMessage):
2256         * Platform/CoreIPC/Connection.h:
2257         (CoreIPC::Connection::waitForAndDispatchImmediately):
2258
2259 2012-12-05  Jae Hyun Park  <jae.park@company100.net>
2260
2261         Coordinated Graphics: Move AreaAllocator and UpdateAtlas to CoordinatedGraphics
2262         https://bugs.webkit.org/show_bug.cgi?id=103864
2263
2264         Reviewed by Noam Rosenthal.
2265
2266         AreaAllocator and UpdateAtlas are only used for Coordinated Graphics.
2267         So, these should be moved to CoordinatedGraphics to clarify the code.
2268
2269         No new test, because no change of behavior.
2270
2271         * CMakeLists.txt:
2272         * Target.pri:
2273         * WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/AreaAllocator.cpp.
2274         (WebKit):
2275         (WebKit::AreaAllocator::AreaAllocator):
2276         (WebKit::AreaAllocator::~AreaAllocator):
2277         (WebKit::AreaAllocator::expand):
2278         (WebKit::AreaAllocator::expandBy):
2279         (WebKit::AreaAllocator::release):
2280         (WebKit::AreaAllocator::overhead):
2281         (WebKit::AreaAllocator::roundAllocation):
2282         (WebKit::GeneralAreaAllocator::GeneralAreaAllocator):
2283         (WebKit::GeneralAreaAllocator::~GeneralAreaAllocator):
2284         (WebKit::GeneralAreaAllocator::freeNode):
2285         (WebKit::GeneralAreaAllocator::expand):
2286         (WebKit::fitsWithin):
2287         (WebKit::GeneralAreaAllocator::allocate):
2288         (WebKit::GeneralAreaAllocator::allocateFromNode):
2289         (WebKit::GeneralAreaAllocator::splitNode):
2290         (WebKit::GeneralAreaAllocator::updateLargestFree):
2291         (WebKit::GeneralAreaAllocator::release):
2292         (WebKit::GeneralAreaAllocator::overhead):
2293         * WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.h: Renamed from Source/WebKit2/WebProcess/WebPage/AreaAllocator.h.
2294         (WebCore::nextPowerOfTwo):
2295         (WebCore):
2296         (WebKit):
2297         (AreaAllocator):
2298         (WebKit::AreaAllocator::size):
2299         (WebKit::AreaAllocator::minimumAllocation):
2300         (WebKit::AreaAllocator::setMinimumAllocation):
2301         (WebKit::AreaAllocator::margin):
2302         (WebKit::AreaAllocator::setMargin):
2303         (GeneralAreaAllocator):
2304         (Node):
2305         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp.
2306         (WebKit):
2307         (WebKit::UpdateAtlas::UpdateAtlas):
2308         (WebKit::UpdateAtlas::~UpdateAtlas):
2309         (WebKit::UpdateAtlas::buildLayoutIfNeeded):
2310         (WebKit::UpdateAtlas::didSwapBuffers):
2311         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
2312         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h: Renamed from Source/WebKit2/WebProcess/WebPage/UpdateAtlas.h.
2313         (WebCore):
2314         (WebKit):
2315         (UpdateAtlasClient):
2316         (UpdateAtlas):
2317         (WebKit::UpdateAtlas::size):
2318         (WebKit::UpdateAtlas::flags):
2319         (WebKit::UpdateAtlas::addTimeInactive):
2320         (WebKit::UpdateAtlas::isInactive):
2321         (WebKit::UpdateAtlas::isInUse):
2322
2323 2012-12-05  Michael Brüning  <michael.bruning@digia.com>
2324
2325         Fix compilation for Qt5.0.0 stable branch.
2326         https://bugs.webkit.org/show_bug.cgi?id=103870
2327
2328         Reviewed by Simon Hausmann.
2329
2330         QWindow::pos() and QQuickItem::pos() have been renamed to position().
2331         Patch by Lars Knoll <lars.knoll@digia.com>
2332
2333         * UIProcess/qt/PageViewportControllerClientQt.cpp:
2334         (WebKit::PageViewportControllerClientQt::setContentRectVisiblePositionAtScale):
2335         (WebKit::PageViewportControllerClientQt::setViewportPosition):
2336
2337 2012-12-05  Christophe Dumez  <christophe.dumez@intel.com>
2338
2339         [EFL][WK2] EWK2UnitTestBase.ewk_favicon_database_async_icon_get is crashing with new Ewk_Context
2340         https://bugs.webkit.org/show_bug.cgi?id=104110
2341
2342         Reviewed by Laszlo Gombos.
2343
2344         Unregister the WKFaviconDatabase client in EwkFaviconDatabase
2345         destructor to avoid crashing if the callbacks get called
2346         after the EwkFaviconDatabase object has been destroyed (i.e.
2347         the parent EwkContext object was destroyed).
2348
2349         * UIProcess/API/efl/ewk_favicon_database.cpp:
2350         (EwkFaviconDatabase::~EwkFaviconDatabase):
2351
2352 2012-12-05  Andras Becsi  <andras.becsi@digia.com>
2353
2354         [Qt][WK2] REGRESSION(r135399): It made qmltests::DoubleTapToZoom::test_double_zoomInAndBack() API test fail
2355         https://bugs.webkit.org/show_bug.cgi?id=103889
2356
2357         Reviewed by Jocelyn Turcotte.
2358
2359         The client should always be notified in PageViewportController::didChangeViewportAttributes
2360         about the changed attributes not only if the minimum scale changed. This ensures that these
2361         changes are propagated to QWebKitTest and the zoom stack of double-tap-to-zoom is reset correctly.
2362         Also increase precision of scale comparisons since the current value resulted in flakyness in
2363         scale related API tests.
2364
2365         * UIProcess/PageViewportController.cpp:
2366         (WebKit::PageViewportController::didChangeViewportAttributes):
2367         (WebKit::PageViewportController::updateMinimumScaleToFit):
2368
2369 2012-12-05  Christophe Dumez  <christophe.dumez@intel.com>
2370
2371         [CoordinatedGraphics] Use unsigned integers for CoordinatedTile IDs
2372         https://bugs.webkit.org/show_bug.cgi?id=103816
2373
2374         Reviewed by Jocelyn Turcotte.
2375
2376         Use unsigned integer for CoordinatedTile identifier type.
2377         CoordinatedTile was previously using signed integers for
2378         its identifier which is unsafe because the generated ID
2379         will overflow at some point and the C and C++ language
2380         standards say that overflow of a signed value is undefined
2381         behaviour.
2382
2383         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
2384         (WebKit::CoordinatedBackingStore::createTile):
2385         (WebKit::CoordinatedBackingStore::removeTile):
2386         (WebKit::CoordinatedBackingStore::removeAllTiles):
2387         (WebKit::CoordinatedBackingStore::updateTile):
2388         (WebKit::CoordinatedBackingStore::texture):
2389         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
2390         (WebKit::CoordinatedBackingStore::commitTileOperations):
2391         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
2392         (CoordinatedBackingStore):
2393         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2394         (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
2395         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
2396         (WebKit::LayerTreeCoordinatorProxy::removeTileForLayer):
2397         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
2398         (LayerTreeCoordinatorProxy):
2399         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2400         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2401         (WebKit::LayerTreeRenderer::createTile):
2402         (WebKit::LayerTreeRenderer::removeTile):
2403         (WebKit::LayerTreeRenderer::updateTile):
2404         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2405         (LayerTreeRenderer):
2406         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2407         (WebCore::CoordinatedGraphicsLayer::createTile):
2408         (WebCore::CoordinatedGraphicsLayer::updateTile):
2409         (WebCore::CoordinatedGraphicsLayer::removeTile):
2410         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2411         (CoordinatedGraphicsLayerClient):
2412         (CoordinatedGraphicsLayer):
2413         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp:
2414         (WebKit):
2415         (WebKit::CoordinatedTile::CoordinatedTile):
2416         (WebKit::CoordinatedTile::~CoordinatedTile):
2417         (WebKit::CoordinatedTile::updateBackBuffer):
2418         (WebKit::CoordinatedTile::isReadyToPaint):
2419         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
2420         (CoordinatedTile):
2421         (CoordinatedTileClient):
2422         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2423         (WebKit::LayerTreeCoordinator::createTile):
2424         (WebKit::LayerTreeCoordinator::updateTile):
2425         (WebKit::LayerTreeCoordinator::removeTile):
2426         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2427         (LayerTreeCoordinator):
2428
2429 2012-12-05  Yuni Jeong  <yhnet.jung@samsung.com>
2430
2431         [EFL][WK2] Add APIs to get/set private browsing.
2432         https://bugs.webkit.org/show_bug.cgi?id=102052
2433
2434         Reviewed by Gyuyoung Kim.
2435
2436         Private Browsing allows a user to browse the Internet without saving any information about which sites and pages a user has visited.
2437
2438         * UIProcess/API/efl/ewk_settings.cpp:
2439         (ewk_settings_private_browsing_enabled_set):
2440         (ewk_settings_private_browsing_enabled_get):
2441         * UIProcess/API/efl/ewk_settings.h:
2442         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2443         (TEST_F):
2444
2445 2012-12-05  Joaquim Rocha  <jrocha@igalia.com>
2446
2447         URL schemes registered as local, no access, display isolated and as CORS enabled are not registered again after a web process crash
2448         https://bugs.webkit.org/show_bug.cgi?id=104013
2449
2450         Reviewed by Darin Adler.
2451
2452         * WebProcess/WebProcess.cpp:
2453         (WebKit::WebProcess::initializeWebProcess): Iterate through the schemes stored in
2454         urlSchemesRegisteredAsLocal, urlSchemesRegisteredAsNoAccess,
2455         urlSchemesRegisteredAsDisplayIsolated and urlSchemesRegisteredAsCORSEnabled and
2456         call the respective (already existing) methods for registering them.
2457
2458 2012-12-04  Yuni Jeong  <yhnet.jung@samsung.com>
2459
2460         [EFL][WK2] Add APIs to get/set default font size.
2461         https://bugs.webkit.org/show_bug.cgi?id=101921
2462
2463         Reviewed by Gyuyoung Kim.
2464
2465         Add setting APIs for default font size and a unit test.
2466
2467         * UIProcess/API/efl/ewk_settings.cpp:
2468         (ewk_settings_default_font_size_set):
2469         (ewk_settings_default_font_size_get):
2470         * UIProcess/API/efl/ewk_settings.h:
2471         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2472         (TEST_F):
2473
2474 2012-12-04  Anders Carlsson  <andersca@apple.com>
2475
2476         Remove #ifs that are always true
2477         https://bugs.webkit.org/show_bug.cgi?id=104080
2478
2479         Reviewed by Andreas Kling.
2480
2481         __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 is always true, so remove all the #ifs.
2482
2483         * PluginProcess/mac/PluginProcessMac.mm:
2484         (WebKit::initializeSandbox):
2485         (WebKit::PluginProcess::platformInitialize):
2486         * Shared/DictionaryPopupInfo.cpp:
2487         (WebKit::DictionaryPopupInfo::encode):
2488         (WebKit::DictionaryPopupInfo::decode):
2489         * Shared/DictionaryPopupInfo.h:
2490         * Shared/mac/WebEventFactory.mm:
2491         (WebKit::phaseForEvent):
2492         (WebKit::momentumPhaseForEvent):
2493         * SharedWorkerProcess/mac/SharedWorkerProcessMac.mm:
2494         (WebKit::initializeSandbox):
2495         (WebKit::SharedWorkerProcess::platformInitialize):
2496         * UIProcess/API/mac/PDFViewController.mm:
2497         (WebKit::PDFViewScrollView_scrollWheel):
2498         (WebKit::PDFViewController::pdfKitBundle):
2499         * UIProcess/API/mac/PageClientImpl.mm:
2500         (WebKit::PageClientImpl::didPerformDictionaryLookup):
2501         (WebKit::PageClientImpl::dismissDictionaryLookupPanel):
2502         (WebKit::PageClientImpl::recordAutocorrectionResponse):
2503         (WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
2504         * UIProcess/API/mac/WKView.mm:
2505         (-[WKView displayIfNeeded]):
2506         (-[WKView draggingUpdated:]):
2507         (-[WKView viewDidMoveToWindow]):
2508         (-[WKView _intrinsicDeviceScaleFactor]):
2509         (-[WKView _cacheWindowBottomCornerRect]):
2510         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
2511         (+[WKView hideWordDefinitionWindow]):
2512         * UIProcess/Launcher/mac/EnvironmentVariables.cpp:
2513         * UIProcess/Launcher/mac/EnvironmentVariables.h:
2514         (EnvironmentVariables):
2515         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2516         (WebKit::addDYLDEnvironmentAdditions):
2517         (WebKit::createWebProcessServiceForWebKitDevelopment):
2518         (WebKit):
2519         (WebKit::tryPreexistingProcess):
2520         (WebKit::createProcess):
2521         (WebKit::ProcessLauncher::launchProcess):
2522         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2523         (WebKit::PluginInfoStore::shouldUsePlugin):
2524         (WebKit::PluginInfoStore::reactivateInactivePlugin):
2525         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
2526         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
2527         * UIProcess/WebPageProxy.cpp:
2528         (WebKit::WebPageProxy::didCommitLoadForFrame):
2529         (WebKit::WebPageProxy::pageDidScroll):
2530         (WebKit::WebPageProxy::processDidCrash):
2531         (WebKit::WebPageProxy::recordAutocorrectionResponse):
2532         (WebKit::WebPageProxy::handleAlternativeTextUIResult):
2533         * UIProcess/WebPageProxy.h:
2534         (WebPageProxy):
2535         * UIProcess/WebPageProxy.messages.in:
2536         * UIProcess/mac/TextCheckerMac.mm:
2537         (WebKit::initializeState):
2538         (WebKit::TextChecker::getGuessesForWord):
2539         * UIProcess/mac/WKFullScreenWindowController.mm:
2540         (convertRectToScreen):
2541         * UIProcess/mac/WebContextMac.mm:
2542         (WebKit::WebContext::platformInitializeWebProcess):
2543         * WebKit2Prefix.h:
2544         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
2545         (WebKit::NPN_GetValue):
2546         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
2547         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2548         (WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
2549         * WebProcess/WebCoreSupport/WebEditorClient.h:
2550         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2551         (InitWebCoreSystemInterface):
2552         * WebProcess/WebPage/WebPage.cpp:
2553         (WebKit):
2554         * WebProcess/WebPage/WebPage.h:
2555         (WebPage):
2556         * WebProcess/WebPage/WebPage.messages.in:
2557         * WebProcess/WebPage/mac/WebPageMac.mm:
2558         (WebKit::WebPage::performDictionaryLookupAtLocation):
2559         (WebKit::WebPage::performDictionaryLookupForSelection):
2560         (WebKit::WebPage::performDictionaryLookupForRange):
2561         * WebProcess/mac/SecItemShimMethods.mm:
2562         * WebProcess/mac/WebProcessMac.mm:
2563         (WebKit::WebProcess::secItemResponse):
2564         * WebProcess/mac/WebProcessMainMac.mm:
2565         (WebKit::WebProcessMain):
2566         * WebProcessService/WebProcessServiceMain.mm:
2567         (main):
2568         * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
2569         (WebProcessServiceForWebKitDevelopmentEventHandler):
2570         (main):
2571
2572 2012-12-04  Anders Carlsson  <andersca@apple.com>
2573
2574         Remove more Snow Leopard only code
2575         https://bugs.webkit.org/show_bug.cgi?id=104079
2576
2577         Reviewed by Andreas Kling.
2578
2579         All of the SecKeychainItem code was Snow Leopard only.
2580
2581         * Shared/mac/SecKeychainItemRequestData.cpp: Removed.
2582         * Shared/mac/SecKeychainItemRequestData.h: Removed.
2583         * Shared/mac/SecKeychainItemResponseData.cpp: Removed.
2584         * Shared/mac/SecKeychainItemResponseData.h: Removed.
2585         * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h:
2586         * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
2587         * UIProcess/WebProcessProxy.h:
2588         (WebProcessProxy):
2589         * UIProcess/WebProcessProxy.messages.in:
2590         * UIProcess/mac/WebProcessProxyMac.mm:
2591         * WebKit2.xcodeproj/project.pbxproj:
2592         * WebProcess/WebProcess.h:
2593         * WebProcess/WebProcess.messages.in:
2594         * WebProcess/mac/KeychainItemShimMethods.h: Removed.
2595         * WebProcess/mac/KeychainItemShimMethods.mm: Removed.
2596         * WebProcess/mac/WebProcessMac.mm:
2597         (WebKit::WebProcess::initializeShim):
2598         * WebProcess/mac/WebProcessShim.mm:
2599
2600 2012-12-04  Anders Carlsson  <andersca@apple.com>
2601
2602         Remove PageClient::didChangeScrollbarsForMainFrame
2603         https://bugs.webkit.org/show_bug.cgi?id=104077
2604
2605         Reviewed by Andreas Kling.
2606
2607         The aforementioned function was only used to implement some Snow Leopard specific behavior that we no longer support.
2608
2609         * UIProcess/API/gtk/PageClientImpl.cpp:
2610         * UIProcess/API/gtk/PageClientImpl.h:
2611         (PageClientImpl):
2612         * UIProcess/API/mac/PageClientImpl.h:
2613         (PageClientImpl):
2614         * UIProcess/API/mac/PageClientImpl.mm:
2615         * UIProcess/API/mac/WKView.mm:
2616         (-[WKView viewWillMoveToWindow:]):
2617         * UIProcess/API/mac/WKViewInternal.h:
2618         * UIProcess/API/qt/raw/qrawwebview_p_p.h:
2619         * UIProcess/PageClient.h:
2620         (PageClient):
2621         * UIProcess/WebPageProxy.cpp:
2622         (WebKit::WebPageProxy::didChangeScrollbarsForMainFrame):
2623         * UIProcess/efl/PageClientBase.cpp:
2624         (WebKit):
2625         * UIProcess/efl/PageClientBase.h:
2626         (PageClientBase):
2627         * UIProcess/qt/QtPageClient.h:
2628         * UIProcess/win/WebView.cpp:
2629         * UIProcess/win/WebView.h:
2630         (WebView):
2631
2632 2012-12-04  Andy Estes  <aestes@apple.com>
2633
2634         [WebKit2] WKWebProcessPlugInBrowserContextControllers should be treated as type WKBrowsingContextControllerType for encoding purposes
2635         https://bugs.webkit.org/show_bug.cgi?id=104063
2636
2637         Reviewed by Sam Weinig.
2638
2639         Objective-C message graphs can include browsing context controller
2640         objects, which are decoded as WKWebProcessPlugInBrowserContextControllers
2641         in the web process plug-in and as WKBrowsingContextControllers in the UI
2642         process. Ensure we correctly encode WKWebProcessPlugInBrowserContextControllers
2643         by treating them as type WKBrowsingContextControllerType.
2644
2645         * Shared/mac/ObjCObjectGraphCoders.mm:
2646         (WebKit::typeFromObject):
2647
2648 2012-12-04  Simon Fraser  <simon.fraser@apple.com>
2649
2650         Show a mini visualizer for the tile cache tiles
2651         https://bugs.webkit.org/show_bug.cgi?id=104053
2652
2653         Reviewed by Beth Dakin.
2654
2655         Plumb through a preference that controls the visibility of a tiled
2656         scrolling indicator, and parent that layer in the TiledCoreAnimationDrawingArea.
2657
2658         * Shared/WebPreferencesStore.h:
2659         * UIProcess/API/C/WKPreferences.cpp:
2660         (WKPreferencesSetTiledScrollingIndicatorVisible):
2661         (WKPreferencesGetTiledScrollingIndicatorVisible):
2662         * UIProcess/API/C/WKPreferencesPrivate.h:
2663         * WebProcess/WebPage/WebPage.cpp:
2664         (WebKit::WebPage::updatePreferences):
2665         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2666         (TiledCoreAnimationDrawingArea):
2667         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2668         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
2669         (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
2670         (WebKit::TiledCoreAnimationDrawingArea::mainFrameTiledBacking):
2671         (WebKit::TiledCoreAnimationDrawingArea::updateDebugInfoLayer):
2672
2673 2012-12-04  Anders Carlsson  <andersca@apple.com>
2674
2675         Set the visible process name before entering the sandbox
2676         https://bugs.webkit.org/show_bug.cgi?id=104030
2677         <rdar://problem/12800317>
2678
2679         Reviewed by Sam Weinig.
2680
2681         Pass the UI process name along as a process initialization parameter so we can set it
2682         before entering the sandbox. Remove the UI process name from WebProcessCreationParameters.
2683
2684         * Shared/WebProcessCreationParameters.cpp:
2685         (WebKit::WebProcessCreationParameters::encode):
2686         (WebKit::WebProcessCreationParameters::decode):
2687         * Shared/WebProcessCreationParameters.h:
2688         (WebProcessCreationParameters):
2689         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2690         (WebKit::connectToWebProcessServiceForWebKitDevelopment):
2691         (WebKit::createWebProcessService):
2692         (WebKit::createProcess):
2693         * UIProcess/mac/WebContextMac.mm:
2694         (WebKit::WebContext::platformInitializeWebProcess):
2695         * WebProcess/mac/WebProcessInitialization.h:
2696         (WebProcessInitializationParameters):
2697         * WebProcess/mac/WebProcessInitialization.mm:
2698         (WebKit::initializeWebProcess):
2699         * WebProcess/mac/WebProcessMac.mm:
2700         (WebKit::WebProcess::platformInitializeWebProcess):
2701         * WebProcess/mac/WebProcessMainMac.mm:
2702         (WebKit::WebProcessMain):
2703         * WebProcess/mac/WebProcessServiceEntryPoints.h:
2704         * WebProcess/mac/WebProcessServiceEntryPoints.mm:
2705         (WebKit::WebProcessServiceEventHandler):
2706         (initializeWebProcessForWebProcessServiceForWebKitDevelopment):
2707         * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
2708         (WebProcessServiceForWebKitDevelopmentEventHandler):
2709
2710 2012-12-03  Alexey Proskuryakov  <ap@apple.com>
2711
2712         [WK2] Track private browsing session explicitly
2713         <rdar://problem/12714532>
2714         https://bugs.webkit.org/show_bug.cgi?id=103953
2715
2716         Reviewed by Jessie Berlin.
2717
2718         * Shared/WebProcessCreationParameters.cpp: (WebKit::WebProcessCreationParameters::encode):
2719         Fixed a confusing ifdef - this code is inside PLATFORM(WIN), so PLATFORM(MAC)
2720         makes no sense.
2721
2722         * UIProcess/API/C/WKPreferences.cpp: (WKPreferencesSetPrivateBrowsingEnabled):
2723         This is the only place in WK2 where we can learn that private browsing got disabled -
2724         no other functions are called when there are no pages open.
2725
2726         * UIProcess/WebContext.h:
2727         * UIProcess/WebContext.cpp:
2728         (WebKit::WebContext::willStartUsingPrivateBrowsing):
2729         (WebKit::WebContext::willStopUsingPrivateBrowsing):
2730         Count the number of API calls. We only implement a single shared private browsing
2731         session, not one per page group as API implies. When private browsing gets disabled,
2732         we want to destroy its session.
2733
2734         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::updatePreferences):
2735         Ensure a private browsing session if the current page needs it.
2736
2737         * WebProcess/WebProcess.h:
2738         * WebProcess/WebProcess.messages.in:
2739         * WebProcess/WebProcess.cpp:
2740         (WebKit::WebProcess::ensurePrivateBrowsingSession):
2741         (WebKit::WebProcess::destroyPrivateBrowsingSession):
2742         Call through to WebFrameNetworkingContext.
2743
2744 2012-12-04  Yuni Jeong  <yhnet.jung@samsung.com>
2745
2746         [EFL][WK2] Add APIs to toggle plug-ins support.
2747         https://bugs.webkit.org/show_bug.cgi?id=101920
2748
2749         Reviewed by Gyuyoung Kim.
2750
2751         Add setting APIs to toggle plug-ins support and add corresponding API tests.
2752
2753         * UIProcess/API/efl/ewk_settings.cpp:
2754         (ewk_settings_plugins_enabled_set):
2755         (ewk_settings_plugins_enabled_get):
2756         * UIProcess/API/efl/ewk_settings.h:
2757         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2758         (TEST_F):
2759
2760 2012-12-04  Andras Becsi  <andras.becsi@digia.com>
2761
2762         [Qt][WK2] Do not override previously set flags of QQuickWebView when enabling drag&drop
2763         https://bugs.webkit.org/show_bug.cgi?id=103901
2764
2765         Reviewed by Jocelyn Turcotte.
2766
2767         Setting the specific flag instead of resetting all the flags
2768         when enabling QQuickItem::ItemAcceptsDrops.
2769         This fixes clipping of the contents of QQuickWebView.
2770
2771         * UIProcess/API/qt/qquickwebview.cpp:
2772         (QQuickWebViewPrivate::initialize):
2773
2774 2012-12-04  Carlos Garcia Campos  <cgarcia@igalia.com>
2775
2776         [GTK] Avoid unnecessary heap allocations during drag and drop operations
2777         https://bugs.webkit.org/show_bug.cgi?id=87938
2778
2779         Reviewed by Martin Robinson.
2780
2781         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2782         (webkitWebViewBaseDragDataReceived): Create DragData for the given
2783         DataObjectGtk in the stack.
2784         (webkitWebViewBaseDragMotion): Ditto.
2785         (webkitWebViewBaseDragDrop): Ditto.
2786
2787 2012-12-04  Jaehun Lim  <ljaehun.lim@samsung.com>
2788
2789         [EFL][WK2] Use consistent class names inside Ewk classes
2790         https://bugs.webkit.org/show_bug.cgi?id=103015
2791
2792         Reviewed by Gyuyoung Kim.
2793
2794         WebKit EFL doesn't use '_' in class names.
2795         This patch removes the remaining uses of '_' inside Ewk classes.
2796
2797         * UIProcess/API/efl/EwkViewImpl.cpp:
2798         (EwkViewImpl::EwkViewImpl):
2799         (EwkViewImpl::~EwkViewImpl):
2800         (EwkViewImpl::informIconChange):
2801         (EwkViewImpl::requestColorPicker):
2802         (EwkViewImpl::requestPopupMenu):
2803         * UIProcess/API/efl/ewk_back_forward_list.cpp:
2804         (EwkBackForwardList::nextItem):
2805         (EwkBackForwardList::previousItem):
2806         (EwkBackForwardList::currentItem):
2807         (EwkBackForwardList::itemAt):
2808         (EwkBackForwardList::getFromCacheOrCreate):
2809         (EwkBackForwardList::createEinaList):
2810         * UIProcess/API/efl/ewk_back_forward_list_private.h:
2811         (EwkBackForwardList):
2812         * UIProcess/API/efl/ewk_context.cpp:
2813         (EwkContext::EwkContext):
2814         (EwkContext::cookieManager):
2815         (EwkContext::databaseManager):
2816         (EwkContext::ensureFaviconDatabase):
2817         (EwkContext::faviconDatabase):
2818         (EwkContext::storageManager):
2819         * UIProcess/API/efl/ewk_context_private.h:
2820         (EwkContext):
2821         * UIProcess/API/efl/ewk_cookie_manager.cpp:
2822         (EwkCookieManager::cookiesDidChange):
2823         (getAcceptPolicyCallback):
2824         (getHostnamesWithCookiesCallback):
2825         * UIProcess/API/efl/ewk_cookie_manager_private.h:
2826         (EwkCookieManager::create):
2827         * UIProcess/API/efl/ewk_database_manager.cpp:
2828         (EwkDatabaseManager::createOriginList):
2829         (getDatabaseOriginsCallback):
2830         * UIProcess/API/efl/ewk_database_manager_private.h:
2831         (EwkDatabaseManager):
2832         * UIProcess/API/efl/ewk_favicon_database.cpp:
2833         (EwkFaviconDatabase::didChangeIconForPageURL):
2834         (EwkFaviconDatabase::iconDataReadyForPageURL):
2835         * UIProcess/API/efl/ewk_popup_menu.cpp:
2836         (EwkPopupMenu::EwkPopupMenu):
2837         (EwkPopupMenu::~EwkPopupMenu):
2838         * UIProcess/API/efl/ewk_storage_manager.cpp:
2839         (EwkStorageManager::createOriginList):
2840         (getStorageOriginsCallback):
2841         * UIProcess/API/efl/ewk_storage_manager_private.h:
2842         (EwkStorageManager):
2843
2844 2012-12-03  Huang Dongsung  <luxtella@company100.net>
2845
2846         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
2847         https://bugs.webkit.org/show_bug.cgi?id=103843
2848
2849         Reviewed by Noam Rosenthal.
2850
2851         Remove updateViewport() in LayerTreeCoordinatorProxy::setRootCompositingLayer()
2852         because LayerTreeCoordinatorProxy::didRenderFrame() is always called after
2853         setting the root layer. There is no behaviour changes because setting the root
2854         layer isn't actually applied to TextureMapperLayer until DidRenderFrame message
2855         is received.
2856
2857         This is in preparation for refactoring TextureMapper to work in an actor
2858         model (http://webkit.org/b/103854).
2859
2860         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2861         (WebKit::LayerTreeCoordinatorProxy::setRootCompositingLayer):
2862         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2863         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
2864
2865 2012-12-03  Anders Carlsson  <andersca@apple.com>
2866
2867         Make it easier to add more web process initialization parameters
2868         https://bugs.webkit.org/show_bug.cgi?id=103942
2869
2870         Reviewed by Andreas Kling.
2871
2872         Add a WebProcessInitializationParameters struct to make it easier to add more initialization
2873         parameters in the future. Also, fix naming and spelling errors.
2874
2875         * WebProcess/mac/WebProcessInitialization.h:
2876         (WebProcessInitializationParameters):
2877         (WebKit):
2878         * WebProcess/mac/WebProcessInitialization.mm:
2879         (WebKit::initializeWebProcess):
2880         * WebProcess/mac/WebProcessMainMac.mm:
2881         (WebKit::WebProcessMain):
2882         * WebProcess/mac/WebProcessServiceEntryPoints.h:
2883         * WebProcess/mac/WebProcessServiceEntryPoints.mm:
2884         (WebKit::WebProcessServiceEventHandler):
2885         (webProcessServiceMain):
2886         (initializeWebProcessForWebProcessServiceForWebKitDevelopment):
2887         * WebProcessService/WebProcessServiceMain.mm:
2888         (main):
2889         * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
2890         (WebProcessServiceForWebKitDevelopmentEventHandler):
2891
2892 2012-12-03  Tim Horton  <timothy_horton@apple.com>
2893
2894         PDFPlugin: <embed> and <object> PDFs affect their parent frame's page scale
2895         https://bugs.webkit.org/show_bug.cgi?id=103286
2896         <rdar://problem/12752315>
2897
2898         Reviewed by Dan Bernstein.
2899
2900         Style fixes after http://trac.webkit.org/changeset/136316.
2901
2902         * WebProcess/Plugins/PDF/PDFPlugin.mm:
2903         (WebKit::PDFPlugin::isFullFramePlugin):
2904
2905 2012-12-03  Alexis Menard  <alexis@webkit.org>
2906
2907         [Mac] Enable CSS3 background-position offset by default.
2908         https://bugs.webkit.org/show_bug.cgi?id=103905
2909
2910         Reviewed by Simon Fraser.
2911
2912         Turn the flag on by default.
2913
2914         * Configurations/FeatureDefines.xcconfig:
2915
2916 2012-12-03  Ryuan Choi  <ryuan.choi@samsung.com>
2917
2918         [EFL][WK2] Add contents,size,changed signal to the ewk_view API
2919         https://bugs.webkit.org/show_bug.cgi?id=103094
2920
2921         Reviewed by Kenneth Rohde Christiansen.
2922
2923         This patch emits signal to let applications know contents size.
2924         Applications can use this signal to give some additional behavior such as
2925         minimap, external scroll for quick movement.
2926
2927         * UIProcess/API/efl/EwkViewCallbacks.h: Added contents,size,changed signal.
2928         * UIProcess/API/efl/EwkViewImpl.cpp: Removed dead code.
2929         * UIProcess/API/efl/EwkViewImpl.h: Ditto.
2930         (EwkViewImpl):
2931         * UIProcess/API/efl/ewk_view.h: Added test case.
2932         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2933         (onContentsSizeChanged):
2934         (TEST_F):
2935         * UIProcess/efl/PageClientDefaultImpl.cpp: Emitted contents,size,changed signal.
2936         (WebKit::PageClientDefaultImpl::didChangeContentsSize):
2937         * UIProcess/efl/PageClientLegacyImpl.cpp: Ditto.
2938         (WebKit::PageClientLegacyImpl::didChangeContentsSize):
2939         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2940         (WebKit::WebChromeClient::contentsSizeChanged):
2941         Sended DidChangeContentsSize message although TILED_BACKINGSTORE is disabled.
2942
2943 2012-12-03  Csaba Osztrogonác  <ossy@webkit.org>
2944
2945         Unreviewed fix after r136292 to make GIT-SVN repositories happy.
2946
2947         * win/WebKit2ExportGenerator.vcproj: Added property svn:eol-style.
2948         * win/WebKit2ExportGeneratorCommon.vsprops: Added property svn:eol-style.
2949         * win/WebKit2ExportGeneratorDebug.vsprops: Added property svn:eol-style.
2950         * win/WebKit2ExportGeneratorDebugAll.vsprops: Added property svn:eol-style.
2951         * win/WebKit2ExportGeneratorDebugCairoCFLite.vsprops: Added property svn:eol-style.
2952         * win/WebKit2ExportGeneratorPostBuild.cmd: Added property svn:eol-style.
2953         * win/WebKit2ExportGeneratorPreBuild.cmd: Added property svn:eol-style.
2954         * win/WebKit2ExportGeneratorProduction.vsprops: Added property svn:eol-style.
2955         * win/WebKit2ExportGeneratorRelease.vsprops: Added property svn:eol-style.
2956         * win/WebKit2ExportGeneratorReleaseCairoCFLite.vsprops: Added property svn:eol-style.
2957
2958 2012-12-03  Michael Brüning  <michael.bruning@digia.com>
2959
2960         [Qt][WK2] New resize tests fail
2961         https://bugs.webkit.org/show_bug.cgi?id=103875
2962
2963         Reviewed by Jocelyn Turcotte.
2964
2965         Removes reference to unused viewportSpy, adds clearing the sizeSpy to the init method instead.   
2966
2967         * UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml:
2968
2969 2012-12-03  Joaquim Rocha  <jrocha@igalia.com>
2970
2971         [GTK] Custom URI schemes stop working on Epiphany using WebKit2 after killing the web process
2972         https://bugs.webkit.org/show_bug.cgi?id=103729
2973
2974         Reviewed by Carlos Garcia Campos.
2975
2976         When a URI scheme is registered and the WebProcess is killed,
2977         those schemes would not work anymore after the process is relaunched.
2978
2979         This was observed in Epiphany and possibly affects any port that
2980         uses libsoup.
2981
2982         * Shared/WebProcessCreationParameters.cpp:
2983         (WebKit::WebProcessCreationParameters::encode): Encode the registered URI schemes.
2984         (WebKit::WebProcessCreationParameters::decode): Decode the registered URI schemes.
2985         * Shared/WebProcessCreationParameters.h: Add the urlSchemesRegistered Vector to hold the registered URI schemes.
2986         (WebProcessCreationParameters):
2987         * UIProcess/efl/WebContextEfl.cpp:
2988         (WebKit::WebContext::platformInitializeWebProcess): Assign the parameters.urlSchemesRegistered from the URI schemes
2989         registered in the WebSoupRequestManagerProxy and removed the notImplemented() call.
2990         * UIProcess/gtk/WebContextGtk.cpp:
2991         (WebKit::WebContext::platformInitializeWebProcess): Assign the parameters.urlSchemesRegistered from the URI schemes
2992         registered in the WebSoupRequestManagerProxy.
2993         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
2994         (WebKit::WebSoupRequestManagerProxy::registerURIScheme): Add the given scheme to the m_registeredURISchemes Vector.
2995         * UIProcess/soup/WebSoupRequestManagerProxy.h:
2996         (WebKit::WebSoupRequestManagerProxy::registeredURISchemes): Return the m_registeredURISchemes.
2997         (WebSoupRequestManagerProxy): Define the m_registeredURISchemes to hold the schemes that are registered.
2998         * WebProcess/soup/WebProcessSoup.cpp:
2999         (WebKit::WebProcess::platformInitializeWebProcess): Call m_soupRequestManager.registerURIScheme for each URI scheme
3000         found in the parameters.
3001         * WebProcess/soup/WebSoupRequestManager.h: Make registerURIScheme public.
3002         (WebSoupRequestManager):
3003
3004 2012-12-03  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3005
3006         CSS Device Adaptation: window.innerWidth returns wrong value if CSS viewport descriptors are applied
3007         https://bugs.webkit.org/show_bug.cgi?id=103737
3008
3009         Reviewed by Kenneth Rohde Christiansen.
3010
3011         ViewportStyleResolver used frame view visibleContentRect size as initial viewport size.
3012         This however caused a problem when page enabled/disabled CSS stylesheets, having viewport
3013         descriptors. Viewport descriptors from new stylesheet were applied to the visibleContentRect
3014         affected already by the viewport descriptors from the previous stylesheet.
3015
3016         New 'initialViewportSize' property (http://dev.w3.org/csswg/css-device-adapt/#initial-viewport)
3017         was added to frame view so that viewport descriptors can always be applied to the reliable
3018         viewport size.
3019
3020         Both newly added 'initialViewportSize' property and 'fixedVisibleContentRect' property
3021         are assigned appropriately now in WebPage::sendViewportAttributesChanged().
3022
3023         * WebProcess/WebPage/WebPage.cpp:
3024         (WebKit::WebPage::sendViewportAttributesChanged):
3025
3026 2012-12-02  Huang Dongsung  <luxtella@company100.net>
3027
3028         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
3029         https://bugs.webkit.org/show_bug.cgi?id=103843
3030
3031         Reviewed by Noam Rosenthal.
3032
3033         Send messages to the UI process by the tree order.
3034         This is in preparation for refactoring TextureMapper to work in an actor
3035         model (http://webkit.org/b/103854).
3036
3037         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3038         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
3039
3040 2012-12-02  Ryuan Choi  <ryuan.choi@gmail.com>
3041
3042         [EFL][WK2] Update comments of header files which mentions deprecated API
3043         https://bugs.webkit.org/show_bug.cgi?id=103718
3044
3045         Reviewed by Gyuyoung Kim.
3046
3047         Updated comments which mentions XXX_unref() which was replaced to ewk_object_unref()
3048
3049         * UIProcess/API/efl/ewk_context.h:
3050         * UIProcess/API/efl/ewk_database_manager.h:
3051         * UIProcess/API/efl/ewk_storage_manager.h:
3052
3053 2012-12-02  Huang Dongsung  <luxtella@company100.net>
3054
3055         REGRESSION(r134376): ASSERT(!m_mainBackingStore) hits in CoordinatedGraphicsLayer::syncImageBacking().
3056         https://bugs.webkit.org/show_bug.cgi?id=103845
3057
3058         Reviewed by Noam Rosenthal.
3059
3060         flushCompositingStateForThisLayerOnly() calls syncImageBacking() before calling
3061         updateContentBuffers(). It means there can be the moment that
3062         CoordinatedGraphicsLayer has m_mainBackingStore although
3063         shouldHaveBackingStore() return false.
3064         This patch changes syncImageBacking() to check shouldHaveBackingStore() instead
3065         of m_mainBackingStore.
3066
3067         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3068         (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
3069         (WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
3070         (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
3071         (WebCore::CoordinatedGraphicsLayer::shouldHaveBackingStore):
3072         (WebCore):
3073         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
3074         (CoordinatedGraphicsLayer):
3075
3076 2012-12-02  Seokju Kwon  <seokju.kwon@gmail.com>
3077
3078         Rename WebSocketServerGtk.cpp as WebSocketServerSoup.cpp
3079         https://bugs.webkit.org/show_bug.cgi?id=103743
3080
3081         Reviewed by Gustavo Noronha Silva.
3082
3083         EFL port is using a GSocket based implementation as well.
3084         WebSocketServerSoup can be used together.
3085
3086         * GNUmakefile.list.am:
3087         * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp: Renamed from Source/WebKit2/UIProcess/InspectorServer/gtk/WebSocketServerGtk.cpp.
3088         (WebKit):
3089         (WebKit::connectionCallback):
3090         (WebKit::WebSocketServer::platformInitialize):
3091         (WebKit::WebSocketServer::platformListen):
3092         (WebKit::WebSocketServer::platformClose):
3093
3094 2012-12-02  Christophe Dumez  <christophe.dumez@intel.com>
3095
3096         [CoordinatedGraphics] LayerTreeRenderer::removeImageBacking() calls HashMap::find() twice
3097         https://bugs.webkit.org/show_bug.cgi?id=103815
3098
3099         Reviewed by Noam Rosenthal.
3100
3101         Call HashMap::take() in LayerTreeRenderer::removeImageBacking()
3102         to avoid calling HashMap::find() twice. find() was called once
3103         explicitly to get an iterator and a second time to remove the
3104         value from the value from the HashMap. We could have used
3105         remove(iterator) instead of remove(key) but using take() results
3106         in simpler code.
3107
3108         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3109         (WebKit::LayerTreeRenderer::removeImageBacking):
3110
3111 2012-12-02  Huang Dongsung  <luxtella@company100.net>
3112
3113         Coordinated Graphics: Images disappear randomly
3114         https://bugs.webkit.org/show_bug.cgi?id=103522
3115
3116         Reviewed by Kenneth Rohde Christiansen.
3117
3118         Currently, we delete layers before synchronizing layer states of layers. It
3119         causes flash. This patch deletes layers after the synchronization.
3120
3121         In addiation, this patch removes updateViewport() in
3122         LayerTreeCoordinatorProxy::deleteCompositingLayer() because
3123         LayerTreeCoordinatorProxy::didRenderFrame() is always called after
3124         deleting layers.
3125
3126         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
3127         (WebKit::LayerTreeCoordinatorProxy::deleteCompositingLayer):
3128         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3129         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
3130
3131 2012-12-02  Brent Fulgham  <bfulgham@webkit.org>
3132
3133         [Windows, WinCairo] Revise export definitions to match mac.
3134         https://bugs.webkit.org/show_bug.cgi?id=103687
3135
3136         Reviewed by Tim Horton.
3137
3138         Update export definition files to use the same feature exclusion
3139         macros as other generated ports.
3140
3141         * win/WebKit2.def.in: Added additional build macro guards.
3142
3143 2012-12-02  No'am Rosenthal  <noam@webkit.org>
3144
3145         [CoordinatedGraphics] Crash in TextureMapperLayer::setBackingStore()
3146         https://bugs.webkit.org/show_bug.cgi?id=103714
3147
3148         Reviewed by Kenneth Rohde Christiansen.
3149
3150         Remove a layer from the m_pendingSyncBackingStores map when it is deleted.
3151
3152         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3153         (WebKit::LayerTreeRenderer::deleteLayer):
3154
3155 2012-12-02  Yael Aharon  <yael.aharon@intel.com>
3156
3157         [EFL][WK2] MiniBrowser should have a legacy mode
3158         https://bugs.webkit.org/show_bug.cgi?id=103679
3159
3160         Reviewed by Kenneth Rohde Christiansen.
3161
3162         We need a way to create a web view in legacy mode, while still using the default context.
3163         WKViewCreate creates a legacy view, so change it to create a default context if a context
3164         was not passed.
3165
3166         * UIProcess/API/efl/ewk_view.cpp:
3167         (ewk_view_base_add):
3168
3169 2012-12-01  Tim Horton  <timothy_horton@apple.com>
3170
3171         PDFPlugin: Support PDF form editing in <iframe>s
3172         https://bugs.webkit.org/show_bug.cgi?id=103287
3173         <rdar://problem/10326917>
3174
3175         Reviewed by Dan Bernstein.
3176
3177         PDFPlugin form editing depends on having a Document that has the same
3178         size and position as the plugin; this is true not only in the full-main-frame
3179         case, but also in the <iframe> case. Therefore, we can enable form editing
3180         for <iframe> PDFPlugins.
3181
3182         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3183         (WebKit::PDFPlugin::supportsForms): Support form editing whenever
3184         our Document's widget is our PluginView (which will only be true in the
3185         full-main-frame or <iframe> case).
3186
3187 2012-12-01  Tim Horton  <timothy_horton@apple.com>
3188
3189         PDFPlugin: <embed> and <object> PDFs affect their parent frame's page scale
3190         https://bugs.webkit.org/show_bug.cgi?id=103286
3191         <rdar://problem/12752315>
3192
3193         Reviewed by Dan Bernstein.
3194
3195         Detecting whether or not a PDFPlugin is a full-page plugin or not is not
3196         as simple as checking isMainFrame(), because <embed> and <object> will
3197         cause PDFPlugin to live in the main frame, while still not being full-page.
3198         We also have to check that the main frame's document is a PluginDocument,
3199         and whether that PluginDocument's PluginWidget is our PDFPlugin's PluginView.
3200
3201         * WebProcess/Plugins/PDF/PDFPlugin.h:
3202         (PDFPlugin): Add isFullFramePlugin.
3203         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3204         (WebKit::PDFPlugin::isFullFramePlugin): Check whether the main frame is
3205         backed by a PluginDocument, and that that PluginDocument corresponds
3206         to this PDFPlugin.
3207         (WebKit::PDFPlugin::handlesPageScaleFactor): Use isFullFramePlugin.
3208         (WebKit::PDFPlugin::supportsForms): Use isFullFramePlugin.
3209
3210 2012-12-01  Tim Horton  <timothy_horton@apple.com>
3211
3212         [wk2] Use spoolRect instead of snapshots for print preview
3213         https://bugs.webkit.org/show_bug.cgi?id=103798
3214         <rdar://problem/12686749>
3215
3216         Reviewed by Sam Weinig.
3217
3218         Revert to using spoolRect instead of snapshotting for printing; this was a bogus
3219         change I made in http://trac.webkit.org/changeset/133935 which was irrelevant to
3220         the core of that change, and incorrectly disregards the Frame parameter passed to
3221         beginPrinting, instead using the WebPage's current Frame.
3222
3223         * WebProcess/WebPage/WebPage.cpp:
3224         (WebKit::WebPage::drawRectToImage):
3225
3226 2012-11-30  Anders Carlsson  <andersca@apple.com>
3227
3228         Always listen for the DidFirstLayout layout milestone
3229         https://bugs.webkit.org/show_bug.cgi?id=103795
3230         <rdar://problem/12790268>
3231
3232         Reviewed by Dan Bernstein.
3233
3234         The DidFirstLayout layout milestone is used to determine when to unfreeze the layer tree, so we always want to listen for it.
3235
3236         * WebProcess/WebPage/WebPage.cpp:
3237         (WebKit::WebPage::WebPage):
3238
3239 2012-11-30  Pierre Rossi  <pierre.rossi@gmail.com>
3240
3241         [Qt] Unreviewed speculative Mac build fix after r136232
3242
3243         cleanup an oversight from r136235
3244
3245         * PluginProcess.pro: s/webkit/webkitwidgets/
3246
3247 2012-11-30  Brent Fulgham  <bfulgham@webkit.org>
3248
3249         [Windows, WinCairo] Generate library export symbol file.
3250         https://bugs.webkit.org/show_bug.cgi?id=103687
3251
3252         Reviewed by Tim Horton.
3253
3254         Generate the export definition file based on the compile options
3255         and port settings. Get rid of the old hand-written file, and use
3256         a revised master input file that allows using conditional
3257         settings to generate the output, much like the Mac and other
3258         ports do.
3259
3260         * win/WebKit2.def: Removed.
3261         * win/WebKit2.def.in: Added.
3262         * win/WebKit2Apple.vsprops:
3263         * win/WebKit2CFLite.def: Removed.
3264         * win/WebKit2CFLite.vsprops:
3265         * win/WebKit2Common.vsprops:
3266         * win/WebKit2ExportGenerator.vcproj: Added.
3267         * win/WebKit2ExportGeneratorCommon.vsprops: Added.
3268         * win/WebKit2ExportGeneratorDebug.vsprops: Added.
3269         * win/WebKit2ExportGeneratorDebugAll.vsprops: Added.
3270         * win/WebKit2ExportGeneratorDebugCairoCFLite.vsprops: Added.
3271         * win/WebKit2ExportGeneratorPostBuild.cmd: Added.
3272         * win/WebKit2ExportGeneratorPreBuild.cmd: Added.
3273         * win/WebKit2ExportGeneratorProduction.vsprops: Added.
3274         * win/WebKit2ExportGeneratorRelease.vsprops: Added.
3275         * win/WebKit2ExportGeneratorReleaseCairoCFLite.vsprops: Added.
3276
3277 2012-11-30  Tim Horton  <timothy_horton@apple.com>
3278
3279         (Simple)PDFPlugin: Support conversion of PostScript documents
3280         https://bugs.webkit.org/show_bug.cgi?id=103289
3281         <rdar://problem/10235708>
3282
3283         Reviewed by Dan Bernstein.
3284
3285         SimplePDFPlugin (and PDFPlugin) should support converting PostScript files
3286         to PDF before handing them off to their respective backends.
3287
3288         As PDFPlugin inherits from SimplePDFPlugin, it gets the new functionality automatically.
3289
3290         * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Add convertPostScriptDataIfNeeded(), and m_isPostScript.
3291         * WebProcess/Plugins/PDF/SimplePDFPlugin.mm:
3292         (WebKit::SimplePDFPlugin::pluginInfo): SimplePDFPlugin should claim to support PDF and PostScript.
3293         (WebKit::convertPostScriptDataSourceToPDF): PS->PDF conversion code, copied from PDFViewController (which I intend to remove).
3294         (WebKit::SimplePDFPlugin::convertPostScriptDataIfNeeded): Check if the loaded data represents a PS file; if so, convert it.
3295         (WebKit::SimplePDFPlugin::streamDidReceiveResponse): Check if the loaded data is of MIME type application/postscript, and store that in m_isPostScript.
3296         (WebKit::SimplePDFPlugin::streamDidFinishLoading): Call convertPostScriptDataIfNeeded when we finish loading.
3297         (WebKit::SimplePDFPlugin::manualStreamDidReceiveResponse): Ditto from streamDidReceiveResponse.
3298         (WebKit::SimplePDFPlugin::manualStreamDidFinishLoading): Ditto from streamDidFinishLoading.
3299         * WebProcess/WebPage/WebPage.cpp:
3300         (WebKit::WebPage::createPlugin): Use (Simple)PDFPlugin for PostScript files too.
3301
3302 2012-11-30  Tim Horton  <timothy_horton@apple.com>
3303
3304         PDFPlugin: "Show Definition" context menu item should be implemented
3305         https://bugs.webkit.org/show_bug.cgi?id=103389
3306         <rdar://problem/12710751>
3307
3308         Reviewed by Dan Bernstein.
3309
3310         Call existing dictionary popup code when the context menu "Show Definition" item is selected.
3311
3312         * WebProcess/Plugins/PDF/PDFPlugin.h:
3313         (PDFPlugin): Add showDefinitionForAttributedString and convertFromPDFViewToRootView.
3314         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3315         (-[WKPDFLayerControllerDelegate showDefinitionForAttributedString:atPoint:]): Forward this call to PDFPlugin.
3316         (WebKit::PDFPlugin::showDefinitionForAttributedString): Create a DictionaryPopupInfo with the necessary information.
3317         Ask WebPageProxy to show the dictionary popup.
3318         (WebKit::PDFPlugin::convertFromPDFViewToRootView): Convert a point from PDFLayerController space to the root view space.
3319
3320 2012-11-30  Simon Hausmann  <simon.hausmann@digia.com>
3321
3322         Unreviewed trivial Qt build fix:
3323
3324         Always link against WebProcess against QT += webkit and use webkitwidgets only if available.
3325
3326         * WebProcess.pro:
3327
3328 2012-11-30  Simon Hausmann  <simon.hausmann@digia.com>, Pierre Rossi  <pierre.rossi@digia.com>
3329
3330         [Qt] Separate Qt WebKit into Qt WebKit and Qt WebKit Widgets
3331         https://bugs.webkit.org/show_bug.cgi?id=99314
3332
3333         Reviewed by Tor Arne Vestbø.
3334
3335         This big change separates QtWebKit into QtWebKit and QtWebKitWidgets as
3336         shared libraries.
3337
3338         It's a big refactoring that mostly involves moving WebCore dependent
3339         code into QtWebKit and accessing it through exported QWebFrameAdapter
3340         and QWebPageAdapter classes.
3341
3342
3343         * UIProcess/API/qt/tests/inspectorserver/inspectorserver.pro:
3344         * UIProcess/API/qt/tests/publicapi/publicapi.pro:
3345         * UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
3346         * UIProcess/API/qt/tests/qmltests/WebView.pro:
3347         * UIProcess/API/qt/tests/qquickwebview/qquickwebview.pro:
3348         * UIProcess/API/qt/tests/qrawwebview/qrawwebview.pro:
3349         * UIProcess/API/qt/tests/tests.pri:
3350
3351 2012-11-30  Joone Hur  <joone.hur@intel.com>
3352
3353         [EFL]Drawing artifacts while resizing the view
3354         https://bugs.webkit.org/show_bug.cgi?id=101288
3355
3356         Reviewed by Kenneth Rohde Christiansen.
3357
3358         An Evas GL surface is recreated when the window is resized, but the update of the surface is 
3359         asynchronously done, which gives Evas a chance of painting the empty surface on the screen.
3360         As a result, the flickering problem happens while resizing the view.
3361         So this patch allows to create an Evas GL surface synchronously with the update of the surface.
3362
3363         * UIProcess/API/efl/EwkViewImpl.cpp:
3364         (EwkViewImpl::EwkViewImpl): Set m_pendingSurfaceResize to false.
3365         (EwkViewImpl::displayTimerFired): Create an Evas GL surface.
3366         * UIProcess/API/efl/EwkViewImpl.h:
3367         (EwkViewImpl::setNeedsSurfaceResize): Added.
3368         (EwkViewImpl):
3369         * UIProcess/API/efl/ewk_view.cpp:
3370         (_ewk_view_smart_calculate): Set m_pendingSurfaceResize to true.
3371
3372 2012-11-30  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3373
3374         [WK2] TiledBackingStore: Frame view re-layouts with wrong Fixed Visible Content Rect.
3375         https://bugs.webkit.org/show_bug.cgi?id=103428
3376
3377         Reviewed by Kenneth Rohde Christiansen.
3378
3379         Set now appropriate fixed visible content rect before layout when viewport
3380         attributes change.
3381
3382         * UIProcess/PageViewportController.cpp:
3383         (WebKit::PageViewportController::syncVisibleContents):
3384         (WebKit::PageViewportController::didChangeViewportAttributes):
3385         * WebProcess/WebPage/WebPage.cpp:
3386         (WebKit::WebPage::sendViewportAttributesChanged):
3387
3388 2012-11-30  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
3389
3390         [EFL] Gardening after r136031 and r136142
3391         https://bugs.webkit.org/show_bug.cgi?id=103734
3392
3393         Unreviewed, API test EWK2UnitTestBase.ewk_view_setting_encoding_custom
3394         is asserting after r136031. So, disabling the test until bug 103732 is
3395         fixed.
3396
3397         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3398         (TEST_F):
3399
3400 2012-11-30  Zeno Albisser  <zeno@webkit.org>
3401
3402         [Qt] Enable WebGL by default.
3403         https://bugs.webkit.org/show_bug.cgi?id=103731
3404
3405         Reviewed by Simon Hausmann.
3406
3407         * UIProcess/API/qt/qquickwebview.cpp:
3408         (QQuickWebViewPrivate::initialize):
3409
3410 2012-11-30  Mihai Maerean  <mmaerean@adobe.com>
3411
3412         [CSSRegions] when WebKit uses V8, there should be a single variable to store if the CSS Regions feature is enabled
3413         https://bugs.webkit.org/show_bug.cgi?id=101192
3414
3415         Reviewed by Hajime Morita.
3416
3417         Removed the CSS Regions flag in Settings and switched to using the new flag I have added in RuntimeEnabledFeatures.
3418
3419         Tests: No new tests because there is no functional change.
3420
3421         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3422         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
3423         (WebKit::InjectedBundle::setCSSRegionsEnabled):
3424         (WebKit):
3425         * WebProcess/InjectedBundle/InjectedBundle.h:
3426         (InjectedBundle):
3427         * WebProcess/WebPage/WebPage.cpp:
3428         (WebKit::WebPage::updatePreferences):
3429
3430 2012-11-29  Tim Horton  <timothy_horton@apple.com>
3431
3432         PDFPlugin: Only plain text can be copied out of PDFs
3433         https://bugs.webkit.org/show_bug.cgi?id=103591
3434         <rdar://problem/12555161>
3435
3436         Reviewed by Alexey Proskuryakov.
3437
3438         Don't write zero-length data to the pasteboard, just skip the item.
3439
3440         As mentioned in the comment, we don't expect this to come up, and would like to know if it does,
3441         so we assert that it doesn't happen in debug builds.
3442
3443         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3444         (WebKit::PDFPlugin::writeItemsToPasteboard):
3445
3446 2012-11-29  Martin Robinson  <mrobinson@igalia.com>
3447
3448         [GTK] [WebKit2] WebKitWebViewBase creates a GL context for the redirected XComposite window crashing WebKit in Xvfb
3449         https://bugs.webkit.org/show_bug.cgi?id=103476
3450
3451         Reviewed by Alejandro G. Castro.
3452
3453         Create the RedirectedXCompositeWindow with an argument specifying that it
3454         should never have a GLContext backing it.
3455
3456         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3457         (_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate):
3458
3459 2012-11-29  Rafael Weinstein  <rafaelw@chromium.org>
3460
3461         [HTMLTemplateElement] Add feature flag
3462         https://bugs.webkit.org/show_bug.cgi?id=103694
3463
3464         Reviewed by Adam Barth.
3465
3466         This flag will guard the implementation of the HTMLTemplateElement.
3467         http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/templates/index.html
3468
3469         * Configurations/FeatureDefines.xcconfig:
3470
3471 2012-11-29  Alexey Proskuryakov  <ap@apple.com>
3472
3473         [WK2] Forward cookie jar calls to&nbs