1 2014-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
3 Unreviewed. Fix GTK+ build with CUSTOM_PROTOCOL enabled after r162449.
5 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h:
6 Use override instead of OVERRIDE.
8 2014-01-22 Koop Mast <kwm@FreeBSD.org>
10 Build fixes for FreeBSD.
11 https://bugs.webkit.org/show_bug.cgi?id=126779
13 Reviewed by Csaba Osztrogonác.
15 * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
16 (WebKit::PluginProcessProxy::scanPlugin):
18 2014-01-22 Jinwoo Song <jinwoo7.song@samsung.com>
20 [EFL][WK2] Use std::function in the rest of EFL's WorkQueue implementation
21 https://bugs.webkit.org/show_bug.cgi?id=127397
23 Reviewed by Anders Carlsson.
25 Move to using std::function and move semantics in WorkQueue::registerSocketEventHandler
26 and DispatchQueue::setSocketEventHandler.
28 * Platform/IPC/unix/ConnectionUnix.cpp:
29 (IPC::Connection::open):
30 * Platform/WorkQueue.h:
31 * Platform/efl/DispatchQueueEfl.cpp:
32 (DispatchQueue::setSocketEventHandler):
33 * Platform/efl/DispatchQueueEfl.h:
34 * Platform/efl/WorkQueueEfl.cpp:
35 (WorkQueue::registerSocketEventHandler):
37 2014-01-21 Tim Horton <timothy_horton@apple.com>
39 [wk2] De-.get()ify receivers of Objective-C messages
40 https://bugs.webkit.org/show_bug.cgi?id=127398
42 Reviewed by Sam Weinig.
44 RetainPtr does the right thing when you use it as the
45 receiver of an Obj-C message, so we don't need .get().
47 Long and useless file list elided.
49 2014-01-21 Brady Eidson <beidson@apple.com>
51 The IDB backing store put() method shouldn't call IDB callbacks directly
52 https://bugs.webkit.org/show_bug.cgi?id=127399
54 Reviewed by Beth Dakin.
56 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
57 (WebKit::WebIDBServerConnection::put):
58 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
60 2014-01-21 Anders Carlsson <andersca@apple.com>
64 * UIProcess/API/Cocoa/WKProcessClassConfiguration.mm:
66 2014-01-21 Jinwoo Song <jinwoo7.song@samsung.com>
68 [EFL][WK2] Use nanoseconds in TimerWorkItem class consistently
69 https://bugs.webkit.org/show_bug.cgi?id=127263
71 Reviewed by Gyuyoung Kim.
73 After r162276 and r162300, TimerWorkItem is getting nanoseconds as parameter.
74 So it would be better to use nanoseconds in TimerWorkItem for consistency.
76 * Platform/efl/DispatchQueueEfl.cpp:
77 (DispatchQueue::performTimerWork):
78 (DispatchQueue::insertTimerWorkItem):
79 (DispatchQueue::getNextTimeOut):
80 * Platform/efl/DispatchQueueWorkItemEfl.h:
81 (TimerWorkItem::create):
82 (TimerWorkItem::expirationTimeNanoSeconds):
83 (TimerWorkItem::hasExpired):
84 (TimerWorkItem::TimerWorkItem):
86 2014-01-21 Tim Horton <timothy_horton@apple.com>
88 Don't copy ViewGestureGeometryCollector.messages.in into the WebProcess bundle.
90 Reviewed by Simon Fraser.
92 * WebKit2.xcodeproj/project.pbxproj:
94 2014-01-21 Anders Carlsson <andersca@apple.com>
96 Add a WKProcessClassConfiguration class
97 https://bugs.webkit.org/show_bug.cgi?id=127378
98 <rdar://problem/15875413>
100 Reviewed by Dan Bernstein.
102 * UIProcess/API/Cocoa/WKProcessClassConfiguration.h: Added.
103 * UIProcess/API/Cocoa/WKProcessClassConfiguration.mm: Added.
104 (-[WKProcessClassConfiguration copyWithZone:]):
105 * UIProcess/API/Cocoa/WKProcessClassConfigurationPrivate.h: Added.
106 * WebKit2.xcodeproj/project.pbxproj:
108 2014-01-21 Tim Horton <timothy_horton@apple.com>
110 Make ViewGestureController Obj-C++
111 https://bugs.webkit.org/show_bug.cgi?id=127385
113 Reviewed by Dean Jackson.
115 * UIProcess/mac/ViewGestureController.mm: Renamed from Source/WebKit2/UIProcess/mac/ViewGestureController.cpp.
116 * WebKit2.xcodeproj/project.pbxproj:
118 2014-01-21 Anders Carlsson <andersca@apple.com>
120 Make all the WebKit2 headers private and move Cocoa UIProcess API headers to a Deprecated group
121 https://bugs.webkit.org/show_bug.cgi?id=127374
123 Reviewed by Dan Bernstein.
125 * WebKit2.xcodeproj/project.pbxproj:
127 2014-01-21 Commit Queue <commit-queue@webkit.org>
129 Unreviewed, rolling out r162452.
130 http://trac.webkit.org/changeset/162452
131 https://bugs.webkit.org/show_bug.cgi?id=127366
133 broke a few tests on all Mac WebKit1 bots (Requested by
136 * WebProcess/WebPage/WebPage.cpp:
137 (WebKit::WebPage::WebPage):
138 (WebKit::WebPage::setActive):
139 (WebKit::WebPage::setViewIsVisible):
140 (WebKit::WebPage::setFocused):
141 (WebKit::WebPage::setIsInWindow):
142 (WebKit::WebPage::setViewStateInternal):
143 (WebKit::WebPage::setIsVisuallyIdle):
144 * WebProcess/WebPage/WebPage.h:
146 2014-01-21 Martin Hock <mhock@apple.com>
148 Trivial Session API cleanup.
149 https://bugs.webkit.org/show_bug.cgi?id=127356
151 Reviewed by Alexey Proskuryakov.
153 * UIProcess/API/C/WKSessionRef.cpp:
154 (WKSessionIsEphemeral):
155 * UIProcess/API/C/WKSessionRef.h:
157 2014-01-16 Simon Fraser <simon.fraser@apple.com>
159 Log an error for a common cause of WebProcess early launch crashing in misconfigured development builds
160 https://bugs.webkit.org/show_bug.cgi?id=127121
162 Reviewed by Anders Carlsson.
164 A common cause of early WebProcess crashes during development is a null return
165 from CFBundleGetValueForInfoDictionaryKey(), so log and return an error in
166 this case rather than passing a null C string to dlsym().
168 * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:
169 (WebKit::BootstrapMain):
171 2014-01-21 Tim Horton <timothy_horton@apple.com>
173 Sort headers after the rename that happened in r162454.
175 * UIProcess/mac/RemoteLayerTreeHost.mm:
176 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
178 2014-01-21 Tim Horton <timothy_horton@apple.com>
180 Address late review naming comments after r162453.
182 * UIProcess/API/mac/WKView.mm:
183 And, fix the build by adding an include I accidentally missed.
185 * UIProcess/mac/RemoteLayerTreeHost.mm:
186 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
188 2014-01-21 Tim Horton <timothy_horton@apple.com>
190 Keep CALayer implicit animation disabling code in a single place
191 https://bugs.webkit.org/show_bug.cgi?id=127355
193 Reviewed by Simon Fraser.
195 * Shared/mac/RemoteLayerTreePropertyApplier.h:
196 * Shared/mac/RemoteLayerTreePropertyApplier.mm:
197 Remove disableActionsForLayer.
199 * UIProcess/API/mac/WKView.mm:
200 (-[WKView _rootLayer]):
201 Disable actions on the root layer. It doesn't need them, and currently
202 isn't affected by implicit animations, but future patches which animate
203 the root layer will benefit from this.
205 * UIProcess/mac/RemoteLayerTreeHost.mm:
206 (WebKit::RemoteLayerTreeHost::createLayer):
207 Use web_disableAllActions instead of disableActionsForLayer.
209 * WebKit2.xcodeproj/project.pbxproj:
210 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm: Renamed from Source/WebKit2/WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.cpp.
211 (PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
212 (PlatformCALayerRemoteCustom::~PlatformCALayerRemoteCustom):
213 (PlatformCALayerRemoteCustom::hostingContextID):
214 Use web_disableAllActions instead of disableActionsForLayer.
215 This requires making this file Obj-C++ but that's OK since it's Mac/iOS only.
217 2014-01-21 Gavin Barraclough <barraclough@apple.com>
219 Change Page, FocusController to use ViewState
220 https://bugs.webkit.org/show_bug.cgi?id=126533
222 Reviewed by Tim Horton.
224 These classes currently maintain a set of separate fields to represent the view state;
225 combine these into a single field, and allow WebPage to send the combined update rather
226 than individual changes.
228 Maintain existing interface for WebKit1 clients.
230 * WebProcess/WebPage/WebPage.cpp:
231 (WebKit::WebPage::WebPage):
232 - Combined separate calls to Page::setViewState.
233 (WebKit::WebPage::updateIsInWindow):
234 - Simplied from setIsInWindow.
235 (WebKit::WebPage::setViewState):
236 - Combined separate calls to Page::setViewState.
237 * WebProcess/WebPage/WebPage.h:
238 - Declare updateIsInWindow.
240 2014-01-21 Carlos Garcia Campos <cgarcia@igalia.com>
242 [SOUP] Implement CUSTOM PROTOCOLS
243 https://bugs.webkit.org/show_bug.cgi?id=125583
245 Reviewed by Anders Carlsson.
247 Add new classes to implement CustomProtocols for soup. The
248 implementation is the same, but using the CustomProtocol API and
249 messages. The current implementation can be removed once all ports
250 using soup switch to using CustomProtocols.
252 * GNUmakefile.am: Add new include paths.
253 * GNUmakefile.list.am: Add new files to compilation.
254 * PlatformGTK.cmake: Add new files to compilation.
255 * Shared/API/c/soup/WKBaseSoup.h:
256 * Shared/APIObject.h:
257 * Shared/Network/CustomProtocols/CustomProtocolManager.h:
258 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp: Added.
259 (WebKit::generateCustomProtocolID):
260 (WebKit::WebSoupRequestAsyncData::WebSoupRequestAsyncData):
261 (WebKit::WebSoupRequestAsyncData::~WebSoupRequestAsyncData):
262 (WebKit::WebSoupRequestAsyncData::requestFailed):
263 (WebKit::WebSoupRequestAsyncData::releaseTask):
264 (WebKit::CustomProtocolManagerImpl::CustomProtocolManagerImpl):
265 (WebKit::CustomProtocolManagerImpl::~CustomProtocolManagerImpl):
266 (WebKit::CustomProtocolManagerImpl::registerScheme):
267 (WebKit::CustomProtocolManagerImpl::supportsScheme):
268 (WebKit::CustomProtocolManagerImpl::didFailWithError):
269 (WebKit::CustomProtocolManagerImpl::didLoadData):
270 (WebKit::CustomProtocolManagerImpl::didReceiveResponse):
271 (WebKit::CustomProtocolManagerImpl::didFinishLoading):
272 (WebKit::CustomProtocolManagerImpl::send):
273 (WebKit::CustomProtocolManagerImpl::finish):
274 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h: Added.
275 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp:
276 (WebKit::CustomProtocolManager::CustomProtocolManager):
277 (WebKit::CustomProtocolManager::initialize):
278 (WebKit::CustomProtocolManager::registerScheme):
279 (WebKit::CustomProtocolManager::supportsScheme):
280 (WebKit::CustomProtocolManager::didFailWithError):
281 (WebKit::CustomProtocolManager::didLoadData):
282 (WebKit::CustomProtocolManager::didReceiveResponse):
283 (WebKit::CustomProtocolManager::didFinishLoading):
284 * Shared/WebProcessCreationParameters.cpp:
285 (WebKit::WebProcessCreationParameters::encode):
286 (WebKit::WebProcessCreationParameters::decode):
287 * Shared/WebProcessCreationParameters.h:
288 * UIProcess/API/C/soup/WKAPICastSoup.h:
289 * UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.cpp: Copied from Source/WebKit2/UIProcess/soup/WebContextSoup.cpp.
290 (WKSoupCustomProtocolRequestManagerGetTypeID):
291 (WKSoupCustomProtocolRequestManagerSetClient):
292 * UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.h: Added.
293 * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
294 * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
295 (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
296 * UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp:
297 (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
298 (WebKit::CustomProtocolManagerProxy::startLoading):
299 (WebKit::CustomProtocolManagerProxy::stopLoading):
300 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp: Added.
301 (WebKit::WebSoupCustomProtocolRequestManager::supplementName):
302 (WebKit::WebSoupCustomProtocolRequestManager::create):
303 (WebKit::WebSoupCustomProtocolRequestManager::WebSoupCustomProtocolRequestManager):
304 (WebKit::WebSoupCustomProtocolRequestManager::~WebSoupCustomProtocolRequestManager):
305 (WebKit::WebSoupCustomProtocolRequestManager::initializeClient):
306 (WebKit::WebSoupCustomProtocolRequestManager::contextDestroyed):
307 (WebKit::WebSoupCustomProtocolRequestManager::processDidClose):
308 (WebKit::WebSoupCustomProtocolRequestManager::refWebContextSupplement):
309 (WebKit::WebSoupCustomProtocolRequestManager::derefWebContextSupplement):
310 (WebKit::WebSoupCustomProtocolRequestManager::registerSchemeForCustomProtocol):
311 (WebKit::WebSoupCustomProtocolRequestManager::unregisterSchemeForCustomProtocol):
312 (WebKit::WebSoupCustomProtocolRequestManager::startLoading):
313 (WebKit::WebSoupCustomProtocolRequestManager::stopLoading):
314 (WebKit::WebSoupCustomProtocolRequestManager::didReceiveResponse):
315 (WebKit::WebSoupCustomProtocolRequestManager::didLoadData):
316 (WebKit::WebSoupCustomProtocolRequestManager::didFailWithError):
317 (WebKit::WebSoupCustomProtocolRequestManager::didFinishLoading):
318 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h: Added.
319 (WebKit::WebSoupCustomProtocolRequestManager::registeredSchemesForCustomProtocols):
320 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.cpp: Added.
321 (WebKit::WebSoupCustomProtocolRequestManagerClient::startLoading):
322 (WebKit::WebSoupCustomProtocolRequestManagerClient::stopLoading):
323 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.h: Added.
324 * UIProcess/Network/NetworkProcessProxy.cpp:
325 (WebKit::NetworkProcessProxy::NetworkProcessProxy):
326 * UIProcess/WebContext.cpp:
327 (WebKit::WebContext::WebContext):
328 * UIProcess/WebPageProxy.cpp:
329 * UIProcess/WebPageProxy.h:
330 * UIProcess/WebPageProxy.messages.in:
331 * UIProcess/WebProcessProxy.cpp:
332 (WebKit::WebProcessProxy::WebProcessProxy):
333 * UIProcess/gtk/WebContextGtk.cpp:
334 (WebKit::WebContext::platformInitializeWebProcess):
335 * UIProcess/soup/WebContextSoup.cpp:
336 (WebKit::WebContext::platformInitializeNetworkProcess):
337 * WebProcess/WebProcess.cpp:
338 (WebKit::WebProcess::WebProcess):
339 * WebProcess/soup/WebKitSoupRequestGeneric.cpp:
340 (webkitSoupRequestGenericSendAsync):
341 (webkitSoupRequestGenericSendFinish):
342 * WebProcess/soup/WebKitSoupRequestGeneric.h:
343 * WebProcess/soup/WebProcessSoup.cpp:
344 (WebKit::WebProcess::platformInitializeWebProcess):
346 2014-01-21 Adrian Perez de Castro <aperez@igalia.com>
348 [GTK] Allow passing extra data to web extensions
349 https://bugs.webkit.org/show_bug.cgi?id=125990
351 Reviewed by Carlos Garcia Campos.
353 Allow passing additional information to the injected bundle. On top
354 of the string containing the path to the web extensions directory,
355 a GVariant can be set with additional data using
356 webkit_web_context_set_web_extensions_initialization_user_data().
357 Also, a new initialize-web-extensions signal is emitted before
358 launching a new WebProcess to allow setting different user data
359 for each process. The GVariant is serialized as a string, passed
360 to the injected bundle, and the injected bundle deserializes back
361 the data, which is passed to web extensions which define the
362 webkit_web_extension_initialize_with_user_data() function (for
363 backwards compatibility, webkit_web_extension_initialize() is
366 * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
367 (getInjectedBundleInitializationUserData): Define new callback
368 function which causes emission of the initialize-web-extensions
369 signal, and serializes the data to be passed to the web process.
370 (attachInjectedBundleClientToContext): Set the
371 getInjectedBundleInitializationUserData() callback.
372 * UIProcess/API/gtk/WebKitWebContext.cpp:
373 (webkit_web_context_class_init): Define the
374 initialize-web-extensions signal.
375 (webkit_web_context_set_web_extensions_directory):
376 Web extensions directory as now member of WebKitWebContextPrivate,
377 to be able to retrieve it later.
378 (webkit_web_context_set_web_extensions_initialization_user_data):
379 New API method to set the user data passed to the web extensions
381 (webkitWebContextInitializeWebExtensions): Private function used
382 to trigger emission of the initialize-web-extensions signal.
383 * UIProcess/API/gtk/WebKitWebContext.h:
384 Added prototype for new API method
385 webkit_web_context_set_web_extensions_initialization_user_data().
386 * UIProcess/API/gtk/WebKitWebContextPrivate.h:
387 Prototype of the new private function.
388 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
389 Add new public API bits to the documentation.
390 * WebProcess/gtk/WebGtkExtensionManager.cpp:
391 (WebKit::WebGtkExtensionManager::initialize):
392 Deserialize the data received from the UI process and pass it to
393 webkit_web_extension_initialize_with_user_data() if available,
394 keeping webkit_web_extension_initialize() as fallback.
396 2014-01-20 Ryuan Choi <ryuan.choi@samsung.com>
398 [EFL][WK2] Move isEwkViewEvasObject back to ewk_view.cpp
399 https://bugs.webkit.org/show_bug.cgi?id=127261
401 Reviewed by Gyuyoung Kim.
403 isEwkViewEvasObject is general check routine of EFL and mainly used in
404 ewk_view.cpp but it was in EwkView.cpp since separated EwkView.cpp from ewk_view.cpp
406 This patch moves it to EwkView.h as inline function with small refactoring.
407 In addition, this patch added EINA_UNLIKELY keyword in cold paths.
409 * UIProcess/API/efl/EwkView.cpp:
410 (defaultSmartClassInstance):
412 (toEwkView): Moved it from bottom not to expose it to header file.
413 * UIProcess/API/efl/EwkView.h:
414 * UIProcess/API/efl/ewk_view.cpp:
415 (isEwkViewEvasObject):
418 2014-01-20 Eunmi Lee <eunmi15.lee@samsung.com>
420 [EFL][WK2] Amount of scrolling is different from movement of touch when device pixel ratio is not 1.
421 https://bugs.webkit.org/show_bug.cgi?id=127268
423 Reviewed by Gyuyoung Kim.
425 Amount of scrolling should be same with movement of touch even though
426 device pixel ratio is not 1, so apply device pixel ratio to the new
427 position of scrollBy().
429 * UIProcess/API/efl/EwkView.cpp:
432 2014-01-20 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
434 [WK2] Setting m_pageScaleFactor directly in WebPageProxy::scalePage
435 https://bugs.webkit.org/show_bug.cgi?id=127090
437 Reviewed by Simon Fraser.
439 When the client side sets the scale factor, the UIProcess will send the message to WebProcess and only after
440 WebPageProxy::pageScaleFactorDidChange is called the desired scale factor is returned correctly by
441 WebPageProxy::pageScaleFactor.
442 This will avoid the client side retrieve a wrong scale factor while UIProcess and WebProcess gets synchronized.
444 * UIProcess/WebPageProxy.cpp:
445 (WebKit::WebPageProxy::scalePage):
447 2014-01-20 Zan Dobersek <zdobersek@igalia.com>
449 [GTK][WK2] Move the rest of GTK's WorkQueue implementation to std::function
450 https://bugs.webkit.org/show_bug.cgi?id=127273
452 Reviewed by Anders Carlsson.
454 Move to using std::function and move semantics in WorkQueue::registerSocketEventHandler
455 and WorkQueue::SocketEventSource.
457 * Platform/IPC/unix/ConnectionUnix.cpp:
458 (IPC::Connection::open):
459 * Platform/WorkQueue.h:
460 * Platform/gtk/WorkQueueGtk.cpp:
461 (WorkQueue::SocketEventSource::SocketEventSource):
462 (WorkQueue::registerSocketEventHandler):
463 (WorkQueue::dispatchOnSource): Use std::move instead of std::forward<T>.
464 (WorkQueue::dispatch): Ditto.
465 (WorkQueue::dispatchAfter): Ditto.
467 2014-01-20 Zan Dobersek <zdobersek@igalia.com>
469 Unreviewed. Additional build fixes after r162276 and r163304.
471 * Platform/WorkQueue.h:
472 * Platform/gtk/WorkQueueGtk.cpp:
473 (WorkQueue::EventSource::EventSource):
474 (WorkQueue::dispatchOnSource):
475 (WorkQueue::dispatch):
476 (WorkQueue::dispatchAfter):
478 2014-01-19 Zan Dobersek <zdobersek@igalia.com>
480 Unreviewed GTK build fix after r162276.
482 Updating the WorkQueue implementation to use std::function and std::chrono.
484 * Platform/WorkQueue.h:
485 * Platform/gtk/WorkQueueGtk.cpp:
486 (WorkQueue::dispatchOnSource):
487 (WorkQueue::dispatch):
488 (WorkQueue::dispatchAfter):
490 2014-01-19 Jinwoo Song <jinwoo7.song@samsung.com>
492 Unreviewed debug build fix on EFL port after r162300.
494 * Platform/efl/DispatchQueueWorkItemEfl.h:
495 (TimerWorkItem::create):
497 2014-01-19 Jinwoo Song <jinwoo7.song@samsung.com>
499 [EFL][WK2] build fix after r162276
500 https://bugs.webkit.org/show_bug.cgi?id=127259
502 Reviewed by Anders Carlsson.
504 * Platform/efl/DispatchQueueEfl.cpp:
505 (DispatchQueue::performTimerWork):
506 (DispatchQueue::getNextTimeOut):
507 * Platform/efl/DispatchQueueWorkItemEfl.h:
509 (WorkItem::WorkItem):
510 (TimerWorkItem::create):
511 (TimerWorkItem::TimerWorkItem):
512 * Platform/efl/WorkQueueEfl.cpp:
513 (WorkQueue::dispatch):
514 (WorkQueue::dispatchAfter):
516 2014-01-18 Anders Carlsson <andersca@apple.com>
518 Replace a couple of uses of WTF::Function with std::function
519 https://bugs.webkit.org/show_bug.cgi?id=127218
521 Reviewed by Andreas Kling.
523 * Platform/IPC/mac/ConnectionMac.cpp:
524 (IPC::createDataAvailableSource):
525 * Platform/WorkQueue.h:
526 * Platform/mac/WorkQueueMac.cpp:
527 (WorkQueue::dispatch):
528 (WorkQueue::dispatchAfter):
529 * Shared/ChildProcess.cpp:
530 (WebKit::didCloseOnConnectionWorkQueue):
531 * UIProcess/Storage/LocalStorageDatabase.cpp:
532 (WebKit::LocalStorageDatabase::scheduleDatabaseUpdate):
533 * WebProcess/WebPage/DrawingArea.cpp:
534 (WebKit::DrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
535 * WebProcess/WebPage/DrawingArea.h:
536 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
537 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
538 (WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
540 2014-01-18 Martin Hock <mhock@apple.com>
542 Flesh out session APIs (still not enabled at API level).
543 https://bugs.webkit.org/show_bug.cgi?id=126918
545 Reviewed by Alexey Proskuryakov.
548 * GNUmakefile.list.am:
549 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
550 (WebKit::storageSession):
551 (WebKit::NetworkConnectionToWebProcess::startDownload):
552 (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
553 (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
554 (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
555 (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
556 (WebKit::NetworkConnectionToWebProcess::getRawCookies):
557 (WebKit::NetworkConnectionToWebProcess::deleteCookie):
558 * NetworkProcess/NetworkConnectionToWebProcess.h:
559 * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
560 * NetworkProcess/NetworkProcess.cpp:
561 (WebKit::NetworkProcess::initializeNetworkProcess):
562 (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
563 (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
564 * NetworkProcess/NetworkProcess.h:
565 * NetworkProcess/NetworkProcess.messages.in:
566 * NetworkProcess/RemoteNetworkingContext.h:
567 * NetworkProcess/mac/RemoteNetworkingContext.mm:
568 (WebKit::RemoteNetworkingContext::storageSession):
569 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
570 * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
571 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
572 * Shared/SessionTracker.cpp: Copied from Source/WebKit2/UIProcess/APISession.cpp.
573 (WebKit::sessionMap):
574 (WebKit::identifierBase):
575 (WebKit::SessionTracker::getSessionMap):
576 (WebKit::SessionTracker::getIdentifierBase):
577 (WebKit::SessionTracker::session):
578 (WebKit::SessionTracker::destroySession):
579 (WebKit::SessionTracker::setIdentifierBase):
580 * Shared/SessionTracker.h: Copied from Source/WebKit2/UIProcess/APISession.h.
581 (WebKit::SessionTracker::isEphemeralID):
582 * Shared/mac/CookieStorageShim.cpp:
583 (WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):
584 * UIProcess/APISession.cpp:
586 (API::Session::defaultSession):
587 (API::Session::legacyPrivateSession):
588 (API::Session::Session):
589 (API::Session::create):
590 (API::Session::isEphemeral):
591 (API::Session::getID):
592 * UIProcess/APISession.h:
593 * UIProcess/WebContext.cpp:
594 (WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
595 (WebKit::WebContext::createNewWebProcess):
596 (WebKit::WebContext::createWebPage):
597 * UIProcess/WebContext.h:
598 * UIProcess/WebPageProxy.cpp:
599 (WebKit::WebPageProxy::create):
600 (WebKit::WebPageProxy::WebPageProxy):
601 * UIProcess/WebPageProxy.h:
602 (WebKit::WebPageProxy::sessionID):
603 * UIProcess/WebProcessProxy.cpp:
604 (WebKit::WebProcessProxy::createWebPage):
605 * UIProcess/WebProcessProxy.h:
606 * WebKit2.xcodeproj/project.pbxproj:
607 * WebProcess/InjectedBundle/InjectedBundle.cpp:
608 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
609 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
610 (WebKit::legacySessionID):
611 (WebKit::WebPlatformStrategies::cookiesForDOM):
612 (WebKit::WebPlatformStrategies::setCookiesFromDOM):
613 (WebKit::WebPlatformStrategies::cookiesEnabled):
614 (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
615 (WebKit::WebPlatformStrategies::getRawCookies):
616 (WebKit::WebPlatformStrategies::deleteCookie):
617 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
618 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
619 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
620 (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
621 (WebKit::WebFrameNetworkingContext::storageSession):
622 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
623 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
624 (WebKit::WebFrameNetworkingContext::storageSession):
625 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
626 * WebProcess/WebProcess.cpp:
627 (WebKit::WebProcess::initializeWebProcess):
628 (WebKit::WebProcess::ensurePrivateBrowsingSession):
629 (WebKit::WebProcess::destroyPrivateBrowsingSession):
630 * WebProcess/WebProcess.h:
631 * WebProcess/WebProcess.messages.in:
633 2014-01-18 Brian Burg <bburg@apple.com>
635 Web Inspector: Page should use std::unique_ptr for InspectorController
636 https://bugs.webkit.org/show_bug.cgi?id=127068
638 Reviewed by Joseph Pecoraro.
640 Convert call sites to use a InspectorController reference.
642 * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
643 (WebKit::WebInspectorClient::drawRect):
644 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
645 (WebKit::WebInspectorFrontendClient::WebInspectorFrontendClient):
646 (WebKit::WebInspectorFrontendClient::closeWindow):
647 * WebProcess/WebPage/WebInspector.cpp:
648 (WebKit::WebInspector::createInspectorPage):
649 (WebKit::WebInspector::show):
650 (WebKit::WebInspector::close):
651 (WebKit::WebInspector::evaluateScriptForTest):
652 (WebKit::WebInspector::showConsole):
653 (WebKit::WebInspector::showResources):
654 (WebKit::WebInspector::showMainResourceForFrame):
655 (WebKit::WebInspector::startJavaScriptDebugging):
656 (WebKit::WebInspector::stopJavaScriptDebugging):
657 (WebKit::WebInspector::setJavaScriptProfilingEnabled):
658 (WebKit::WebInspector::startJavaScriptProfiling):
659 (WebKit::WebInspector::stopJavaScriptProfiling):
660 (WebKit::WebInspector::startPageProfiling):
661 (WebKit::WebInspector::stopPageProfiling):
662 (WebKit::WebInspector::dispatchMessageFromRemoteFrontend):
663 (WebKit::WebInspector::remoteFrontendConnected):
664 (WebKit::WebInspector::remoteFrontendDisconnected):
666 2014-01-18 Anders Carlsson <andersca@apple.com>
668 Remove ENABLE_THREADED_HTML_PARSER defines everywhere
669 https://bugs.webkit.org/show_bug.cgi?id=127225
671 Reviewed by Andreas Kling.
673 This concludes the removal of over 8.8 million lines of threaded parser code.
675 * Configurations/FeatureDefines.xcconfig:
677 2014-01-18 Yongjun Zhang <yongjun_zhang@apple.com>
679 Make WKRenderingProgressEvents a shareable API.
680 https://bugs.webkit.org/show_bug.cgi?id=127213
682 Reviewed by Dan Bernstein.
684 Move WKRenderingProgressEvents from UIProcess to Shared, so that an inject bundle
685 could also use this enum when listening to layout milestones.
687 * Shared/API/Cocoa/WKRenderingProgressEvents.h: Added.
689 * Shared/API/Cocoa/WKRenderingProgressEventsInternal.h: Added.
690 (renderingProgressEvents):
691 * UIProcess/API/Cocoa/WKBrowsingContextController.h: Move WKRenderingProgressEvents to Shared/API/Cocoa/WKRenderingProgressEvents.h.
692 * UIProcess/API/Cocoa/WKBrowsingContextController.mm: Move renderingProgressEvents() to WKRenderingProgressEventsInternal.h.
693 * WebKit2.xcodeproj/project.pbxproj:
694 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Add
695 webProcessPlugInBrowserContextController:renderingProgressDidChange: to load delegate.
696 * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
698 (setUpPageLoaderClient): Also listen to didLayout callback for layout milestones.
700 2014-01-17 Commit Queue <commit-queue@webkit.org>
702 Unreviewed, rolling out r162237 and r162241.
703 http://trac.webkit.org/changeset/162237
704 http://trac.webkit.org/changeset/162241
705 https://bugs.webkit.org/show_bug.cgi?id=127216
707 Broke lots of API tests (Requested by ap on #webkit).
710 * GNUmakefile.list.am:
711 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
712 (WebKit::storageSession):
713 (WebKit::NetworkConnectionToWebProcess::startDownload):
714 (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
715 (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
716 (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
717 (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
718 (WebKit::NetworkConnectionToWebProcess::getRawCookies):
719 (WebKit::NetworkConnectionToWebProcess::deleteCookie):
720 * NetworkProcess/NetworkConnectionToWebProcess.h:
721 * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
722 * NetworkProcess/NetworkProcess.cpp:
723 (WebKit::NetworkProcess::initializeNetworkProcess):
724 (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
725 (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
726 * NetworkProcess/NetworkProcess.h:
727 * NetworkProcess/NetworkProcess.messages.in:
728 * NetworkProcess/RemoteNetworkingContext.h:
729 * NetworkProcess/mac/RemoteNetworkingContext.mm:
730 (WebKit::privateBrowsingStorageSession):
731 (WebKit::RemoteNetworkingContext::storageSession):
732 (WebKit::RemoteNetworkingContext::privateBrowsingSession):
733 (WebKit::privateBrowsingStorageSessionIdentifierBase):
734 (WebKit::RemoteNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
735 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
736 (WebKit::RemoteNetworkingContext::destroyPrivateBrowsingSession):
737 * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
738 (WebKit::RemoteNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
739 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
740 (WebKit::RemoteNetworkingContext::destroyPrivateBrowsingSession):
741 (WebKit::RemoteNetworkingContext::privateBrowsingSession):
742 * Shared/SessionTracker.cpp: Removed.
743 * Shared/SessionTracker.h: Removed.
744 * UIProcess/APISession.cpp:
745 (API::Session::Session):
746 (API::Session::create):
747 (API::Session::isEphemeral):
748 * UIProcess/APISession.h:
749 * UIProcess/WebContext.cpp:
750 (WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
751 (WebKit::WebContext::createNewWebProcess):
752 (WebKit::WebContext::createWebPage):
753 * UIProcess/WebContext.h:
754 * UIProcess/WebPageProxy.cpp:
755 (WebKit::WebPageProxy::create):
756 (WebKit::WebPageProxy::WebPageProxy):
757 * UIProcess/WebPageProxy.h:
758 * UIProcess/WebProcessProxy.cpp:
759 (WebKit::WebProcessProxy::createWebPage):
760 * UIProcess/WebProcessProxy.h:
761 * WebKit2.xcodeproj/project.pbxproj:
762 * WebProcess/InjectedBundle/InjectedBundle.cpp:
763 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
764 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
765 (WebKit::WebPlatformStrategies::cookiesForDOM):
766 (WebKit::WebPlatformStrategies::setCookiesFromDOM):
767 (WebKit::WebPlatformStrategies::cookiesEnabled):
768 (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
769 (WebKit::WebPlatformStrategies::getRawCookies):
770 (WebKit::WebPlatformStrategies::deleteCookie):
771 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
772 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
773 (WebKit::privateSession):
774 (WebKit::identifierBase):
775 (WebKit::WebFrameNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
776 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
777 (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
778 (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
779 (WebKit::WebFrameNetworkingContext::storageSession):
780 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
781 (WebKit::privateSession):
782 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
783 (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
784 (WebKit::WebFrameNetworkingContext::storageSession):
785 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
786 * WebProcess/WebProcess.cpp:
787 (WebKit::WebProcess::initializeWebProcess):
788 (WebKit::WebProcess::ensurePrivateBrowsingSession):
789 (WebKit::WebProcess::destroyPrivateBrowsingSession):
790 * WebProcess/WebProcess.h:
791 * WebProcess/WebProcess.messages.in:
793 2014-01-17 Ryuan Choi <ryuan.choi@samsung.com>
795 Unreviewed build fix on EFL port after r162237
797 The EFL port disabled NETWORK_PROCESS yet and use -Werror=unused-function.
799 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
800 Guarded legacySessionID with ENABLE(NETWORK_PROCESS)
802 2014-01-17 Martin Hock <mhock@apple.com>
804 Flesh out session APIs (still not enabled at API level).
805 https://bugs.webkit.org/show_bug.cgi?id=126918
807 Reviewed by Alexey Proskuryakov.
810 * GNUmakefile.list.am:
811 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
812 (WebKit::storageSession):
813 (WebKit::NetworkConnectionToWebProcess::startDownload):
814 (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
815 (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
816 (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
817 (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
818 (WebKit::NetworkConnectionToWebProcess::getRawCookies):
819 (WebKit::NetworkConnectionToWebProcess::deleteCookie):
820 * NetworkProcess/NetworkConnectionToWebProcess.h:
821 * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
822 * NetworkProcess/NetworkProcess.cpp:
823 (WebKit::NetworkProcess::initializeNetworkProcess):
824 (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
825 (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
826 * NetworkProcess/NetworkProcess.h:
827 * NetworkProcess/NetworkProcess.messages.in:
828 * NetworkProcess/RemoteNetworkingContext.h:
829 * NetworkProcess/mac/RemoteNetworkingContext.mm:
830 (WebKit::RemoteNetworkingContext::storageSession):
831 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
832 * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
833 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
834 * Shared/SessionTracker.cpp: Copied from Source/WebKit2/UIProcess/APISession.cpp.
835 (WebKit::sessionMap):
836 (WebKit::identifierBase):
837 (WebKit::SessionTracker::getSessionMap):
838 (WebKit::SessionTracker::getIdentifierBase):
839 (WebKit::SessionTracker::session):
840 (WebKit::SessionTracker::destroySession):
841 (WebKit::SessionTracker::setIdentifierBase):
842 * Shared/SessionTracker.h: Copied from Source/WebKit2/UIProcess/APISession.h.
843 (WebKit::SessionTracker::isEphemeralID):
844 * UIProcess/APISession.cpp:
846 (API::Session::defaultSession):
847 (API::Session::legacyPrivateSession):
848 (API::Session::Session):
849 (API::Session::create):
850 (API::Session::isEphemeral):
851 (API::Session::getID):
852 * UIProcess/APISession.h:
853 * UIProcess/WebContext.cpp:
854 (WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
855 (WebKit::WebContext::createNewWebProcess):
856 (WebKit::WebContext::createWebPage):
857 * UIProcess/WebContext.h:
858 * UIProcess/WebPageProxy.cpp:
859 (WebKit::WebPageProxy::create):
860 (WebKit::WebPageProxy::WebPageProxy):
861 * UIProcess/WebPageProxy.h:
862 (WebKit::WebPageProxy::sessionID):
863 * UIProcess/WebProcessProxy.cpp:
864 (WebKit::WebProcessProxy::createWebPage):
865 * UIProcess/WebProcessProxy.h:
866 * WebKit2.xcodeproj/project.pbxproj:
867 * WebProcess/InjectedBundle/InjectedBundle.cpp:
868 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
869 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
870 (WebKit::legacySessionID):
871 (WebKit::WebPlatformStrategies::cookiesForDOM):
872 (WebKit::WebPlatformStrategies::setCookiesFromDOM):
873 (WebKit::WebPlatformStrategies::cookiesEnabled):
874 (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
875 (WebKit::WebPlatformStrategies::getRawCookies):
876 (WebKit::WebPlatformStrategies::deleteCookie):
877 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
878 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
879 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
880 (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
881 (WebKit::WebFrameNetworkingContext::storageSession):
882 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
883 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
884 (WebKit::WebFrameNetworkingContext::storageSession):
885 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
886 * WebProcess/WebProcess.cpp:
887 (WebKit::WebProcess::initializeWebProcess):
888 (WebKit::WebProcess::ensurePrivateBrowsingSession):
889 (WebKit::WebProcess::destroyPrivateBrowsingSession):
890 * WebProcess/WebProcess.h:
891 * WebProcess/WebProcess.messages.in:
893 2014-01-17 Andreas Kling <akling@apple.com>
895 Remove unused TOUCH_ADJUSTMENT code.
896 <https://webkit.org/b/127181>
898 Reviewed by Anders Carlsson.
900 * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp:
901 (WebKit::WebPage::findZoomableAreaForPoint):
903 2014-01-17 Anders Carlsson <andersca@apple.com>
907 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
908 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
910 2014-01-17 Anders Carlsson <andersca@apple.com>
912 Remove FrameLoaderClient::didPerformFirstNavigation()
913 https://bugs.webkit.org/show_bug.cgi?id=127191
915 Reviewed by Dan Bernstein.
917 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
918 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
920 2014-01-17 Manuel Rego Casasnovas <rego@igalia.com>
922 [GTK] Add CSS Grid Layout as experimental feature
923 https://bugs.webkit.org/show_bug.cgi?id=127089
925 Reviewed by Martin Robinson.
927 Allow CSS Grid Layout to be enabled through the environment variable WEBKITGTK_EXPERIMENTAL_FEATURES.
929 Example: WEBKITGTK_EXPERIMENTAL_FEATURES="CSS_GRID_LAYOUT=1"
931 * UIProcess/API/gtk/WebKitSettings.cpp:
932 (webKitSettingsConstructed): Use new experimental feature to enable or disable CSS Grid Layout.
933 * UIProcess/gtk/ExperimentalFeatures.cpp: Add new experimental feature.
934 * UIProcess/gtk/ExperimentalFeatures.h: Ditto.
936 2014-01-17 Enrica Casucci <enrica@apple.com>
938 Support WebSelections in WK2 on iOS.
939 https://bugs.webkit.org/show_bug.cgi?id=127015
940 <rdar://problem/15843090>
942 Reviewed by Dan Bernstein.
944 Removing unused variable in selectWithGesture that
945 causes Release build to fail after r162103.
947 * WebProcess/WebPage/ios/WebPageIOS.mm:
948 (WebKit::WebPage::selectWithGesture):
950 2014-01-17 Yongjun Zhang <yongjun_zhang@apple.com>
952 https://bugs.webkit.org/show_bug.cgi?id=127138
953 Add more delegate callback methods to WKWebProcessPlugInLoadDelegate.
955 Reviewed by Sam Weinig.
957 Add more WKWebProcessPlugInLoadDelegate callback methods so that a injected
958 bundle can listen/react to more frame loading events.
960 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Add more delegate callback methods for
961 WKWebProcessPlugInLoadDelegate.
962 * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
963 (didCommitLoadForFrame):
964 (didFinishDocumentLoadForFrame):
965 (didFailLoadWithErrorForFrame):
966 (didSameDocumentNavigationForFrame):
968 (setUpPageLoaderClient):
970 2014-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
972 [SOUP] Add stubs for CustomProtocol classes
973 https://bugs.webkit.org/show_bug.cgi?id=126343
975 Reviewed by Gustavo Noronha Silva.
979 * GNUmakefile.list.am:
981 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp: Added.
982 (WebKit::generateCustomProtocolID):
983 (WebKit::WebSoupRequestAsyncData::WebSoupRequestAsyncData):
984 (WebKit::WebSoupRequestAsyncData::~WebSoupRequestAsyncData):
985 (WebKit::WebSoupRequestAsyncData::requestFailed):
986 (WebKit::WebSoupRequestAsyncData::releaseTask):
987 (WebKit::CustomProtocolManager::supplementName):
988 (WebKit::CustomProtocolManager::CustomProtocolManager):
989 (WebKit::CustomProtocolManager::initializeConnection):
990 (WebKit::CustomProtocolManager::initialize):
991 * Shared/Network/NetworkProcessCreationParameters.cpp:
992 (WebKit::NetworkProcessCreationParameters::encode): Move
993 urlSchemesRegisteredForCustomProtocols encoding out of platform
994 ifdefs, since it's already guarded by ENABLE(CUSTOM_PROTOCOLS).
995 (WebKit::NetworkProcessCreationParameters::decode): Ditto.
996 * Shared/Network/NetworkProcessCreationParameters.h: Ditto.
997 * UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp: Added.
998 (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
999 (WebKit::CustomProtocolManagerProxy::startLoading):
1000 (WebKit::CustomProtocolManagerProxy::stopLoading):
1002 2014-01-16 Tim Horton <timothy_horton@apple.com>
1004 On iOS, zooming in with a TileController-backed main frame makes hundreds of tiles
1005 https://bugs.webkit.org/show_bug.cgi?id=126531
1006 <rdar://problem/15745862>
1008 Reviewed by Anders Carlsson.
1010 * UIProcess/API/ios/WKContentView.mm:
1011 (-[WKContentView _updateViewExposedRect]):
1012 (-[WKContentView setViewportSize:]):
1013 (-[WKContentView didFinishScrollTo:]):
1014 (-[WKContentView didScrollTo:]):
1015 (-[WKContentView didZoomToScale:]):
1016 Because zooming is performed by the UIScrollView, we need to transform
1017 the exposedRect's offset in order to get it in FrameView-relative coordinates.
1019 * UIProcess/ios/WebPageProxyIOS.mm:
1020 (WebKit::WebPageProxy::didFinishZooming):
1021 Save the pageScaleFactor when it changes.
1023 2014-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
1025 [GTK] Remove the weak pointer added to the web view in WebKitPrintOperation
1026 https://bugs.webkit.org/show_bug.cgi?id=127098
1028 Reviewed by Martin Robinson.
1030 If the print operation finishes and the web view is still alive,
1031 the weak pointer added to the view should be removed.
1033 * UIProcess/API/gtk/WebKitPrintOperation.cpp:
1034 (_WebKitPrintOperationPrivate::~_WebKitPrintOperationPrivate):
1036 2014-01-15 Sam Weinig <sam@webkit.org>
1038 TextBreakIterator's should support Latin-1 for all iterator types (Part 3)
1039 https://bugs.webkit.org/show_bug.cgi?id=126856
1041 Reviewed by Ryosuke Niwa.
1043 Change all the TextBreakIterator creation functions to take StringViews. Remove a few
1044 now unnecessary up-conversions to UTF-16 in the process.
1046 * UIProcess/efl/TextCheckerEfl.cpp:
1047 (WebKit::nextWordOffset):
1048 (WebKit::TextChecker::checkTextOfParagraph):
1050 2014-01-16 Eunmi Lee <eunmi15.lee@samsung.com>
1052 [EFL][WK2] EwkView can not be shown without re-sizing once it is hidden.
1053 https://bugs.webkit.org/show_bug.cgi?id=127084
1055 Reviewed by Gyuyoung Kim.
1057 Visibility of EwkView can not be controlled by evas_object_show/hide
1058 because EwkView can be shown only if re-sizing is requested, so modify
1059 codes to show EwkView directly if we do not wait for re-sizing.
1060 Additionally, we have to set default value of m_pendingSurfaceResize
1061 to true for accelerated mode to prevent to show black empty view for
1062 the first request to show.
1064 * UIProcess/API/efl/EwkView.cpp:
1066 (EwkView::handleEvasObjectShow):
1068 2014-01-16 Andy Estes <aestes@apple.com>
1070 Build Fix: Use standard architectures when building for iOS
1072 Even though we don't use the plug-in services on iOS, we still need
1073 them to build (we won't install them). Be sure we specify valid iOS
1074 architectures when doing so.
1076 * Configurations/PluginService.32.xcconfig:
1077 * Configurations/PluginService.64.xcconfig:
1079 2014-01-16 Enrica Casucci <enrica@apple.com>
1081 Crash when destroying WKInteractionView.
1082 https://bugs.webkit.org/show_bug.cgi?id=127153
1083 <rdar://problem/15840761>
1085 Reviewed by Anders Carlsson.
1087 UIWKSelectionAssistant is a RetainPtr and it is being
1088 deallocated after the view and its gesture recognizers
1089 have been destroyed.
1090 The parent class UIWebSelectionAssistant assumes to be
1091 deallocated before the view is gone.
1092 We deallocate the interaction assistants explicitly to
1095 * UIProcess/API/ios/WKInteractionView.mm:
1096 (-[WKInteractionView dealloc]):
1098 2014-01-16 Brady Eidson <beidson@apple.com>
1100 IDB: delete object store support
1101 <rdar://problem/15779641> and https://bugs.webkit.org/show_bug.cgi?id=127123
1103 Reviewed by Alexey Proskuryakov.
1105 Pipe through Web -> Database -> Web process messaging for delete object store.
1106 Perform dropping the object store in the backing store.
1108 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
1109 (WebKit::DatabaseProcessIDBConnection::deleteObjectStore):
1110 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
1111 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
1113 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
1114 (WebKit::UniqueIDBDatabase::didDeleteObjectStore):
1115 (WebKit::UniqueIDBDatabase::deleteObjectStore):
1116 (WebKit::UniqueIDBDatabase::deleteObjectStoreInBackingStore):
1117 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
1119 * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
1120 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
1121 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore):
1122 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteObjectStore):
1123 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
1125 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
1126 (WebKit::WebIDBServerConnection::deleteObjectStore):
1127 (WebKit::WebIDBServerConnection::didDeleteObjectStore):
1128 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
1129 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
1131 2014-01-16 Alexey Proskuryakov <ap@apple.com>
1133 [Mac] [iOS] Add support for CFHTTPCookieStorageAcceptPolicyExclusivelyFromMainDocumentDomain
1134 https://bugs.webkit.org/show_bug.cgi?id=127139
1136 Reviewed by Brady Eidson.
1138 * Shared/HTTPCookieAcceptPolicy.h:
1139 * UIProcess/API/C/WKAPICast.h:
1140 (WebKit::toHTTPCookieAcceptPolicy):
1142 * UIProcess/API/C/WKCookieManager.h:
1143 Added the policy to appropriate switches and enums.
1145 2014-01-16 Jeffrey Pfau <jpfau@apple.com>
1147 Fix build after r162161. One FINAL was still present.
1149 * Shared/cf/KeyedDecoder.h:
1151 2014-01-16 Anders Carlsson <andersca@apple.com>
1153 Change all uses of FINAL to final now that all our compilers support it
1154 https://bugs.webkit.org/show_bug.cgi?id=127142
1156 Reviewed by Benjamin Poulain.
1158 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
1159 * NetworkProcess/RemoteNetworkingContext.h:
1160 * Shared/API/Cocoa/RemoteObjectRegistry.h:
1161 * Shared/APIArray.h:
1162 * Shared/APIString.h:
1163 * Shared/AsyncRequest.h:
1164 * Shared/AsyncTask.h:
1165 * Shared/cf/KeyedEncoder.h:
1166 * UIProcess/API/gtk/PageClientImpl.h:
1167 * UIProcess/API/mac/PageClientImpl.h:
1168 * UIProcess/efl/WebViewEfl.h:
1169 * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
1170 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
1171 * WebProcess/Plugins/PDF/PDFPlugin.h:
1172 * WebProcess/Storage/StorageAreaImpl.h:
1173 * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
1174 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
1175 * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
1177 2014-01-16 Brady Eidson <beidson@apple.com>
1179 Fix the build after r162148
1181 * Shared/cf/KeyedEncoder.h: s/OVERRIDE/override/
1183 2014-01-15 Brady Eidson <beidson@apple.com>
1185 Use KeyedCoding as a persistent storage mechanism for blobs
1186 https://bugs.webkit.org/show_bug.cgi?id=127012
1188 Reviewed by Anders Carlsson.
1190 Add a way to get the encoded buffer to save:
1191 * Shared/cf/KeyedEncoder.cpp:
1192 (WebKit::KeyedEncoder::finishEncoding):
1193 * Shared/cf/KeyedEncoder.h:
1195 Add a WebKit KeyedDecoder for CF platforms that can decode the previously encoded buffer:
1196 * Shared/cf/KeyedDecoder.cpp: Added.
1197 (WebKit::KeyedDecoder::KeyedDecoder):
1198 (WebKit::KeyedDecoder::~KeyedDecoder):
1199 (WebKit::KeyedDecoder::decodeInt64):
1200 (WebKit::KeyedDecoder::decodeUInt32):
1201 (WebKit::KeyedDecoder::decodeString):
1202 (WebKit::KeyedDecoder::beginObject):
1203 (WebKit::KeyedDecoder::endObject):
1204 (WebKit::KeyedDecoder::beginArray):
1205 (WebKit::KeyedDecoder::beginArrayElement):
1206 (WebKit::KeyedDecoder::endArrayElement):
1207 (WebKit::KeyedDecoder::endArray):
1208 * Shared/cf/KeyedDecoder.h:
1210 Create a WebKit KeyedEncoder/Decoder and use to encode/decode IDBKeyPaths:
1211 * DatabaseProcess/IndexedDB/IDBSerialization.cpp:
1212 (WebKit::serializeIDBKeyPath):
1213 (WebKit::deserializeIDBKeyPath):
1214 * DatabaseProcess/IndexedDB/IDBSerialization.h:
1216 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
1217 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore):
1219 * WebKit2.xcodeproj/project.pbxproj:
1221 2014-01-16 Andy Estes <aestes@apple.com>
1223 Stop copying WKOriginDataManager.cpp into WebKit2.framework
1224 https://bugs.webkit.org/show_bug.cgi?id=127100
1226 Reviewed by Sam Weinig.
1228 The file was mistakenly added to the 'All' target. Remove it.
1230 * WebKit2.xcodeproj/project.pbxproj:
1232 2014-01-16 Andy Estes <aestes@apple.com>
1234 [iOS] Install WebKit2 XPC services correctly
1235 https://bugs.webkit.org/show_bug.cgi?id=127097
1237 Reviewed by Anders Carlsson.
1239 * Configurations/PluginService.32.xcconfig: Set SKIP_INSTALL to YES on iOS.
1240 * Configurations/PluginService.64.xcconfig: Ditto.
1241 * Configurations/PluginService.Development.xcconfig: Ditto.
1242 * WebKit2.xcodeproj/project.pbxproj: Modified the "Add XPCServices symlink"
1243 build phase to only execute on OS X. Modified the
1244 "Copy XPC services for engineering builds" build phase to copy files
1245 directly to WebKit2.framework/XPCServices/ on iOS, and modified its
1246 output file paths to omit "Versions/A/" (since OS X will have a
1247 XPCServices symlink at the root of the framework bundle).
1249 2014-01-16 Roger Fong <roger_fong@apple.com>
1251 Build fix for mac following r162141.
1253 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: Switch OVERRIDE to override.
1255 2014-01-16 Roger Fong <roger_fong@apple.com>
1257 Add support for handling WebGL load policies.
1258 https://bugs.webkit.org/show_bug.cgi?id=126935
1259 <rdar://problem/15790448>.
1261 Reviewed by Timothy Horton.
1263 Boiler plate code for getting the load policy logic from WebProcess to the UIProcess.
1265 * UIProcess/API/C/WKAPICast.h:
1266 (WebKit::toWebGLLoadPolicy):
1267 * UIProcess/API/C/WKPageLoaderClient.h: Define a new WKPageLoaderClientV4 struct.
1268 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1269 (setUpPageLoaderClient):
1270 * UIProcess/WebLoaderClient.cpp:
1271 (WebKit::WebLoaderClient::webGLLoadPolicy):
1272 * UIProcess/WebLoaderClient.h:
1273 * UIProcess/WebPageProxy.cpp:
1274 (WebKit::WebPageProxy::webGLPolicyForURL):
1275 * UIProcess/WebPageProxy.h:
1276 * UIProcess/WebPageProxy.messages.in:
1277 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1278 (WebKit::WebFrameLoaderClient::webGLPolicyForURL):
1279 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1280 * WebProcess/WebPage/WebPage.cpp:
1281 (WebKit::WebPage::webGLPolicyForURL): We use a sendSync to get the load policy value from the UIProcess.
1282 * WebProcess/WebPage/WebPage.h:
1284 2014-01-16 Peter Molnar <pmolnar.u-szeged@partner.samsung.com>
1286 Remove workaround for compilers not supporting explicit override control
1287 https://bugs.webkit.org/show_bug.cgi?id=127111
1289 Reviewed by Anders Carlsson.
1291 Now all compilers support explicit override control, this workaround can be removed.
1293 * DatabaseProcess/DatabaseProcess.h:
1294 * DatabaseProcess/DatabaseToWebProcessConnection.h:
1295 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
1296 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
1297 * NetworkProcess/AsynchronousNetworkLoaderClient.h:
1298 * NetworkProcess/NetworkProcess.h:
1299 * NetworkProcess/NetworkProcessPlatformStrategies.h:
1300 * NetworkProcess/NetworkResourceLoader.h:
1301 * NetworkProcess/RemoteNetworkingContext.h:
1302 * NetworkProcess/SynchronousNetworkLoaderClient.h:
1303 * NetworkProcess/mac/DiskCacheMonitor.h:
1304 * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
1305 * PluginProcess/PluginControllerProxy.h:
1306 * PluginProcess/PluginProcess.h:
1307 * PluginProcess/WebProcessConnection.h:
1308 * Shared/API/Cocoa/RemoteObjectRegistry.h:
1309 * Shared/APIObject.h:
1310 * Shared/AsyncRequest.h:
1311 * Shared/AsyncTask.h:
1312 * Shared/Authentication/AuthenticationManager.h:
1313 * Shared/ChildProcess.h:
1314 * Shared/ChildProcessProxy.h:
1315 * Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
1316 * Shared/Downloads/Download.h:
1317 * Shared/Network/CustomProtocols/CustomProtocolManager.h:
1318 * Shared/WebConnection.h:
1319 * Shared/WebResourceBuffer.h:
1320 * Shared/cf/KeyedEncoder.h:
1321 * Shared/mac/SecItemShim.h:
1322 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1323 * UIProcess/API/gtk/PageClientImpl.h:
1324 * UIProcess/API/ios/PageClientImplIOS.h:
1325 * UIProcess/API/mac/PageClientImpl.h:
1326 * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1327 * UIProcess/CoordinatedGraphics/WebView.h:
1328 * UIProcess/Databases/DatabaseProcessProxy.h:
1329 * UIProcess/Downloads/DownloadProxy.h:
1330 * UIProcess/DrawingAreaProxy.h:
1331 * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
1332 * UIProcess/Network/NetworkProcessProxy.h:
1333 * UIProcess/Notifications/WebNotificationManagerProxy.h:
1334 * UIProcess/Plugins/PluginProcessProxy.h:
1335 * UIProcess/Scrolling/RemoteScrollingTree.h:
1336 * UIProcess/Storage/StorageManager.h:
1337 * UIProcess/WebApplicationCacheManagerProxy.h:
1338 * UIProcess/WebBatteryManagerProxy.h:
1339 * UIProcess/WebConnectionToWebProcess.h:
1340 * UIProcess/WebContext.h:
1341 * UIProcess/WebCookieManagerProxy.h:
1342 * UIProcess/WebDatabaseManagerProxy.h:
1343 * UIProcess/WebFullScreenManagerProxy.h:
1344 * UIProcess/WebGeolocationManagerProxy.h:
1345 * UIProcess/WebIconDatabase.h:
1346 * UIProcess/WebInspectorProxy.h:
1347 * UIProcess/WebKeyValueStorageManager.h:
1348 * UIProcess/WebMediaCacheManagerProxy.h:
1349 * UIProcess/WebNetworkInfoManagerProxy.h:
1350 * UIProcess/WebOriginDataManagerProxy.h:
1351 * UIProcess/WebPageProxy.h:
1352 * UIProcess/WebProcessProxy.h:
1353 * UIProcess/WebResourceCacheManagerProxy.h:
1354 * UIProcess/WebVibrationProxy.h:
1355 * UIProcess/efl/PageViewportControllerClientEfl.h:
1356 * UIProcess/efl/WebViewEfl.h:
1357 * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
1358 * UIProcess/mac/SecItemShimProxy.h:
1359 * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
1360 * UIProcess/mac/ViewGestureController.h:
1361 * UIProcess/mac/WebColorPickerMac.h:
1362 * UIProcess/soup/WebSoupRequestManagerProxy.h:
1363 * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
1364 * WebProcess/Battery/WebBatteryManager.h:
1365 * WebProcess/Cookies/WebCookieManager.h:
1366 * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
1367 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
1368 * WebProcess/Databases/WebToDatabaseProcessConnection.h:
1369 * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
1370 * WebProcess/FileAPI/BlobRegistryProxy.h:
1371 * WebProcess/Geolocation/WebGeolocationManager.h:
1372 * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
1373 * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
1374 * WebProcess/MediaCache/WebMediaCacheManager.h:
1375 * WebProcess/Network/NetworkProcessConnection.h:
1376 * WebProcess/Network/WebResourceLoadScheduler.h:
1377 * WebProcess/Network/WebResourceLoader.h:
1378 * WebProcess/NetworkInfo/WebNetworkInfoManager.h:
1379 * WebProcess/Notifications/WebNotificationManager.h:
1380 * WebProcess/OriginData/WebOriginDataManager.h:
1381 * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1382 * WebProcess/Plugins/PDF/PDFPlugin.h:
1383 * WebProcess/Plugins/PDF/PDFPluginAnnotation.h:
1384 * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.h:
1385 * WebProcess/Plugins/PDF/PDFPluginPasswordField.h:
1386 * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.h:
1387 * WebProcess/Plugins/PluginProcessConnection.h:
1388 * WebProcess/Plugins/PluginProcessConnectionManager.h:
1389 * WebProcess/Plugins/PluginProxy.h:
1390 * WebProcess/Plugins/PluginView.h:
1391 * WebProcess/ResourceCache/WebResourceCacheManager.h:
1392 * WebProcess/Scrolling/RemoteScrollingCoordinator.h:
1393 * WebProcess/Storage/StorageAreaImpl.h:
1394 * WebProcess/Storage/StorageAreaMap.h:
1395 * WebProcess/Storage/StorageNamespaceImpl.h:
1396 * WebProcess/WebConnectionToUIProcess.h:
1397 * WebProcess/WebCoreSupport/WebAlternativeTextClient.h:
1398 * WebProcess/WebCoreSupport/WebBatteryClient.h:
1399 * WebProcess/WebCoreSupport/WebChromeClient.h:
1400 * WebProcess/WebCoreSupport/WebColorChooser.h:
1401 * WebProcess/WebCoreSupport/WebContextMenuClient.h:
1402 * WebProcess/WebCoreSupport/WebDatabaseManager.h:
1403 * WebProcess/WebCoreSupport/WebDeviceProximityClient.h:
1404 * WebProcess/WebCoreSupport/WebDragClient.h:
1405 * WebProcess/WebCoreSupport/WebEditorClient.h:
1406 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1407 * WebProcess/WebCoreSupport/WebGeolocationClient.h:
1408 * WebProcess/WebCoreSupport/WebInspectorClient.h:
1409 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
1410 * WebProcess/WebCoreSupport/WebNavigatorContentUtilsClient.h:
1411 * WebProcess/WebCoreSupport/WebNetworkInfoClient.h:
1412 * WebProcess/WebCoreSupport/WebNotificationClient.h:
1413 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1414 * WebProcess/WebCoreSupport/WebPopupMenu.h:
1415 * WebProcess/WebCoreSupport/WebProgressTrackerClient.h:
1416 * WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
1417 * WebProcess/WebCoreSupport/WebVibrationClient.h:
1418 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
1419 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
1420 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1421 * WebProcess/WebPage/DrawingAreaImpl.h:
1422 * WebProcess/WebPage/EventDispatcher.h:
1423 * WebProcess/WebPage/ViewGestureGeometryCollector.h:
1424 * WebProcess/WebPage/WebBackForwardListProxy.h:
1425 * WebProcess/WebPage/WebPage.h:
1426 * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
1427 * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
1428 * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
1429 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
1430 * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
1431 * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
1432 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
1433 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
1434 * WebProcess/WebProcess.h:
1435 * WebProcess/soup/WebSoupRequestManager.h:
1437 2014-01-16 Ian Henderson <ianh@apple.com>
1439 Expose scrollView on WKView
1440 https://bugs.webkit.org/show_bug.cgi?id=127085
1442 Reviewed by Antti Koivisto.
1444 Expose WKView's scroll view as a property. In order to support
1445 clients calling setDelegate:, we create a forwarder object that sends
1446 delegate methods to both WKView (the "internal delegate") and the
1447 publicly-exposed delegate (the "external delegate").
1449 * UIProcess/API/Cocoa/WKView.h:
1450 * UIProcess/API/ios/WKScrollView.h:
1451 * UIProcess/API/ios/WKScrollView.mm:
1452 (-[WKScrollViewDelegateForwarder initWithInternalDelegate:externalDelegate:]):
1453 (-[WKScrollViewDelegateForwarder methodSignatureForSelector:]):
1454 (-[WKScrollViewDelegateForwarder respondsToSelector:]):
1455 (-[WKScrollViewDelegateForwarder forwardInvocation:]):
1456 (-[WKScrollView setInternalDelegate:]):
1457 (-[WKScrollView setDelegate:]):
1458 (-[WKScrollView delegate]):
1459 Pretend like _externalDelegate is the real delegate to avoid exposing
1460 our internal delegate or forwarder object.
1461 (-[WKScrollView _updateDelegate]):
1462 (-[WKScrollView dealloc]):
1463 * UIProcess/API/ios/WKViewIOS.mm:
1464 (-[WKView scrollView]):
1465 (-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
1467 2014-01-15 Carlos Garcia Campos <cgarcia@igalia.com>
1469 [GTK][EFL][NIX] Do not use PrintContext, Frame and DocumentLoader in Errors
1470 https://bugs.webkit.org/show_bug.cgi?id=127047
1472 Reviewed by Martin Robinson.
1474 * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
1475 (WebKit::WebPrintOperationGtk::frameURL): Helper function to get
1476 the URL of the frame being printed.
1477 (WebKit::WebPrintOperationGtk::print): Use frameURL() as failing
1478 URL for printing errors.
1479 * WebProcess/WebPage/gtk/WebPrintOperationGtk.h:
1481 2014-01-15 Benjamin Poulain <bpoulain@apple.com>
1483 Move user agent code to WebCore and unify some code between OS X and iOS
1484 https://bugs.webkit.org/show_bug.cgi?id=127080
1486 Reviewed by Sam Weinig.
1488 * UIProcess/ios/WebPageProxyIOS.mm:
1489 (WebKit::userVisibleWebKitVersionString):
1490 (WebKit::WebPageProxy::standardUserAgent):
1491 * UIProcess/mac/WebPageProxyMac.mm:
1492 (WebKit::WebPageProxy::standardUserAgent):
1493 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1494 (InitWebCoreSystemInterface):
1496 2014-01-15 Eunmi Lee <eunmi15.lee@samsung.com>
1498 [EFL][WK2] Use timestamp when event occurs for touch events.
1499 https://bugs.webkit.org/show_bug.cgi?id=126424
1501 Reviewed by Gyuyoung Kim.
1503 Current time is used for touch event's timestamp instead of timestamp
1504 when event occurs. Timestamp of touch event is used to implement flick
1505 gesture, so it should be real value for accurate gesture processing.
1507 * UIProcess/API/efl/EwkView.cpp:
1508 Function names for handling touch events are changed to distinguish
1509 mouse events and multi events.
1510 (EwkView::setTouchEventsEnabled):
1511 (EwkView::feedTouchEvents):
1512 (EwkView::handleMouseDownForTouch):
1513 (EwkView::handleMouseUpForTouch):
1514 (EwkView::handleMouseMoveForTouch):
1515 (EwkView::handleMultiDownForTouch):
1516 (EwkView::handleMultiUpForTouch):
1517 (EwkView::handleMultiMoveForTouch):
1518 * UIProcess/API/efl/EwkView.h:
1519 * UIProcess/API/efl/GestureRecognizer.cpp:
1520 (WebKit::GestureHandler::handlePan):
1521 (WebKit::GestureRecognizer::processTouchEvent):
1522 (WebKit::GestureRecognizer::noGesture):
1523 (WebKit::GestureRecognizer::singleTapGesture):
1524 (WebKit::GestureRecognizer::doubleTapGesture):
1525 (WebKit::GestureRecognizer::panGesture):
1526 (WebKit::GestureRecognizer::pinchGesture):
1527 * UIProcess/API/efl/GestureRecognizer.h:
1529 2014-01-15 Gavin Barraclough <barraclough@apple.com>
1531 Change Page, FocusController to use ViewState
1532 https://bugs.webkit.org/show_bug.cgi?id=126533
1534 Unreviewed rollout, this caused a regression.
1536 * WebProcess/WebPage/WebPage.cpp:
1537 (WebKit::WebPage::WebPage):
1538 (WebKit::WebPage::setActive):
1539 (WebKit::WebPage::setViewIsVisible):
1540 (WebKit::WebPage::setFocused):
1541 (WebKit::WebPage::setIsInWindow):
1542 (WebKit::WebPage::setViewStateInternal):
1543 (WebKit::WebPage::setIsVisuallyIdle):
1544 * WebProcess/WebPage/WebPage.h:
1546 2014-01-15 Yongjun Zhang <yongjun_zhang@apple.com>
1548 https://bugs.webkit.org/show_bug.cgi?id=127072
1549 Don't autorelease wrapper object (WebProcessPlugInScriptWorld) for InjectedBundleScriptWorld::normalWorld().
1551 Reviewed by Geoffrey Garen.
1553 In [WKWebProcessPlugInScriptWorld normalWorld], InjectedBundleScriptWorld::normalWorld() returns a static
1554 instance, autoreleasing its wrapper object could cause a dangling pointer and crash later.
1556 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm:
1557 (+[WKWebProcessPlugInScriptWorld normalWorld]):
1559 2014-01-15 Andy Estes <aestes@apple.com>
1561 [iOS] Properly exclude the shim dylibs this time
1562 https://bugs.webkit.org/show_bug.cgi?id=127075
1564 Reviewed by Anders Carlsson.
1566 BaseLegacyProcess.xcconfig was setting EXCLUDED_SOURCE_FILE_NAMES in
1567 conflict with what I added in r161918, and I misspelled the setting
1568 name in two instances. Fix these two bugs.
1570 Also remove a vestigial OTHER_LDFLAGS from WebContentProcess.xcconfig
1573 * Configurations/BaseLegacyProcess.xcconfig:
1574 * Configurations/NetworkProcess.xcconfig:
1575 * Configurations/PluginProcess.xcconfig:
1576 * Configurations/WebContentProcess.xcconfig:
1578 2014-01-15 Enrica Casucci <enrica@apple.com>
1580 Support WebSelections in WK2 on iOS.
1581 https://bugs.webkit.org/show_bug.cgi?id=127015
1583 Reviewed by Benjamin Poulain.
1585 This is the first step towards adding support for selections in
1586 non editable content on iOS for WK2.
1587 In particular, this patch adds the basic plumbing to decide which
1588 gesture recognizers are enabled and adds empty stubs for the gestures
1589 that we'll need to support.
1590 There are two separate assistants for selections, one to be used
1591 in editable text (UIWKTextInteractionAssistant) and one for non editable
1592 text (UIWKSelectionAssistant) and they are mutually exclusive.
1593 UIWKSelectionAssistant is created at the time the view is created,
1594 and swapped with UIWKTextInteraction assistant
1595 only when an editable element is focused and the keyboard appears on screen.
1597 gestureRecognizerShouldBegin is the delegate call used to decide which gestures
1598 should begin based on the position the gesture occurred at.
1599 We want to avoid as much as possible synchronous calls to the WebProcess to
1600 retrieve information about the content and in order to do so, we take advantage
1601 of the order in which the gesture recognizers will trigger, based on the delay
1602 configured at initialization.
1603 The first gesture to trigger is highlightLongPress, followed by longpress in the
1604 active assistant and longpress in the WKInteractionView.
1605 There are two different scenarios for highlighlongpress based on which assistant is
1608 UIWKSelectionAssistant is active:
1609 We send a request to the WebProcess to get information on the position
1610 and we return YES, allowing the gesture to start.
1611 We delegate to the WebProcess the proper handling of highlight based on the element.
1612 When longPress gesture fires for the assistant, we assume we have received the reply to our
1613 previous request, if not we fetch the information synchronously.
1614 We are then able to make an informed decision about whether
1615 or not to start the gesture. If the reply is NO, the third and last long press
1616 gesture can be evaluated to decide whether to show the action sheet or simply generate
1619 UIWKTextInteractionAssistant is active:
1620 In this case we must have information about the position immediately and we issue
1621 a synchronous request to the WebProcess.
1622 If we are not interacting with the same node, we return NO.
1623 Then the longpress gesture fires for the assistant which performs the same check.
1624 If the node is the same, the loupe gesture will start, otherwise the last longpress
1625 gesture will be evaluated to decide about showing the action sheet or generating a
1628 * Scripts/webkit2/messages.py:
1629 * Shared/InteractionInformationAtPosition.cpp: Added.
1630 (WebKit::InteractionInformationAtPosition::encode):
1631 (WebKit::InteractionInformationAtPosition::decode):
1632 * Shared/InteractionInformationAtPosition.h: Added.
1633 (WebKit::InteractionInformationAtPosition::InteractionInformationAtPosition):
1634 * UIProcess/API/ios/PageClientImplIOS.h:
1635 * UIProcess/API/ios/PageClientImplIOS.mm:
1636 (WebKit::PageClientImpl::positionInformationDidChange):
1637 * UIProcess/API/ios/WKContentView.mm:
1638 (-[WKContentView _positionInformationDidChange:]):
1639 * UIProcess/API/ios/WKContentViewInternal.h:
1640 * UIProcess/API/ios/WKInteractionView.h:
1641 * UIProcess/API/ios/WKInteractionView.mm:
1642 (-[WKInteractionView initWithFrame:]):
1643 (-[WKInteractionView dealloc]):
1644 (-[WKInteractionView gestureRecognizer:canPreventGestureRecognizer:]):
1645 (-[WKInteractionView gestureRecognizer:canBePreventedByGestureRecognizer:]):
1647 (-[WKInteractionView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
1648 (-[WKInteractionView _showImageSheet]):
1649 (-[WKInteractionView _showLinkSheet]):
1650 (-[WKInteractionView _actionForLongPress]):
1651 (-[WKInteractionView ensurePositionInformationIsUpToDate:]):
1652 (-[WKInteractionView gestureRecognizerShouldBegin:]):
1653 (-[WKInteractionView hasSelectablePositionAtPoint:]):
1654 (-[WKInteractionView pointIsInAssistedNode:]):
1655 (-[WKInteractionView _longPressRecognized:]):
1656 (-[WKInteractionView _doubleTapRecognized:]):
1657 (-[WKInteractionView _twoFingerDoubleTapRecognized:]):
1658 (-[WKInteractionView _twoFingerPanRecognized:]):
1659 (-[WKInteractionView useSelectionAssistantWithMode:]):
1660 (-[WKInteractionView _positionInformationDidChange:]):
1661 (-[WKInteractionView interactionAssistant]):
1662 (-[WKInteractionView _startAssistingKeyboard]):
1663 (-[WKInteractionView _stopAssistingKeyboard]):
1664 * UIProcess/PageClient.h:
1665 * UIProcess/WebPageProxy.h:
1666 * UIProcess/WebPageProxy.messages.in:
1667 * UIProcess/ios/WebPageProxyIOS.mm:
1668 (WebKit::WebPageProxy::didReceivePositionInformation):
1669 (WebKit::WebPageProxy::getPositionInformation):
1670 (WebKit::WebPageProxy::requestPositionInformation):
1671 * WebKit2.xcodeproj/project.pbxproj:
1672 * WebProcess/WebPage/WebPage.h:
1673 * WebProcess/WebPage/WebPage.messages.in:
1674 * WebProcess/WebPage/ios/WebPageIOS.mm:
1675 (WebKit::WebPage::selectWithGesture):
1676 (WebKit::WebPage::getPositionInformation):
1677 (WebKit::WebPage::requestPositionInformation):
1679 2014-01-15 Yongjun Zhang <yongjun_zhang@apple.com>
1681 https://bugs.webkit.org/show_bug.cgi?id=127066
1682 Add WKBrowsingContextHandle.h to WebKit2 private headers.
1684 Reviewed by Dan Bernstein.
1686 Add WKBrowsingContextHandle.h to WebKit2 private headers so that WebKit2 client
1687 can use WKBrowsingContextHandle class.
1689 * WebKit2.xcodeproj/project.pbxproj:
1691 2014-01-15 Piotr Grad <p.grad@samsung.com>
1693 toStringVector static function definition should not be redundant.
1694 https://bugs.webkit.org/show_bug.cgi?id=126872.
1696 Reviewed by Anders Carlsson.
1698 toStringVector function was declared twice in InjectedBundle.cpp and WebPageGroup.cpp as static.
1699 In order to remove redundant definition this function was moved into API::Array.
1701 * Shared/APIArray.cpp:
1702 (API::Array::toStringVector):
1703 * Shared/APIArray.h:
1704 * UIProcess/WebPageGroup.cpp:
1705 (WebKit::WebPageGroup::addUserStyleSheet):
1706 (WebKit::WebPageGroup::addUserScript):
1707 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1708 (WebKit::InjectedBundle::addUserScript):
1709 (WebKit::InjectedBundle::addUserStyleSheet):
1711 2014-01-10 Gavin Barraclough <barraclough@apple.com>
1713 REGRESSION (r158369): Some pop-up windows open at incorrect size (affects GMail, theblaze.com)
1714 https://bugs.webkit.org/show_bug.cgi?id=126289
1716 Reviewed by Anders Carlson.
1718 Partial revert of https://bugs.webkit.org/show_bug.cgi?id=123557.
1719 On window.open, update page when the UIProcess sends the create message
1721 * UIProcess/WebPageProxy.cpp:
1722 (WebKit::WebPageProxy::initializeWebPage):
1723 (WebKit::WebPageProxy::creationParameters):
1724 * UIProcess/WebPageProxy.h:
1725 - creation paraments are not preserved at window.open.
1726 * WebProcess/WebPage/WebPage.cpp:
1727 (WebKit::WebPage::reinitializeWebPage):
1728 (WebKit::WebPage::setViewState):
1729 (WebKit::WebPage::setViewStateInternal):
1730 * WebProcess/WebPage/WebPage.h:
1731 - add interface to update page.
1732 * WebProcess/WebProcess.cpp:
1733 (WebKit::WebProcess::createWebPage):
1734 - if we try to create a page that already exists, update the current page's view state.
1736 2014-01-15 Carlos Garcia Campos <cgarcia@igalia.com>
1738 [GTK] Web process sometimes crashes when printing in synchronous mode
1739 https://bugs.webkit.org/show_bug.cgi?id=126979
1741 Reviewed by Gustavo Noronha Silva.
1743 When printing synchronously in GTK+ we need to make sure that we
1744 have a list of Printers before starting the print operation. Getting
1745 the list of printers is done synchronously by GTK+, but using a
1746 nested main loop that might process IPC messages comming from the
1747 UI process like EndPrinting. When the EndPrinting message is
1748 received while the printer list is being populated, the print
1749 operation is finished unexpectely and the web process crashes. The
1750 PrinterListGtk class gets the list of printers in the constructor
1751 so we just need to ensure there's an instance alive during the
1752 synchronous print operation. In case of asynchronous printing the
1753 printer list will be created during the print operation without
1754 any risk, because the EndPrinting message is not sent until the
1755 printing callback has been received in the UI process.
1757 * GNUmakefile.list.am: Add new files to compilation.
1758 * PlatformGTK.cmake: Ditto.
1759 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1760 (WebKit::WebChromeClient::print): Ensure PrinterListGtk is created
1761 before the synchronous printing and destroyed afterwards.
1762 * WebProcess/WebPage/gtk/PrinterListGtk.cpp: Added.
1763 (WebKit::PrinterListGtk::shared): Return the singleton.
1764 (WebKit::PrinterListGtk::enumeratePrintersFunction): Callback
1765 called by gtk_enumerate_printers() when a new printer is found.
1766 (WebKit::PrinterListGtk::PrinterListGtk): Call
1767 gtk_enumerate_printers() in syhchronous mode.
1768 (WebKit::PrinterListGtk::~PrinterListGtk):
1769 (WebKit::PrinterListGtk::addPrinter): Add the printer to the list
1770 and set the default printer if needed.
1771 (WebKit::PrinterListGtk::findPrinter): Find the printer for the
1773 * WebProcess/WebPage/gtk/PrinterListGtk.h: Added.
1774 * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp: Use
1775 PrinterListGtk class to find the printer instead of calling
1776 gtk_enumerate_printers().
1778 2014-01-15 Tomas Popela <tpopela@redhat.com>
1780 [SOUP] [WK2] - Disable MemoryCache when the DOCUMENT_VIEWER cache model is set
1781 https://bugs.webkit.org/show_bug.cgi?id=126577
1783 Reviewed by Carlos Garcia Campos.
1785 As in http://trac.webkit.org/changeset/152483, but this time for
1786 WebKit2. When WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER is set we need to
1787 disable the MemoryCache completely to prevent caching of the resources.
1789 * WebProcess/soup/WebProcessSoup.cpp:
1790 (WebKit::WebProcess::platformSetCacheModel):
1792 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
1794 [GTK] UI process crashes when closing the window right after printing with javascript
1795 https://bugs.webkit.org/show_bug.cgi?id=126981
1797 Reviewed by Gustavo Noronha Silva.
1799 The UI process crashes because when the page is closed, the web
1800 view is destroyed before the print operation has actually
1801 finished. Use a weak pointer to make sure the web view pointer is
1802 set to NULL when the it's destroyed and emit the finished callback
1803 always so that the user can clean up the operation even when the
1804 web view has been closed.
1806 * UIProcess/API/gtk/WebKitPrintOperation.cpp:
1807 (drawPagesForPrintingCompleted):
1809 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
1811 [GTK] UI process crashes when the web process crashes while printing
1812 https://bugs.webkit.org/show_bug.cgi?id=126977
1814 Reviewed by Gustavo Noronha Silva.
1816 When the web process crashes, the printing callback is
1817 invalidated, so the function is called with a NULL error.
1819 * UIProcess/API/gtk/WebKitPrintOperation.cpp:
1820 (drawPagesForPrintingCompleted): Check wkError is not NULL before
1822 * UIProcess/API/gtk/WebKitWebView.cpp:
1823 (webkitWebViewPrintFrame): Set the print mode of the operation
1824 before emitting the print signal.
1826 2014-01-14 Brady Eidson <beidson@apple.com>
1828 IDB: create object store support
1829 <rdar://problem/15779639> and https://bugs.webkit.org/show_bug.cgi?id=127011
1831 Reviewed by Anders Carlsson.
1833 Add messaging/callback infrastructure for creating object stores:
1834 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
1835 (WebKit::DatabaseProcessIDBConnection::createObjectStore):
1836 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
1837 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
1839 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
1840 (WebKit::WebIDBServerConnection::createObjectStore):
1841 (WebKit::WebIDBServerConnection::didCreateObjectStore):
1842 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
1843 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
1845 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
1846 (WebKit::UniqueIDBDatabase::didChangeDatabaseVersion):
1847 (WebKit::UniqueIDBDatabase::didCreateObjectStore):
1848 (WebKit::UniqueIDBDatabase::didCompleteBoolRequest):
1849 (WebKit::UniqueIDBDatabase::createObjectStore):
1850 (WebKit::UniqueIDBDatabase::createObjectStoreInBackingStore):
1851 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
1853 * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
1855 Add serialization helpers to save/restore an IDBKeyPath to/from disk:
1856 * DatabaseProcess/IndexedDB/IDBSerialization.cpp:
1857 (WebKit::serializeIDBKeyPath):
1858 (WebKit::deserializeIDBKeyPath):
1859 * DatabaseProcess/IndexedDB/IDBSerialization.h:
1861 Add object store metadata to the schema, and save/restore the metadata:
1862 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
1863 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
1864 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata):
1865 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore):
1866 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
1868 * Scripts/webkit2/messages.py:
1870 * WebKit2.xcodeproj/project.pbxproj:
1872 2014-01-14 Jae Hyun Park <jae.park@company100.net>
1874 [GTK] Unreviewed build fix after r162034
1876 * GNUmakefile.list.am:
1878 2014-01-14 Ryuan Choi <ryuan.choi@samsung.com>
1880 Unreviewed build fix for CMake based ports after r162034.
1884 2014-01-14 Jeffrey Pfau <jpfau@apple.com>
1886 Build fix after r162034
1888 Rubber-stamped by Benjamin Poulain.
1890 * WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp:
1892 2014-01-14 Anders Carlsson <andersca@apple.com>
1894 Create separate progress tracker clients
1895 https://bugs.webkit.org/show_bug.cgi?id=127025
1897 Reviewed by Sam Weinig.
1899 * WebKit2.xcodeproj/project.pbxproj:
1900 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1901 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1902 * WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp: Copied from Source/WebCore/loader/ProgressTrackerClient.h.
1903 (WebKit::WebProgressTrackerClient::WebProgressTrackerClient):
1904 (WebKit::WebProgressTrackerClient::progressTrackerDestroyed):
1905 (WebKit::WebProgressTrackerClient::progressStarted):
1906 (WebKit::WebProgressTrackerClient::progressEstimateChanged):
1907 (WebKit::WebProgressTrackerClient::progressFinished):
1908 * WebProcess/WebCoreSupport/WebProgressTrackerClient.h: Copied from Source/WebCore/loader/ProgressTrackerClient.h.
1909 * WebProcess/WebPage/WebPage.cpp:
1910 (WebKit::WebPage::WebPage):
1912 2014-01-14 Benjamin Poulain <bpoulain@apple.com>
1914 [WK2] Make WebPageProxy's setUserAgent private
1915 https://bugs.webkit.org/show_bug.cgi?id=127013
1917 Reviewed by Anders Carlsson.
1919 * UIProcess/WebPageProxy.h:
1920 The API to modify the user agent already has 3 "setters":
1922 -setApplicationNameForUserAgent
1925 The method WebPageProxy::setUserAgent() is supposed to be internal, not used directly.
1926 Using it directly would cause unexpected behaviors, for example:
1927 -Set the user agent with setUserAgent.
1928 -Set CustomUserAgent.
1929 -Reset CustomUserAgent.
1930 ->The user agent is now standardUserAgent instead of the user agent defined initially.
1932 2014-01-14 Commit Queue <commit-queue@webkit.org>
1934 Unreviewed, rolling out r162000.
1935 http://trac.webkit.org/changeset/162000
1936 https://bugs.webkit.org/show_bug.cgi?id=127009
1938 API versioning is wrong (Requested by rfong on #webkit).
1940 * UIProcess/API/C/WKAPICast.h:
1941 * UIProcess/API/C/WKPageLoaderClient.h:
1942 * UIProcess/API/C/WKPageUIClient.h:
1943 * UIProcess/WebLoaderClient.cpp:
1944 * UIProcess/WebLoaderClient.h:
1945 * UIProcess/WebPageProxy.cpp:
1946 * UIProcess/WebPageProxy.h:
1947 * UIProcess/WebPageProxy.messages.in:
1948 * UIProcess/WebUIClient.cpp:
1949 * UIProcess/WebUIClient.h:
1950 * UIProcess/mac/WebInspectorProxyMac.mm:
1951 (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1952 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1953 * WebProcess/WebCoreSupport/WebChromeClient.h:
1954 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1955 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1956 * WebProcess/WebPage/WebPage.cpp:
1957 * WebProcess/WebPage/WebPage.h:
1959 2014-01-14 Csaba Osztrogonác <ossy@webkit.org>
1961 Speculative buildfix after r161999.
1963 * Shared/APIObject.h:
1965 2014-01-09 Roger Fong <roger_fong@apple.com>
1967 Add support for handling WebGL load policies.
1968 https://bugs.webkit.org/show_bug.cgi?id=126935
1969 <rdar://problem/15790448>.
1971 Reviewed by Brent Fulgham.
1973 Boiler plate code for sending messages to and from the UI and Web Process.
1975 * UIProcess/API/C/WKAPICast.h:
1976 (WebKit::toWebGLLoadPolicy):
1977 * UIProcess/API/C/WKPageLoaderClient.h:
1978 * UIProcess/API/C/WKPageUIClient.h:
1979 * UIProcess/WebLoaderClient.cpp:
1980 (WebKit::WebLoaderClient::webGLLoadPolicy):
1981 * UIProcess/WebLoaderClient.h:
1982 * UIProcess/WebPageProxy.cpp:
1983 (WebKit::WebPageProxy::webGLContextCreated):
1984 (WebKit::WebPageProxy::webGLPolicyForHost):
1985 * UIProcess/WebPageProxy.h:
1986 * UIProcess/WebPageProxy.messages.in:
1987 * UIProcess/WebUIClient.cpp:
1988 (WebKit::WebUIClient::webGLContextCreated):
1989 * UIProcess/WebUIClient.h:
1990 * UIProcess/mac/WebInspectorProxyMac.mm:
1991 (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1992 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1993 (WebKit::WebChromeClient::webGLContextCreated):
1994 * WebProcess/WebCoreSupport/WebChromeClient.h:
1995 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1996 (WebKit::WebFrameLoaderClient::webGLPolicyForHost):
1997 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1998 * WebProcess/WebPage/WebPage.cpp: A sendSync is used here to get the webGLPolicyForHost message sent between the Web and UI process.
1999 In the future this will be replaced with a strategy is non-blocking.
2000 (WebKit::WebPage::getWebGLPolicyForHost):
2001 * WebProcess/WebPage/WebPage.h:
2003 2014-01-14 Mark Rowe <mrowe@apple.com>
2005 WebKit2 leaks sudden termination assertions when a page with unload handlers is closed.
2006 <https://webkit.org/b/126974> / <rdar://problem/15812954>
2008 When a page with an unload handler is loaded, the web process tells the UI process that it
2009 should disable sudden termination. However, when the page is closed the connection between
2010 the web and UI process is torn down before the web content has a chance to tell the UI
2011 process to reenable sudden termination.
2013 Reviewed by Anders Carlsson.
2015 * UIProcess/WebProcessProxy.cpp:
2016 (WebKit::WebProcessProxy::WebProcessProxy):
2017 (WebKit::WebProcessProxy::~WebProcessProxy): Balance any outstanding disableSuddenTermination calls.
2018 (WebKit::WebProcessProxy::enableSuddenTermination): Decrement the count.
2019 (WebKit::WebProcessProxy::disableSuddenTermination): Increment the count.
2020 * UIProcess/WebProcessProxy.h:
2022 2014-01-14 Joseph Pecoraro <pecoraro@apple.com>
2024 Web Inspector: For Remote Inspection link WebProcess's to their parent UIProcess
2025 https://bugs.webkit.org/show_bug.cgi?id=126995
2027 Reviewed by Timothy Hatcher.
2029 * WebProcess/WebCoreSupport/WebInspectorClient.h:
2030 * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
2031 (WebKit::WebInspectorClient::parentProcessIdentifier):
2032 WebProcesses are proxies for a parent UIProcess.
2034 2014-01-14 Tim Horton <timothy_horton@apple.com>
2036 iOS WebKit2 build fixes, part 3
2038 * WebKit2.xcodeproj/project.pbxproj:
2039 Remove some files from the 'All' target that should never have been a part of it.
2041 2014-01-14 Tim Horton <timothy_horton@apple.com>
2043 iOS WebKit2 build fixes, part 2
2045 * WebKit2.xcodeproj/project.pbxproj:
2046 Add some missing files.
2048 2014-01-14 Brian J. Burg <burg@cs.washington.edu>
2050 Add ENABLE(WEB_REPLAY) feature flag to the build system
2051 https://bugs.webkit.org/show_bug.cgi?id=126949
2053 Reviewed by Joseph Pecoraro.
2055 * Configurations/FeatureDefines.xcconfig:
2057 2014-01-14 Tim Horton <timothy_horton@apple.com>
2059 Move WKView.mm to WKViewIOS.mm as 161950 was supposed to do.
2061 * UIProcess/API/ios/WKView.mm: Removed.
2062 * UIProcess/API/ios/WKViewIOS.mm: Copied from UIProcess/API/ios/WKView.mm.
2064 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
2066 [GTK] Test /webkit2/WebKitWebContext/languages crashes with network process enabled
2067 https://bugs.webkit.org/show_bug.cgi?id=126130
2069 Reviewed by Anders Carlsson.
2071 We need to notify the network process when the user preferred
2072 languages have changed to update the SoupSession accordingly.
2074 * NetworkProcess/NetworkProcess.h: Add
2075 userPreferredLanguagesChanged when using soup network backend.
2076 * NetworkProcess/NetworkProcess.messages.in: Add
2077 UserPreferredLanguagesChanged message when using soup network
2079 * NetworkProcess/soup/NetworkProcessSoup.cpp:
2080 (WebKit::NetworkProcess::userPreferredLanguagesChanged): Update
2081 the SoupSession to use the given languages.
2082 (WebKit::NetworkProcess::platformInitializeNetworkProcess): Call
2083 userPreferredLanguagesChanged() when initialization parameters
2085 (WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):
2086 Remove unnedded WebCore prefix.
2087 (WebKit::NetworkProcess::clearCacheForAllOrigins): Simplify using
2089 * Shared/Network/NetworkProcessCreationParameters.cpp:
2090 (WebKit::NetworkProcessCreationParameters::encode): Encode the
2092 (WebKit::NetworkProcessCreationParameters::decode): Decode the
2094 * Shared/Network/NetworkProcessCreationParameters.h:
2095 * UIProcess/WebContext.cpp:
2096 (WebKit::WebContext::languageChanged): Send a message also to the
2098 * UIProcess/soup/WebContextSoup.cpp:
2099 (WebKit::WebContext::platformInitializeNetworkProcess): Set
2100 languages initial parameter.
2102 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
2104 [SOUP] SoupNetworkSession::setAcceptLanguages should receive a const reference
2105 https://bugs.webkit.org/show_bug.cgi?id=126966
2107 Reviewed by Gustavo Noronha Silva.
2109 * WebProcess/soup/WebProcessSoup.cpp:
2110 (WebKit::setSoupSessionAcceptLanguage): Use const Vector<String>&.
2112 2014-01-14 Andreas Kling <akling@apple.com>
2114 Remove deprecated DeferrableOneShotTimer constructor.
2115 <https://webkit.org/b/126984>
2117 Reviewed by Anders Carlsson.
2119 * WebProcess/Plugins/PluginView.h:
2120 * WebProcess/Plugins/PluginView.cpp:
2121 (WebKit::PluginView::pluginSnapshotTimerFired):
2123 Take the timer by reference so we can use the new constructor.
2125 2014-01-13 Tim Horton <timothy_horton@apple.com>
2127 iOS WebKit2 build fixes, part 1
2129 * Configurations/WebKit2.xcconfig:
2130 * NetworkProcess/NetworkResourceLoader.cpp:
2131 * NetworkProcess/NetworkResourceLoader.h:
2132 * NetworkProcess/RemoteNetworkingContext.h:
2133 * Shared/WebEventConversion.h:
2134 * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
2135 * UIProcess/API/ios/WKInteractionView.mm:
2136 (-[WKTextPosition isEqual:]):
2137 * UIProcess/API/ios/WKViewIOS.mm: Renamed from Source/WebKit2/UIProcess/API/ios/WKView.mm.
2138 * UIProcess/ios/WebPageProxyIOS.mm:
2139 * UIProcess/ios/WebProcessProxyIOS.mm:
2140 * WebKit2.xcodeproj/project.pbxproj:
2141 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
2142 * WebProcess/WebPage/WebPage.h:
2143 * WebProcess/WebPage/ios/WebPageIOS.mm:
2144 (WebKit::WebPage::elementDidFocus):
2145 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2147 2014-01-13 Jinwoo Song <jinwoo7.song@samsung.com>
2149 [EFL][WK2] Disable failing API tests
2150 https://bugs.webkit.org/show_bug.cgi?id=126960
2152 Reviewed by Gyuyoung Kim.
2154 Disable color picker test until bug 119120 is resolved.
2156 * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
2159 2014-01-13 Jinwoo Song <jinwoo7.song@samsung.com>
2161 [EFL][WK2] ewk_view_page_contents_get() API test is failing
2162 https://bugs.webkit.org/show_bug.cgi?id=126957
2164 Reviewed by Gyuyoung Kim.
2166 As the day in 'Date' field may be one digit or two digit,
2167 the data length may also be varied by one byte.
2169 * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2170 (EWK2ViewTest::PageContentsAsMHTMLCallback):
2172 2014-01-13 Commit Queue <commit-queue@webkit.org>
2174 Unreviewed, rolling out r161939.
2175 http://trac.webkit.org/changeset/161939
2176 https://bugs.webkit.org/show_bug.cgi?id=126956
2178 didn't work with mac, of course (Requested by thorton on
2181 * NetworkProcess/NetworkResourceLoader.cpp:
2182 * NetworkProcess/NetworkResourceLoader.h:
2183 * NetworkProcess/RemoteNetworkingContext.h:
2184 * Shared/WebEventConversion.h:
2185 * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
2186 * UIProcess/API/ios/WKInteractionView.mm:
2187 (-[WKTextPosition isEqual:]):
2188 * WebKit2.xcodeproj/project.pbxproj:
2189 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
2190 * WebProcess/WebPage/WebPage.h:
2191 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2193 2014-01-13 Benjamin Poulain <bpoulain@apple.com>
2195 Update WebPageProxyIOS's user agent string
2196 https://bugs.webkit.org/show_bug.cgi?id=126933
2198 Reviewed by Darin Adler.
2200 * UIProcess/ios/WebPageProxyIOS.mm:
2201 (WebKit::WebPageProxy::standardUserAgent):
2202 Send a more reasonable user agent. The previous one was forcing
2203 iOS 5.1's iPad user-agent.
2205 2014-01-13 Tim Horton <timothy_horton@apple.com>
2207 iOS WebKit2 build fixes
2209 * NetworkProcess/NetworkResourceLoader.cpp:
2210 * NetworkProcess/NetworkResourceLoader.h:
2211 Introduce/clarify some confusion about CFNETWORK vs. PLATFORM(IOS).
2213 * NetworkProcess/RemoteNetworkingContext.h:
2214 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
2215 Get rid of an override of something that doesn't exist anymore.
2217 * WebKit2.xcodeproj/project.pbxproj:
2218 Add some files. It's likely there are more missing, but this is a start.
2220 * Shared/WebEventConversion.h:
2221 * WebProcess/WebPage/WebPage.h:
2222 Use WebKitAdditions.
2224 * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
2225 Something bizarre is happening with internal deprecation warnings.
2227 * UIProcess/API/ios/WKInteractionView.mm:
2228 (-[WKTextPosition isEqual:]):
2231 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2232 Remove an override of something that doesn't exist anymore.
2234 2014-01-13 Andy Estes <aestes@apple.com>
2236 [iOS] Build Fix: Don't build the 'All-iOS' target on iOS. Just use 'All'.
2240 2014-01-13 Martin Robinson <mrobinson@igalia.com>
2242 [CMake] Mark all dependency include paths and libraries as advanced variables
2243 https://bugs.webkit.org/show_bug.cgi?id=126504
2245 Reviewed by Daniel Bates.
2247 * CMakeLists.txt: Mark the LIBRT_LIBRARIES variable as advanced.
2249 2014-01-13 Martin Robinson <mrobinson@igalia.com>
2251 [GTK][CMake] Circular dependency in generation of WebKitEnumTypes.h
2252 https://bugs.webkit.org/show_bug.cgi?id=126912
2254 Reviewed by Daniel Bates.
2256 * PlatformGTK.cmake: Remove the circular dependency by generating WebKitEnumTypes.h with
2257 all installed headers except for WebKitEnumTypes.h itself.
2259 2014-01-13 Andy Estes <aestes@apple.com>
2261 [iOS] Exclude shims and PluginProcess.app from the WebKit2 build
2262 https://bugs.webkit.org/show_bug.cgi?id=126936
2264 Reviewed by Daniel Bates.
2266 * Configurations/All.xcconfig: Added. Excluded PluginProcess.app from
2267 being copied into WebKit2.framework on iOS.
2268 * Configurations/NetworkProcess.xcconfig: Excluded SecItemShim.dylib
2269 from being copied into NetworkProcess.app on iOS.
2270 * Configurations/PluginProcess.xcconfig: Excluded
2271 PluginProcessShim.dylib from being copied into PluginProcess.app and
2272 set SKIP_INSTALL to YES on iOS.
2273 * Configurations/PluginProcessShim.xcconfig: Added. Linked the shim
2274 against necessary frameworks on Mac.
2275 * Configurations/SecItemShim.xcconfig: Ditto.
2276 * Configurations/WebProcessShim.xcconfig: Ditto.
2277 * Configurations/WebContentProcess.xcconfig: Excluded
2278 WebProcessShim.dylib from being copied into WebProcess.app on iOS.
2279 * PluginProcess/mac/PluginProcessShim.mm: Added #if !PLATFORM(IOS) guards.
2280 * Shared/mac/CookieStorageShimLibrary.cpp: Ditto.
2281 * WebProcess/mac/SecItemShimLibrary.mm: Ditto.
2282 * WebKit2.xcodeproj/project.pbxproj: Removed Mac-only frameworks from
2283 the shims' 'Link Binary with Libraries' build phases. Added new xcconfigs.
2285 2014-01-13 Jinwoo Song <jinwoo7.song@samsung.com>
2287 [EFL][WK2] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed
2288 https://bugs.webkit.org/show_bug.cgi?id=126882
2290 Reviewed by Gyuyoung Kim.
2292 * Shared/efl/ProcessExecutablePathEfl.cpp:
2293 (WebKit::executablePathOfWebProcess):
2294 (WebKit::executablePathOfPluginProcess):
2295 (WebKit::executablePathOfNetworkProcess):
2296 * UIProcess/API/efl/EwkView.cpp:
2297 (wkPageToEvasObjectMap):
2298 * UIProcess/API/efl/ewk_context.cpp:
2300 * UIProcess/API/efl/ewk_page_group.cpp:
2302 * UIProcess/efl/TextCheckerClientEfl.cpp:
2303 (TextCheckerClientEfl::instance):
2304 * UIProcess/efl/TextCheckerClientEfl.h:
2306 2014-01-13 Carlos Garcia Campos <cgarcia@igalia.com>
2308 [SOUP] Add SoupNetworkSession class to wrap a SoupSession
2309 https://bugs.webkit.org/show_bug.cgi?id=126813
2311 Reviewed by Gustavo Noronha Silva.
2313 Use the new SoupNetworkSession API.
2315 * NetworkProcess/soup/NetworkProcessSoup.cpp:
2316 (WebKit::NetworkProcess::platformInitializeNetworkProcess):
2317 (WebKit::NetworkProcess::platformSetCacheModel):
2318 (WebKit::NetworkProcess::clearCacheForAllOrigins):
2319 * NetworkProcess/unix/NetworkProcessMainUnix.cpp:
2320 (WebKit::NetworkProcessMain):
2321 * WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:
2322 (WebKit::WebCookieManager::setCookiePersistentStorage):
2323 * WebProcess/efl/WebProcessMainEfl.cpp:
2324 (WebKit::WebProcessMainEfl):
2325 * WebProcess/gtk/WebProcessMainGtk.cpp:
2326 (WebKit::WebProcessMainGtk):
2327 * WebProcess/soup/WebProcessSoup.cpp:
2328 (WebKit::WebProcess::platformSetCacheModel):
2329 (WebKit::WebProcess::platformClearResourceCaches):
2330 (WebKit::setSoupSessionAcceptLanguage):
2331 (WebKit::WebProcess::platformInitializeWebProcess):
2332 * WebProcess/soup/WebSoupRequestManager.cpp:
2333 (WebKit::WebSoupRequestManager::registerURIScheme):
2335 2014-01-13 Zalan Bujtas <zalan@apple.com>
2337 Enable SUBPIXEL_LAYOUT on Mac
2338 <https://webkit.org/b/126283>
2340 Reviewed by Simon Fraser.
2342 * Configurations/FeatureDefines.xcconfig:
2344 2014-01-12 Sergio Correia <sergio.correia@openbossa.org>
2346 [EFL][WK2] Make API tests work again
2347 https://bugs.webkit.org/show_bug.cgi?id=126769
2349 Reviewed by Gyuyoung Kim.
2351 The EFL and WK2 test binaries are currently being generated at *TestWebKitAPI/
2352 [E]WebKit2, respectively, and this causes problems because the logic to find
2353 where WebProcess is to look in the same directory of the running process and
2354 then proceed to use LIBEXECDIR (typically /usr/loca/bin).
2356 This patch introduces a WEBKIT_EXEC_PATH environment variable, inspired in the
2357 Gtk port, which allows us to look for WebProcess initially in this directory,
2360 * Shared/efl/ProcessExecutablePathEfl.cpp:
2361 (WebKit::findProcessPath): Change the logic to look initially in
2362 WEBKIT_EXEC_PATH, then proceed with the existing checks.
2363 * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
2364 (EWK2UnitTest::EWK2UnitTestEnvironment::EWK2UnitTestEnvironment):
2365 Define WEBKIT_EXEC_PATH to be used by EWebKit2 tests.
2367 2014-01-12 Darin Adler <darin@apple.com>
2369 Add deprecatedCharacters as a synonym for characters and convert most call sites
2370 https://bugs.webkit.org/show_bug.cgi?id=126858
2372 Reviewed by Anders Carlsson.
2374 * Shared/APIString.h:
2375 * UIProcess/WebPageProxy.cpp:
2376 (WebKit::WebPageProxy::checkTextOfParagraph):
2377 (WebKit::WebPageProxy::checkSpellingOfString):
2378 (WebKit::WebPageProxy::checkGrammarOfString):
2379 * WebProcess/WebPage/EncoderAdapter.cpp:
2380 (WebKit::EncoderAdapter::encodeString):
2381 Use deprecatedCharacters instead of characters.
2383 2014-01-12 Darin Adler <darin@apple.com>
2385 Add type checking to isEqual methods
2386 https://bugs.webkit.org/show_bug.cgi?id=126862
2388 Reviewed by Anders Carlsson.
2390 * UIProcess/API/ios/WKInteractionView.mm:
2391 (-[WKTextRange isEqual:]): Added type checking for the argument. The old
2392 code asserted instead, and it's not clear what guarantees that assertion is
2393 true. Added a FIXME about the lack of a hash method. Added another FIXME
2394 about the fact that this method ignores much of the object state. Removed
2395 an unneeded extra fetch of the isRange property. Deleted some dead code.
2396 (-[WKTextPosition isEqual:]): Ditto.
2398 2014-01-12 Anders Carlsson <andersca@apple.com>
2400 Remove the last remaining uses of AtomicallyInitializedStatic
2401 https://bugs.webkit.org/show_bug.cgi?id=126863
2403 Reviewed by Darin Adler.
2405 * Shared/mac/SecItemShim.cpp:
2406 (WebKit::responseMap):
2408 2014-01-12 Dan Bernstein <mitz@apple.com>
2410 Added a reference to WebContentService/Info-OSX.plist to the project.
2412 * WebKit2.xcodeproj/project.pbxproj:
2414 2014-01-12 Dan Bernstein <mitz@apple.com>
2418 * WebKit2.xcodeproj/project.pbxproj:
2419 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: Copied from WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist.
2420 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist: Removed.
2422 2014-01-12 Andy Estes <aestes@apple.com>
2424 Build Fix: Objective-C GC should be unsupported in iOS WebKit2
2426 * Configurations/Base.xcconfig:
2428 2014-01-12 Andy Estes <aestes@apple.com>
2430 [iOS] Upstream WebKit2 xcconfig changes to fix the build
2432 * Configurations/All-iOS.xcconfig: Added.
2433 * Configurations/Base.xcconfig:
2434 * Configurations/BaseLegacyProcess.xcconfig:
2435 * Configurations/BaseTarget.xcconfig:
2436 * Configurations/BaseXPCService.xcconfig:
2437 * Configurations/DebugRelease.xcconfig:
2438 * Configurations/WebContentService.xcconfig:
2439 * Configurations/iOS.xcconfig: Added.
2441 2014-01-12 Carlos Garcia Campos <cgarcia@igalia.com>
2443 Unreviewed. Fix make distcheck.
2445 * GNUmakefile.am: Add WebKit2InspectorGResourceBundle.xml to
2447 * GNUmakefile.list.am: Removed deleted files and add missing ones.
2448 * NetworkProcess/unix/NetworkProcessMainUnix.cpp: Move
2449 ProxyResolverSoup.h to EFL platform ifdef, because GTK port doesn't
2450 build the proxy resolver.
2452 2014-01-12 Carlos Garcia Campos <cgarcia@igalia.com>
2454 [GTK] Fix return value of WebKitDownload::created-destination
2455 https://bugs.webkit.org/show_bug.cgi?id=126741
2457 Reviewed by Martin Robinson.
2459 WebKitDownload::created-destination signal should be void instead
2460 of gboolean. This doesn't break the API/ABI.
2462 * UIProcess/API/gtk/WebKitDownload.cpp:
2463 (webkit_download_class_init):
2464 (webkitDownloadDestinationCreated):
2466 2014-01-11 Yongjun Zhang <yongjun_zhang@apple.com>
2468 Support bool argument for encoding/decoding invocations.
2469 https://bugs.webkit.org/show_bug.cgi?id=126823
2471 Reviewed by Sam Weinig.
2473 For remote invocation method argument, current we support int, double and ObjC
2474 object, this patch add support for bool type too.
2476 * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2478 (decodeInvocationArguments):
2480 2014-01-11 Alexey Proskuryakov <ap@apple.com>
2482 [Mac] [Windows] Stop scheduling network requests in WebCore
2483 https://bugs.webkit.org/show_bug.cgi?id=126789
2484 <rdar://problem/15114727>
2486 Reviewed by Sam Weinig.
2488 * NetworkProcess/mac/NetworkResourceLoadSchedulerMac.mm:
2489 (WebKit::NetworkResourceLoadScheduler::platformInitializeMaximumHTTPConnectionCountPerHost):
2490 We no longer need the trick with 7 connections, as synchronous requests always have
2493 * UIProcess/API/C/WKContext.cpp: Removed long obsolete functions.
2495 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: (InitWebCoreSystemInterface):
2496 Updated for new WKSI function names.
2498 2014-01-11 Simon Fraser <simon.fraser@apple.com>
2500 Unfork GraphicsContext::drawNativeImage for iOS
2501 https://bugs.webkit.org/show_bug.cgi?id=126824
2503 Reviewed by Dean Jackson.
2505 GraphicsContext::drawNativeImage had a different signature for iOS,
2506 which required #ifdefs at all the call sites. Unfork by passing the "scale"
2507 parameter everywhere (it's only used on iOS).
2509 * Shared/API/c/cg/WKImageCG.cpp:
2510 (WKImageCreateFromCGImage):
2512 2014-01-11 Sam Weinig <sam@webkit.org>
2514 Clean up iterator filter / iterator range code
2515 https://bugs.webkit.org/show_bug.cgi?id=126817
2517 Reviewed by Anders Carlsson.
2519 * Shared/APIArray.h:
2520 Update elementsOfType() to use combination of FilterIterator and TransformIterator
2521 (now that FilterIterator no longer has a transform predicate) and make use of the
2524 2014-01-11 Anders Carlsson <andersca@apple.com>
2526 Simplify Timer and DeferrableOneShotTimer using std::function
2527 https://bugs.webkit.org/show_bug.cgi?id=126816
2529 Reviewed by Sam Weinig.
2531 Add another unexported symbol.
2533 * Configurations/WebKit2.xcconfig:
2535 2014-01-11 Jinwoo Song <jinwoo7.song@samsung.com>
2537 [EFL][WK2] Use nullptr instead of 0 in EFL API layer
2538 https://bugs.webkit.org/show_bug.cgi?id=126806
2540 Reviewed by Anders Carlsson.
2542 * UIProcess/API/efl/EwkView.cpp:
2544 * UIProcess/API/efl/ewk_auth_request.cpp:
2545 (ewk_auth_request_suggested_username_get):
2546 (ewk_auth_request_realm_get):
2547 (ewk_auth_request_host_get):
2548 * UIProcess/API/efl/ewk_back_forward_list.cpp:
2549 (ewk_back_forward_list_current_item_get):
2550 (ewk_back_forward_list_previous_item_get):
2551 (ewk_back_forward_list_next_item_get):
2552 (ewk_back_forward_list_item_at_index_get):
2553 (ewk_back_forward_list_n_back_items_copy):
2554 (ewk_back_forward_list_n_forward_items_copy):
2555 * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
2556 (ewk_back_forward_list_item_url_get):
2557 (ewk_back_forward_list_item_title_get):
2558 (ewk_back_forward_list_item_original_url_get):
2559 * UIProcess/API/efl/ewk_context.cpp:
2560 (ewk_context_cookie_manager_get):
2561 (ewk_context_database_manager_get):
2562 (ewk_context_favicon_database_get):
2563 (ewk_context_storage_manager_get):
2564 (ewk_context_new_with_injected_bundle_path):
2565 * UIProcess/API/efl/ewk_context_menu.cpp:
2566 (ewk_context_menu_items_get):
2567 * UIProcess/API/efl/ewk_context_menu_item.cpp:
2568 (ewk_context_menu_item_new_with_submenu):
2569 (ewk_context_menu_item_title_get):
2570 (ewk_context_menu_item_parent_menu_get):
2571 (ewk_context_menu_item_submenu_get):
2572 * UIProcess/API/efl/ewk_download_job.cpp:
2573 (ewk_download_job_request_get):
2574 (ewk_download_job_response_get):
2575 (ewk_download_job_destination_get):
2576 (ewk_download_job_suggested_filename_get):
2577 * UIProcess/API/efl/ewk_error.cpp:
2578 (ewk_error_url_get):
2579 (ewk_error_description_get):
2580 * UIProcess/API/efl/ewk_file_chooser_request.cpp:
2581 (ewk_file_chooser_request_accepted_mimetypes_get):
2582 * UIProcess/API/efl/ewk_form_submission_request.cpp:
2583 (ewk_form_submission_request_field_names_get):
2584 (ewk_form_submission_request_field_value_get):
2585 * UIProcess/API/efl/ewk_navigation_data.cpp:
2586 (ewk_navigation_data_title_get):
2587 (ewk_navigation_data_original_request_get):
2588 (ewk_navigation_data_url_get):
2589 * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
2590 (ewk_navigation_policy_frame_name_get):
2591 (ewk_navigation_policy_request_get):
2592 * UIProcess/API/efl/ewk_object.cpp:
2594 * UIProcess/API/efl/ewk_popup_menu.cpp:
2595 (ewk_popup_menu_items_get):
2596 * UIProcess/API/efl/ewk_popup_menu_item.cpp:
2597 (ewk_popup_menu_item_text_get):
2598 (ewk_popup_menu_item_tooltip_get):
2599 (ewk_popup_menu_item_accessibility_text_get):
2600 * UIProcess/API/efl/ewk_security_origin.cpp:
2601 (ewk_security_origin_host_get):
2602 (ewk_security_origin_protocol_get):
2603 * UIProcess/API/efl/ewk_settings.cpp:
2604 (ewk_settings_default_text_encoding_name_get):
2605 * UIProcess/API/efl/ewk_url_request.cpp:
2606 (ewk_url_request_url_get):
2607 (ewk_request_cookies_first_party_get):
2608 (ewk_url_request_http_method_get):
2609 * UIProcess/API/efl/ewk_url_response.cpp:
2610 (ewk_url_response_url_get):
2611 (ewk_url_response_mime_type_get):
2612 * UIProcess/API/efl/ewk_url_scheme_request.cpp:
2613 (ewk_url_scheme_request_scheme_get):
2614 (ewk_url_scheme_request_url_get):
2615 (ewk_url_scheme_request_path_get):
2616 * UIProcess/API/efl/ewk_view.cpp:
2619 (ewk_view_smart_add):
2620 (ewk_view_add_with_context):
2621 (ewk_view_context_get):
2622 (ewk_view_page_group_get):
2624 (ewk_view_favicon_get):
2625 (ewk_view_settings_get):
2626 (ewk_view_title_get):
2627 (ewk_view_theme_get):
2628 (ewk_view_back_forward_list_get):
2629 (ewk_view_custom_encoding_get):
2630 (ewk_view_user_agent_get):
2632 2014-01-10 Anders Carlsson <andersca@apple.com>
2634 Tweak ProgressTrackerClient functions
2635 https://bugs.webkit.org/show_bug.cgi?id=126808
2637 Reviewed by Sam Weinig.
2639 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2640 (WebKit::WebFrameLoaderClient::progressStarted):
2641 (WebKit::WebFrameLoaderClient::progressEstimateChanged):
2642 (WebKit::WebFrameLoaderClient::progressFinished):
2643 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2645 2014-01-10 Sam Weinig <sam@webkit.org>
2647 Convert HandleMessage.h to use variadic templates
2648 https://bugs.webkit.org/show_bug.cgi?id=126469
2650 Reviewed by Anders Carlsson.
2652 * Platform/IPC/HandleMessage.h:
2653 (IPC::callMemberFunctionImpl):
2654 (IPC::callMemberFunction):
2655 Replace massive copy and pasted code with variadic magic.
2657 2014-01-10 Anders Carlsson <andersca@apple.com>
2659 Move progress tracking functions from FrameLoaderClient to a new ProgressTrackerClient
2660 https://bugs.webkit.org/show_bug.cgi?id=126801
2662 Reviewed by Sam Weinig.
2664 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2665 * WebProcess/WebPage/WebPage.cpp:
2666 (WebKit::WebPage::WebPage):
2668 2014-01-10 Anders Carlsson <andersca@apple.com>
2671 https://bugs.webkit.org/show_bug.cgi?id=126782
2673 Reviewed by Tim Horton.
2675 * UIProcess/WebPageProxy.cpp:
2676 * UIProcess/WebPageProxy.h:
2677 * WebProcess/WebPage/WebPage.cpp:
2678 * WebProcess/WebPage/WebPage.h:
2679 * WebProcess/WebPage/WebPage.messages.in:
2681 2014-01-10 Benjamin Poulain <bpoulain@apple.com>
2683 Remove the BlackBerry port from trunk
2684 https://bugs.webkit.org/show_bug.cgi?id=126715
2686 Reviewed by Anders Carlsson.
2688 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2689 (WebKit::WebChromeClient::setCursor):
2691 2014-01-10 Benjamin Poulain <bpoulain@apple.com>
2693 Remove the BlackBerry port from trunk
2694 https://bugs.webkit.org/show_bug.cgi?id=126715
2696 Reviewed by Anders Carlsson.
2698 * Scripts/generate-forwarding-headers.pl:
2700 2014-01-10 Carlos Garcia Campos <cgarcia@igalia.com>
2702 Implement NetworkResourceLoader::receivedCancellation
2703 https://bugs.webkit.org/show_bug.cgi?id=126129
2705 Reviewed Alexey Proskuryakov.
2707 Implement ResourceHandleClient::receivedCancellation() in the
2708 network process to cancel the load when cancellation is received
2709 from the authentication manager like the web process does.
2711 * NetworkProcess/NetworkResourceLoader.cpp:
2712 (WebKit::NetworkResourceLoader::receivedCancellation): Cancel the load.
2713 * NetworkProcess/NetworkResourceLoader.h:
2715 2014-01-09 Jinwoo Song <jinwoo7.song@samsung.com>
2717 [EFL][WK2] Add APIs for setting and getting the default text encoding name
2718 https://bugs.webkit.org/show_bug.cgi?id=126736
2720 Reviewed by Gyuyoung Kim.
2722 Add APIs to set and get the default text encoding name.
2724 * UIProcess/API/efl/ewk_settings.cpp:
2725 (ewk_settings_default_text_encoding_name_get):
2726 (ewk_settings_default_text_encoding_name_set):
2727 * UIProcess/API/efl/ewk_settings.h:
2728 * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2731 2014-01-09 Simon Fraser <simon.fraser@apple.com>
2733 Enable async scrolling for iOS
2734 https://bugs.webkit.org/show_bug.cgi?id=126730
2736 Reviewed by Tim Horton.
2738 Turn on ENABLE_ASYNC_SCROLLING for iOS.
2740 On iOS, create ScrollingTreeScrollingNodeIOS nodes.
2742 * UIProcess/Scrolling/RemoteScrollingTree.cpp:
2743 (WebKit::RemoteScrollingTree::createNode):
2744 * UIProcess/Scrolling/RemoteScrollingTree.h:
2746 2014-01-06 Gavin Barraclough <barraclough@apple.com>
2748 Change Page, FocusController to use ViewState
2749 https://bugs.webkit.org/show_bug.cgi?id=126533
2751 Reviewed by Tim Horton.
2753 These classes currently maintain a set of separate fields to represent the view state;
2754 combine these into a single field, and allow WebPage to send the combined update rather
2755 than individual changes.
2757 Maintain existing interface for WebKit1 clients.
2759 * WebProcess/WebPage/WebPage.cpp:
2760 (WebKit::WebPage::WebPage):
2761 - Combined separate calls to Page::setViewState.
2762 (WebKit::WebPage::updateIsInWindow):
2763 - Simplied from setIsInWindow.
2764 (WebKit::WebPage::setViewState):
2765 - Combined separate calls to Page::setViewState.
2766 * WebProcess/WebPage/WebPage.h:
2767 - Declare updateIsInWindow.
2769 2014-01-09 Tim Horton <timothy_horton@apple.com>
2771 Upstream iOS changes after r161530
2772 https://bugs.webkit.org/show_bug.cgi?id=126728
2774 Reviewed by Dean Jackson.
2776 * UIProcess/API/ios/WKContentView.mm:
2777 (-[WKContentView setViewportSize:]):
2778 (-[WKContentView didFinishScrollTo:]):
2779 (-[WKContentView didScrollTo:]):
2780 Adopt the new approach.
2782 2014-01-09 Brian Burg <bburg@apple.com>
2784 REGRESSION (r160152): Selection drag snapshot doesn't appear or has the wrong content on Retina
2785 https://bugs.webkit.org/show_bug.cgi?id=125375
2787 Reviewed by Darin Adler.
2789 Remove scaling from WebDragClient because it is now selectively
2790 performed by WebCore according to the drag image source.
2792 * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
2793 (WebKit::WebDragClient::startDrag): Don't scale the provided drag image.
2795 2014-01-09 Tim Horton <timothy_horton@apple.com>
2797 WebKit2 View Gestures: Support plugins that take over the page scale gesture
2798 https://bugs.webkit.org/show_bug.cgi?id=126399
2799 <rdar://problem/15738928>
2801 Reviewed by Sam Weinig.
2803 Teach ViewGestureController how to handle WebFrame::handlesPageScaleGesture=true,
2804 which is used so that PDFPlugin can deal with magnification itself.
2806 * UIProcess/mac/ViewGestureController.cpp:
2807 (WebKit::ViewGestureController::ViewGestureController):
2808 (WebKit::ViewGestureController::didCollectGeometryForMagnificationGesture):
2809 (WebKit::ViewGestureController::handleMagnificationGesture):
2810 (WebKit::ViewGestureController::endMagnificationGesture):
2811 (WebKit::ViewGestureController::didCollectGeometryForSmartMagnificationGesture):
2812 If the WebFrame is going to handle the page scale gesture itself (which currently
2813 simply means that it is a main-frame PDFPlugin), send the magnification information
2814 straight through to it. Also, don't provide smart-zoom in this case, since there
2815 is currently no way to collect geometry information from the plugin.
2817 * UIProcess/mac/ViewGestureController.h:
2818 * UIProcess/mac/ViewGestureController.messages.in:
2819 * WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
2820 (WebKit::ViewGestureGeometryCollector::collectGeometryForMagnificationGesture):
2821 (WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
2822 Retrieve WebFrame::handlesPageScaleGesture and return it to the UI process.
2824 2014-01-09 Dan Bernstein <mitz@apple.com>
2826 [Cocoa] Promote WKBackForwardList{,Item}.h to public
2827 https://bugs.webkit.org/show_bug.cgi?id=126707
2829 Reviewed by Sam Weinig.
2831 * UIProcess/API/Cocoa/WKBackForwardList.h: Stopped including the C API header.
2832 * UIProcess/API/Cocoa/WKBackForwardListItem.h: Ditto.
2833 * WebKit2.xcodeproj/project.pbxproj: Made the headers public.
2835 2014-01-09 Zan Dobersek <zdobersek@igalia.com>
2837 Revert back to using the -n option when producing symbolic links to the GTK-specific
2838 API directories under Source/WebKit2/. Removing the option in r161497 resulted in
2839 recursive links being created under those directories since the links were dereferenced.
2841 To actually ensure that the link is created anew, remove it so it is reconstructed.
2843 Rubber-stamped by Carlos Garcia Campos.
2847 2014-01-09 Carlos Garcia Campos <cgarcia@igalia.com>
2849 Crash when starting a download before the network process has been launched
2850 https://bugs.webkit.org/show_bug.cgi?id=126258
2852 Reviewed by Anders Carlsson.
2854 We need to ensure there's a network process running before
2855 starting a new download like we do when using the web process.
2857 * UIProcess/WebContext.cpp:
2858 (WebKit::WebContext::download): Use ChildProcessProxy::send()
2859 instead of using the connection to make sure messages are queued
2860 if the process is still launching.
2861 (WebKit::WebContext::createDownloadProxy): Call
2862 ensureNetworkProcess() before creating the download proxy.
2864 2014-01-09 Carlos Garcia Campos <cgarcia@igalia.com>
2866 [SOUP] Partial file left on disk after a download fails or is cancelled in WebKit2
2867 https://bugs.webkit.org/show_bug.cgi?id=126686
2869 Reviewed by Martin Robinson.
2871 We are currently writing the downloads directly into the
2872 destination, and when a download fails or is cancelled after the
2873 destination has been decided, the partial file is left on the
2874 disk. Deleting the final file is not safe because there might be a
2875 race condition, so we can use an intermediate file like other
2876 browsers do, a file in the same directory than the target
2877 destination but with .wkdownload suffix, that is removed when the
2878 download fails or is cancelled. If the download finishes
2879 successfully the intermediate file is renamed to the final
2882 * Shared/Downloads/soup/DownloadSoup.cpp:
2883 (WebKit::DownloadClient::deleteIntermediateFileInNeeded): Delete
2884 the intermdiate file if it's been created already.
2885 (WebKit::DownloadClient::downloadFailed): Call deleteIntermediateFileInNeeded.
2886 (WebKit::DownloadClient::didReceiveResponse): Do not create a
2887 SoupMessage for the given ResourceResponse that is not used, cache
2888 the ResourceResponse instead. Create the intermediate file and use
2889 it instead of the final destination.
2890 (WebKit::DownloadClient::didReceiveData): Use the cached
2891 ResourceResponse directly.
2892 (WebKit::DownloadClient::didFinishLoading): Rename the
2893 intermediate file to the final destination and write the metadata
2894 in the final target destination.
2895 (WebKit::DownloadClient::cancel): Handle the download cancellation
2896 here, removing the intermediate file is needed and cancelling the
2897 ResourceHandle and the download.
2898 (WebKit::DownloadClient::handleResponseLater):
2899 (WebKit::Download::cancel): Let the client handle the cancellation.
2901 2014-01-08 Jinwoo Song <jinwoo7.song@samsung.com>
2903 WebKit2 EFL build fix after r161530
2904 https://bugs.webkit.org/show_bug.cgi?id=126678
2906 Reviewed by Tim Horton.
2908 Add PLATFORM(MAC) guards around setExposedRect() and exposedRect()
2909 in DrawingArea and WebFrameLoaderClient.
2911 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2912 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
2913 * WebProcess/WebPage/DrawingArea.h:
2915 2014-01-08 Martin Hock <mhock@apple.com>
2917 Stub for Session API
2918 https://bugs.webkit.org/show_bug.cgi?id=126626
2920 Reviewed by Sam Weinig.
2922 * Shared/API/c/WKBase.h:
2923 * Shared/API/c/WKSharedAPICast.h:
2924 * Shared/APIObject.h:
2925 * UIProcess/API/C/WKSessionRef.cpp: Added.
2926 (WKSessionGetTypeID):
2927 (WKSessionGetEphemeral):
2928 * UIProcess/API/C/WKSessionRef.h: Added.
2929 * UIProcess/API/Cocoa/WKSession.h: Added.
2930 * UIProcess/API/Cocoa/WKSession.mm: Added.
2931 (-[WKSession dealloc]):
2932 (-[WKSession ephemeral]):
2933 (-[WKSession API::]):
2934 * UIProcess/API/Cocoa/WKSessionInternal.h: Added.
2936 * UIProcess/APISession.cpp: Added.
2937 (API::Session::Session):
2938 (API::Session::create):
2939 (API::Session::isEphemeral):
2940 (API::Session::~Session):
2941 * UIProcess/APISession.h: Added.
2942 * WebKit2.xcodeproj/project.pbxproj:
2944 2014-01-08 Claudio Saavedra <csaavedra@igalia.com>
2946 [GTK] Add xdg.origin.url extended attribute to downloads
2947 https://bugs.webkit.org/show_bug.cgi?id=126638
2949 Reviewed by Carlos Garcia Campos.
2951 This is proposed by fdo in
2952 http://www.freedesktop.org/wiki/CommonExtendedAttributes/
2954 * Shared/Downloads/soup/DownloadSoup.cpp:
2955 (WebKit::DownloadClient::didReceiveResponse):
2957 2014-01-08 Simon Fraser <simon.fraser@apple.com>
2959 Make WK2 build when ENABLE(ASYNC_SCROLLING) is not defined
2960 https://bugs.webkit.org/show_bug.cgi?id=126675
2962 Reviewed by Tim Horton.
2964 We need a stub RemoteScrollingCoordinatorTransaction outside
2965 the #ifdef so that RemoteLayerTreeDrawingAreaProxy messages
2968 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
2969 (WebKit::RemoteScrollingCoordinatorTransaction::encode):
2970 (WebKit::RemoteScrollingCoordinatorTransaction::decode):
2971 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
2972 * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
2973 (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
2974 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
2975 (WebKit::RemoteLayerTreeDrawingArea::flushLayers):
2977 2014-01-08 Tim Horton <timothy_horton@apple.com>
2979 TileController can fail to receive exposedRect from the drawing area if set at the wrong time
2980 https://bugs.webkit.org/show_bug.cgi?id=126536
2982 Reviewed by Simon Fraser.
2984 * Configurations/WebKit2.xcconfig:
2985 * UIProcess/API/mac/WKView.mm:
2986 (-[WKView _updateViewExposedRect]):
2987 * UIProcess/DrawingAreaProxy.cpp:
2988 (WebKit::DrawingAreaProxy::DrawingAreaProxy):
2989 (WebKit::DrawingAreaProxy::setExposedRect):
2990 (WebKit::DrawingAreaProxy::exposedRectChangedTimerFired):
2991 * UIProcess/DrawingAreaProxy.h:
2992 (WebKit::DrawingAreaProxy::exposedRect):
2993 * UIProcess/WebPageProxy.cpp:
2994 (WebKit::WebPageProxy::WebPageProxy):
2995 (WebKit::WebPageProxy::close):
2996 * UIProcess/WebPageProxy.h:
2997 Move exposedRect stuff from WebPageProxy to DrawingAreaProxy.
2999 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3000 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3001 Push the exposedRect down into WebCore.
3003 * WebProcess/WebPage/DrawingArea.h:
3004 * WebProcess/WebPage/DrawingArea.messages.in:
3005 * WebProcess/WebPage/WebPage.cpp:
3006 * WebProcess/WebPage/WebPage.h:
3007 * WebProcess/WebPage/WebPage.messages.in:
3008 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3009 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
3010 (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
3011 (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
3012 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3013 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3014 (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
3015 (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
3016 (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
3017 (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
3018 (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
3019 (WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer):
3020 Get rid of "clipsToExposedRect", we just use infinite-ness of the rect
3021 to indicate that now.
3022 Don't scroll an infinite rect; it won't work.
3024 2014-01-08 Simon Fraser <simon.fraser@apple.com>
3026 Add ENABLE(ASYNC_SCROLLING) guards around WK2 scrolling files
3027 https://bugs.webkit.org/show_bug.cgi?id=126672
3029 Reviewed by Tim Horton.
3031 Protected WK2 scrolling files with ENABLE(ASYNC_SCROLLING) guards.
3033 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
3034 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
3035 * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
3036 * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:
3037 * UIProcess/Scrolling/RemoteScrollingTree.cpp:
3038 * UIProcess/Scrolling/RemoteScrollingTree.h:
3039 * WebProcess/Scrolling/RemoteScrollingCoordinator.h:
3040 * WebProcess/Scrolling/RemoteScrollingCoordinator.messages.in:
3041 * WebProcess/Scrolling/RemoteScrollingCoordinator.mm:
3043 2014-01-08 Ryuan Choi <ryuan.choi@samsung.com>
3045 [EFL][WK2] Add API to execute js script
3046 https://bugs.webkit.org/show_bug.cgi?id=101904
3048 Reviewed by Gyuyoung Kim.
3050 Add ewk_view_script_execute() which provides a way to execute user
3053 * UIProcess/API/efl/ewk_context.cpp:
3054 Added JS Global Contexta which is required to deserialize to the script
3055 value from the callback.
3056 (EwkContext::EwkContext):
3057 (EwkContext::~EwkContext):
3058 (EwkContext::jsGlobalContext):
3059 * UIProcess/API/efl/ewk_context_private.h:
3060 * UIProcess/API/efl/ewk_view.cpp:
3061 (Ewk_View_Script_Execute_Callback_Context::Ewk_View_Script_Execute_Callback_Context):
3062 (runJavaScriptCallback):
3063 (ewk_view_script_execute):
3064 * UIProcess/API/efl/ewk_view.h:
3065 * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3066 Added unit test for ewk_view_script_execute.
3067 (scriptExecuteCallback):
3070 2014-01-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
3072 [EFL] Move efl API test binaries to TestWebKitAPI/EWebKit|EWebKit2
3073 https://bugs.webkit.org/show_bug.cgi?id=126615
3075 Reviewed by Martin Robinson.
3077 Now EFL API test binaries created in *bin* directory with other executables.
3078 It would be good to move them to their folder. This patch moves them to
3079 *TestWebKitAPI/EWebKit|EWebKit2* directories.
3081 * PlatformEfl.cmake:
3083 2014-01-08 Anders Carlsson <andersca@apple.com>
3085 Add WTF::StringView and use it for grammar checking
3086 https://bugs.webkit.org/show_bug.cgi?id=126644
3088 Reviewed by Antti Koivisto.
3090 Use a StringView and remove a FIXME.
3092 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
3093 (WebKit::WebEditorClient::checkTextOfParagraph):
3094 * WebProcess/WebCoreSupport/WebEditorClient.h:
3096 2014-01-08 Zan Dobersek <zdobersek@igalia.com>
3098 [Automake] Scripts for generated build targets do not necessarily produce their output
3099 https://bugs.webkit.org/show_bug.cgi?id=126378
3101 Reviewed by Carlos Garcia Campos.
3103 * GNUmakefile.am: Don't pass the -n option to the ln command that links the build's include
3104 directories to actual source directories. This doesn't replace the original symbolic link,
3105 which can lead to the actual link being older than its dependencies and subsequent constant
3106 relinking at every build.
3108 2014-01-07 Eric Carlson <eric.carlson@apple.com>
3110 Teach MediaSessionManager to manage interruptions
3111 https://bugs.webkit.org/show_bug.cgi?id=126530
3113 Reviewed by Sam Weinig.
3115 * CMakeLists.txt: Add ${WEBCORE_DIR}/platform/animation to WebCore include directories.
3117 2014-01-07 Jinwoo Song <jinwoo7.song@samsung.com>
3119 [EFL][WK2] Fix failing ewk_view_page_contents_get() API test
3120 https://bugs.webkit.org/show_bug.cgi?id=126609
3122 Reviewed by Gyuyoung Kim.
3124 Compare the amount of bytes in the expected result file with
3125 the size of callback data from the API since the 'Date' field
3126 and the boundaries will be different on each case.
3127 Refered the test case of GTK port.
3129 * UIProcess/API/efl/tests/resources/resultMHTML.mht: Added.
3130 * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3131 (EWK2ViewTest::PageContentsAsMHTMLCallback):
3133 2014-01-07 Seokju Kwon <seokju@webkit.org>
3135 Web Inspector: Remove leftover 'device metrics' code
3136 https://bugs.webkit.org/show_bug.cgi?id=126607
3138 Reviewed by Joseph Pecoraro.
3140 * mac/WebKit2.order: Update after removing InspectorClient::overrideDeviceMetrics().
3142 2014-01-07 Simon Fraser <simon.fraser@apple.com>
3144 Fix the build. The WebKit2 project copied all of WebKit2/Scripts/webkit2 into WebKit2.framework/PrivateHeaders,
3145 but that's bad because there are test result files in there now. Fix by having the project copy specific
3146 .py files into rivateHeaders/webkit2
3148 * WebKit2.xcodeproj/project.pbxproj:
3150 2014-01-07 Simon Fraser <simon.fraser@apple.com>
3152 Make it possible for MessageReceivers to pass messages to their superclass, and use it for RemoteLayerTreeDrawingAreaProxy
3153 https://bugs.webkit.org/show_bug.cgi?id=126558
3155 Reviewed by Anders Carlsson.
3157 In a message.in file it's now possible to say:
3159 messages -> Subclass : Superclass { ... } and the generated code will
3160 call Superclass::didReceiveMessage().
3162 Use this to have RemoteLayerTreeDrawingAreaProxy pass messages up to
3165 * Scripts/webkit2/messages.py:
3166 (generate_message_handler):
3167 * Scripts/webkit2/model.py:
3168 (MessageReceiver.__init__):
3169 * Scripts/webkit2/parser.py:
3171 * UIProcess/DrawingAreaProxy.h:
3172 * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.messages.in:
3174 2014-01-07 Simon Fraser <simon.fraser@apple.com>
3176 Add message-generation test for non-legacy message receiver
3177 https://bugs.webkit.org/show_bug.cgi?id=126603
3179 Reviewed by Anders Carlsson.
3181 Add expected output files for a non-legacy message receiver, and add
3184 * Scripts/webkit2/LegacyMessageReceiver-expected.cpp: Copied from Source/WebKit2/Scripts/webkit2/MessageReceiver-expected.cpp.
3185 * Scripts/webkit2/LegacyMessages-expected.h: Added.
3186 * Scripts/webkit2/MessageReceiver-expected.cpp:
3187 (WebKit::WebPage::didReceiveMessage):
3188 (WebKit::WebPage::didReceiveSyncMessage):
3189 * Scripts/webkit2/messages_unittest.py:
3190 (MessagesTest.setUp):
3191 (ParsingTest.test_receiver):
3192 (HeaderTest.test_header):
3193 (ReceiverImplementationTest.test_receiver_implementation):
3194 * Scripts/webkit2/test-legacy-messages.in: Copied from Source/WebKit2/Scripts/webkit2/test-messages.in.
3195 * Scripts/webkit2/test-messages.in:
3197 2014-01-07 Simon Fraser <simon.fraser@apple.com>
3199 Move expected results out of messages_unittest.py into separate files
3200 https://bugs.webkit.org/show_bug.cgi?id=126602
3202 Reviewed by Anders Carlsson.
3204 Uninline the test input and output from messages_unittest.py to make
3205 it easier to add more tests.
3207 * Scripts/webkit2/MessageReceiver-expected.cpp: Added.
3208 (WebKit::WebPage::didReceiveWebPageMessage):
3209 (WebKit::WebPage::didReceiveSyncWebPageMessage):
3210 * Scripts/webkit2/Messages-expected.h: Added.
3211 * Scripts/webkit2/messages_unittest.py:
3212 (ParsingTest.test_receiver):
3213 * Scripts/webkit2/test-messages.in: Added.
3215 2014-01-07 Commit Queue <commit-queue@webkit.org>
3217 Unreviewed, rolling out r161447.
3218 http://trac.webkit.org/changeset/161447
3219 https://bugs.webkit.org/show_bug.cgi?id=126592
3221 needs some more work (Requested by thorton on #webkit).
3223 * UIProcess/API/mac/WKView.mm:
3224 (-[WKView _updateViewExposedRect]):
3225 * UIProcess/DrawingAreaProxy.cpp:
3226 (WebKit::DrawingAreaProxy::DrawingAreaProxy):
3227 * UIProcess/DrawingAreaProxy.h:
3228 * UIProcess/WebPageProxy.cpp:
3229 (WebKit::WebPageProxy::WebPageProxy):
3230 (WebKit::WebPageProxy::close):
3231 (WebKit::WebPageProxy::viewExposedRectChanged):
3232 (WebKit::WebPageProxy::exposedRectChangedTimerFired):
3233 * UIProcess/WebPageProxy.h:
3234 (WebKit::WebPageProxy::viewExposedRect):
3235 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3236 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3237 * WebProcess/WebPage/DrawingArea.h:
3238 (WebKit::DrawingArea::setExposedRect):
3239 (WebKit::DrawingArea::setClipsToExposedRect):
3240 * WebProcess/WebPage/DrawingArea.messages.in:
3241 * WebProcess/WebPage/WebPage.cpp:
3242 (WebKit::WebPage::viewExposedRectChanged):
3243 * WebProcess/WebPage/WebPage.h:
3244 * WebProcess/WebPage/WebPage.messages.in:
3245 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3246 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
3247 (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
3248 (WebKit::RemoteLayerTreeDrawingArea::setClipsToExposedRect):
3249 (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
3250 (WebKit::RemoteLayerTreeDrawingArea::updateMainFrameClipsToExposedRect):
3251 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3252 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3253 (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
3254 (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
3255 (WebKit::TiledCoreAnimationDrawingArea::setClipsToExposedRect):
3256 (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
3257 (WebKit::TiledCoreAnimationDrawingArea::updateMainFrameClipsToExposedRect):
3258 (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
3259 (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
3260 (WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer):
3262 2014-01-07 Tim Horton <timothy_horton@apple.com>
3264 TileController can fail to receive exposedRect from the drawing area if set at the wrong time
3265 https://bugs.webkit.org/show_bug.cgi?id=126536
3267 Reviewed by Anders Carlsson.
3269 * UIProcess/API/mac/WKView.mm:
3270 (-[WKView _updateViewExposedRect]):
3271 * UIProcess/DrawingAreaProxy.cpp:
3272 (WebKit::DrawingAreaProxy::DrawingAreaProxy):
3273 (WebKit::DrawingAreaProxy::setExposedRect):
3274 (WebKit::DrawingAreaProxy::exposedRectChangedTimerFired):
3275 * UIProcess/DrawingAreaProxy.h:
3276 (WebKit::DrawingAreaProxy::exposedRect):
3277 * UIProcess/WebPageProxy.cpp:
3278 (WebKit::WebPageProxy::WebPageProxy):
3279 (WebKit::WebPageProxy::close):
3280 * UIProcess/WebPageProxy.h:
3281 Move exposedRect stuff from WebPageProxy to DrawingAreaProxy.
3283 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3284 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3285 Push the exposedRect down into WebCore.
3287 * WebProcess/WebPage/DrawingArea.h:
3288 * WebProcess/WebPage/DrawingArea.messages.in:
3289 * WebProcess/WebPage/WebPage.cpp:
3290 * WebProcess/WebPage/WebPage.h:
3291 * WebProcess/WebPage/WebPage.messages.in:
3292 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3293 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
3294 (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
3295 (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
3296 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3297 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3298 (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
3299 (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
3300 (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
3301 (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
3302 (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
3303 (WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer):
3304 Get rid of "clipsToExposedRect", we just use infinite-ness of the rect
3305 to indicate that now.
3306 Don't scroll an infinite rect; it won't work.
3308 2014-01-07 Carlos Garcia Campos <cgarcia@igalia.com>
3310 Crash when trying to register a custom scheme before network process has been launched
3311 https://bugs.webkit.org/show_bug.cgi?id=126385
3313 Reviewed by Anders Carlsson.
3315 WebContext::registerSchemeForCustomProtocol() uses
3316 sendToNetworkingProcess() to send the message to the appropriate
3317 networking process. In the case of using web process,
3318 sendToNetworkingProcess() first checks if there's already a web
3319 process, doing nothing otherwise, but when using the network
3320 process it assumes there's already a network process. In both
3321 cases it's safe to do nothing, because the schemes will be passed
3322 as creation parameters to the process when launched.
3324 * UIProcess/WebContext.h:
3325 (WebKit::WebContext::sendToNetworkingProcess):
3327 2014-01-07 Jinwoo Song <jinwoo7.song@samsung.com>
3329 WebKit2 EFL build fix after r161387
3330 https://bugs.webkit.org/show_bug.cgi?id=126566
3332 Reviewed by Andreas Kling.
3334 Add missing ASYNC_SCROLLING macro.
3336 * UIProcess/WebPageProxy.h:
3337 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3338 * WebProcess/WebCoreSupport/WebChromeClient.h:
3339 * WebProcess/WebPage/WebPage.cpp:
3340 * WebProcess/WebPage/WebPage.h:
3342 2014-01-06 Simon Fraser <simon.fraser@apple.com>
3344 Hook up the RemoteScrollingCoordinator
3345 https://bugs.webkit.org/show_bug.cgi?id=126547
3347 Reviewed by Tim Horton.
3349 Hook up the RemoteScrollingCoordinator in WebKit2.
3351 When the RemoteLayerTreeDrawingArea is in use, WebPageProxy creates
3352 a RemoteScrollingCoordinator, and hands it mouseWheel events. It then
3353 scrolls via a RemoteScrollingTree constructed from state tree commits from the
3356 Scrolling tree commits happen via a transaction received by RemoteLayerTreeDrawingAreaProxy,
3357 atomically with layer tree transactions.
3359 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
3360 (WebKit::RemoteScrollingCoordinatorTransaction::encode): Fix encoding for some
3361 cases seen in WebKitTestRunner where a page has no ScrollingCoordinator.
3362 * UIProcess/WebPageProxy.cpp:
3363 (WebKit::WebPageProxy::initializeWebPage): Create the RemoteScrollingCoordinatorProxy
3364 when using a remote layer tree drawing area.
3365 (WebKit::WebPageProxy::handleWheelEvent): Pass to the scrolling coordinator.
3366 * UIProcess/WebPageProxy.h:
3367 (WebKit::WebPageProxy::scrollingCoordinatorProxy):
3368 * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h: Include the RemoteScrollingCoordinatorTransaction.
3369 * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.messages.in:
3370 * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
3371 (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
3372 * UIProcess/mac/RemoteLayerTreeHost.mm:
3373 (WebKit::RemoteLayerTreeHost::getLayer): It's valid to get a 0 layerID (e.g. when
3374 a layer disappears) so handle this case.
3375 * WebKit2.xcodeproj/project.pbxproj:
3376 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3377 (WebKit::WebChromeClient::createScrollingCoordinator): Override to create the
3378 RemoteScrollingCoordinator in the WebProcess.
3379 * WebProcess/WebCoreSupport/WebChromeClient.h:
3380 * WebProcess/WebPage/WebPage.cpp:
3381 (WebKit::WebPage::scrollingCoordinator): Not inline to avoid polluting the
3382 header with #includes.
3383 * WebProcess/WebPage/WebPage.h:
3384 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: Say that we want a ScrollingCoordinator.
3385 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
3386 (WebKit::RemoteLayerTreeDrawingArea::flushLayers): Add the scrollingTransaction to the
3389 2014-01-06 Jaehun Lim <ljaehun.lim@samsung.com>
3391 Use hasEnabledVerticalScrollbar instead of hasEnabledHorizontalScrollbar.
3392 https://bugs.webkit.org/show_bug.cgi?id=126546
3394 Reviewed by Simon Fraser.
3396 hasEnabledHorizontalScrollbar is used twice.
3398 * Shared/WebCoreArgumentCoders.cpp:
3399 (IPC::ArgumentCoder<WebCore::ScrollableAreaParameters>::encode):
3401 2014-01-06 Simon Fraser <simon.fraser@apple.com>
3405 Need to look in the WebProcess/Scrolling directory for .messages.in files.
3407 * DerivedSources.make:
3409 2014-01-06 Simon Fraser <simon.fraser@apple.com>
3413 Need to add RemoteScrollingCoordinator to MESSAGE_RECEIVERS so that
3414 RemoteScrollingCoordinatorMessages.h gets generated.
3416 * DerivedSources.make:
3418 2014-01-06 Simon Fraser <simon.fraser@apple.com>
3420 Rename DrawingArea::supportsThreadedScrolling() to supportsAsyncScrolling()
3421 https://bugs.webkit.org/show_bug.cgi?id=126529
3423 Reviewed by Tim Horton.
3425 Change function name from using "threaded" to "async" terminology.
3427 * WebProcess/WebPage/DrawingArea.h:
3428 (WebKit::DrawingArea::supportsAsyncScrolling):
3429 * WebProcess/WebPage/WebPage.cpp:
3430 (WebKit::WebPage::WebPage):
3431 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3433 2014-01-06 Simon Fraser <simon.fraser@apple.com>
3435 Add new files for UI-side scrolling
3436 https://bugs.webkit.org/show_bug.cgi?id=126532
3438 Reviewed by Anders Carlson.
3440 Add RemoteScrollingCoordinator, RemoteScrollingCoordinatorProxy,
3441 RemoteScrollingCoordinatorTransaction, RemoteScrollingTree.
3443 These allow the scrolling tree to be used in the UI process.
3444 RemoteScrollingCoordinator builds a ScrollingStateTree, which is
3445 encoded by RemoteScrollingCoordinatorTransaction. Decoding the
3446 transaction recreates that ScrollingStateTree in the UI process,
3447 and RemoteScrollingCoordinatorProxy "commits" that to update
3448 the RemoteScrollingTree.
3450 New classes are not hooked up to anything yet.
3452 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp: Added.
3453 (ArgumentCoder<ScrollingStateNode>::encode):
3454 (ArgumentCoder<ScrollingStateNode>::decode):
3455 (ArgumentCoder<ScrollingStateScrollingNode>::encode):
3456 (ArgumentCoder<ScrollingStateScrollingNode>::decode):
3457 (ArgumentCoder<ScrollingStateFixedNode>::encode):
3458 (ArgumentCoder<ScrollingStateFixedNode>::decode):
3459 (ArgumentCoder<ScrollingStateStickyNode>::encode):
3460 (ArgumentCoder<ScrollingStateStickyNode>::decode):
3461 (WebKit::encodeNodeAndDescendants):
3462 (WebKit::RemoteScrollingCoordinatorTransaction::encode):
3463 (WebKit::RemoteScrollingCoordinatorTransaction::decode):
3464 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h: Added.
3465 (WebKit::RemoteScrollingCoordinatorTransaction::setStateTreeToEncode):
3466 (WebKit::RemoteScrollingCoordinatorTransaction::scrollingStateTree):
3467 * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp: Added.
3468 (WebKit::RemoteScrollingCoordinatorProxy::RemoteScrollingCoordinatorProxy):
3469 (WebKit::RemoteScrollingCoordinatorProxy::~RemoteScrollingCoordinatorProxy):
3470 (WebKit::RemoteScrollingCoordinatorProxy::layerTreeHost):
3471 (WebKit::RemoteScrollingCoordinatorProxy::updateScrollingTree):
3472 (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
3473 (WebKit::RemoteScrollingCoordinatorProxy::handleWheelEvent):
3474 (WebKit::RemoteScrollingCoordinatorProxy::scrollPositionChanged):
3475 * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h: Added.
3476 * UIProcess/Scrolling/RemoteScrollingTree.cpp: Added.
3477 (WebKit::RemoteScrollingTree::create):
3478 (WebKit::RemoteScrollingTree::RemoteScrollingTree):
3479 (WebKit::RemoteScrollingTree::~RemoteScrollingTree):
3480 (WebKit::RemoteScrollingTree::tryToHandleWheelEvent):
3481 (WebKit::RemoteScrollingTree::handleWheelEventPhase):
3482 (WebKit::RemoteScrollingTree::updateMainFrameScrollPosition):
3483 (WebKit::RemoteScrollingTree::createNode):
3484 * UIProcess/Scrolling/RemoteScrollingTree.h: Added.
3485 (WebKit::RemoteScrollingTree::scrollingCoordinatorProxy):
3486 * WebKit2.xcodeproj/project.pbxproj:
3487 * WebProcess/Scrolling/RemoteScrollingCoordinator.h: Added.