Link to WebInspectorUI.framework at build time instead of soft linking.
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-07-01  Timothy Hatcher  <timothy@apple.com>
2
3         Link to WebInspectorUI.framework at build time instead of soft linking.
4
5         https://bugs.webkit.org/show_bug.cgi?id=118261
6
7         Reviewed by Joseph Pecoraro.
8
9         * Configurations/WebKit2.xcconfig:
10         * UIProcess/mac/WebInspectorProxyMac.mm:
11         (WebKit::inspectorReallyUsesWebKitUserInterface):
12         * WebKit2.xcodeproj/project.pbxproj:
13         * WebProcess/WebPage/mac/WebInspectorMac.mm:
14         (WebKit::inspectorReallyUsesWebKitUserInterface):
15
16 2013-07-01  Tim Horton  <timothy_horton@apple.com>
17
18         [wk2] TiledCoreAnimationDrawingArea should support scrolling its exposed rect
19         https://bugs.webkit.org/show_bug.cgi?id=118173
20         <rdar://problem/14301166>
21
22         Reviewed by Anders Carlsson.
23
24         Offset the exposed rect passed from the WKView by the main frame's current scroll position
25         before sending it to our TiledBackings, so that it is in the same coordinate space as their
26         ordinary visibleRects.
27
28         This has the side effect of making clips-to-exposed-rect testable (though useless) in Safari.
29
30         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
31         Add updateScrolledExposedRect() and m_scrolledExposedRect.
32
33         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
34         (WebKit::TiledCoreAnimationDrawingArea::scroll):
35         Call updateScrolledExposedRect when the main frame scrolls.
36
37         (WebKit::TiledCoreAnimationDrawingArea::setExposedRect):
38         Remove a FIXME about this change.
39         Call updateScrolledExposedRect instead of passing down the unscrolled rect.
40
41         (WebKit::TiledCoreAnimationDrawingArea::setClipsToExposedRect):
42         Call updateScrolledExposedRect, because that method will short-circuit if
43         setClipsToExposedRect is false, so we need to update here for correctness
44         if we get a setExposedRect(), setClipsToExposedRect(true) pair.
45
46         (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
47         Update m_scrolledExposedRect and propagate it to our TiledBackings.
48
49         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
50         (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
51         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
52         (WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer):
53         Use the scrolled exposed rect.
54
55 2013-07-01  Ada Chan  <adachan@apple.com>
56
57         Properly hide the header and footer banners if they are set to null.
58         https://bugs.webkit.org/show_bug.cgi?id=118219
59
60         Reviewed by Beth Dakin.
61         
62         Call Page::addFooterWithHeight(0) to remove the parent layer that hosts the banner when
63         the footer banner is detached. Similarly for the header banner.
64
65         * WebProcess/WebPage/mac/PageBannerMac.mm:
66         (WebKit::PageBanner::detachFromPage):
67
68 2013-07-01  Jochen Eisinger  <jochen@chromium.org>
69
70         Remove support for consumable user gestures
71         https://bugs.webkit.org/show_bug.cgi?id=118247
72
73         Reviewed by Geoffrey Garen.
74
75         * WebProcess/Notifications/WebNotificationManager.cpp:
76         (WebKit::WebNotificationManager::didClickNotification):
77         * WebProcess/Plugins/PluginView.cpp:
78         (WebKit::PluginView::performFrameLoadURLRequest):
79         (WebKit::PluginView::evaluate):
80         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
81         (WebKit::WebContextMenuClient::searchWithGoogle):
82
83 2013-06-27  Jer Noble  <jer.noble@apple.com>
84
85         Audio in apps which embed WebViews is corrupted.
86         https://bugs.webkit.org/show_bug.cgi?id=118163
87
88         Reviewed by Maciej Stachowiak.
89
90         Expose the WebCore lowPowerVideoAudioBufferSizeEnabled setting to WebKit2 clients.
91
92         * Shared/WebPreferencesStore.h:
93         * WebProcess/WebPage/WebPage.cpp:
94         (WebKit::WebPage::updatePreferences):
95
96 2013-07-01  Sam Weinig  <sam@webkit.org>
97
98         WKPageLoadDataWithUserData neglects to set the base URL that is passed in
99         <rdar://problem/14306784>
100         https://bugs.webkit.org/show_bug.cgi?id=118256
101
102         Reviewed by Anders Carlsson.
103
104         * WebProcess/WebPage/WebPage.cpp:
105         (WebKit::WebPage::loadData):
106         Pass the baseURL, not blankURL(), and remove an unnecessary multiplication by sizeof(uint8_t) which is always 1.
107
108 2013-07-01  Kangil Han  <kangil.han@samsung.com>
109
110         Adopt toHTMLTextAreaElement for code cleanup
111         https://bugs.webkit.org/show_bug.cgi?id=118226
112
113         Reviewed by Andreas Kling.
114
115         To enhance readability, this patch adopts toHTMLTextAreaElement.
116         This also helps out to reduce duplicated use of static_cast.
117
118         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
119         (WebKit::InjectedBundleNodeHandle::htmlTextAreaElementLastChangeWasUserEdit):
120         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
121         (WebKit::PDFPluginTextAnnotation::createAnnotationElement):
122         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
123         (WebKit::WebEditorClient::textDidChangeInTextArea):
124         * WebProcess/WebPage/WebFrame.cpp:
125         (WebKit::WebFrame::containsAnyFormControls):
126
127 2013-06-28  Andreas Kling  <akling@apple.com>
128
129         Fix Windows builds after deprecatedCharactersWithNullTermination() removal.
130
131         * Platform/CoreIPC/win/ConnectionWin.cpp:
132         (CoreIPC::Connection::createServerAndClientIdentifiers):
133
134 2013-06-28  Tim Horton  <timothy_horton@apple.com>
135
136         [wk2] WKView shouldn't force scrolling off if shouldClipToVisibleRect is set
137         https://bugs.webkit.org/show_bug.cgi?id=118174
138         <rdar://problem/14301175>
139
140         Reviewed by Anders Carlsson.
141
142         * UIProcess/API/mac/WKView.mm:
143         (-[WKView _updateViewExposedRect]):
144         Pass whether or not clips-to-visibleRect is enabled down to the WebPageProxy.
145
146         (-[WKView setMinimumSizeForAutoLayout:]):
147         Disable scrolling when using autolayout instead of when using clips-to-visibleRect.
148
149         (-[WKView setShouldClipToVisibleRect:]):
150         Clipping to the WKView's visibleRect does not strictly require scrolling to be disabled,
151         and in fact there are cases (RTL/TB pagination) where we *must* scroll, even when the view
152         is big enough to fit the content (the case clip-to-visibleRect was added for).
153
154         * UIProcess/WebPageProxy.cpp:
155         (WebKit::WebPageProxy::WebPageProxy):
156         * UIProcess/WebPageProxy.h:
157         * UIProcess/mac/WebPageProxyMac.mm:
158         (WebKit::WebPageProxy::viewExposedRectChanged):
159         (WebKit::WebPageProxy::exposedRectChangedTimerFired):
160         Keep track of and forward to the drawing area whether or not clips-to-visibleRect is enabled.
161
162         * WebProcess/WebPage/DrawingArea.h:
163         (WebKit::DrawingArea::setClipsToExposedRect): Added.
164         (WebKit::DrawingArea::didChangeScrollOffsetForAnyFrame): Added a missing space.
165
166         * WebProcess/WebPage/WebPage.cpp:
167         (WebKit::WebPage::viewExposedRectChanged):
168         * WebProcess/WebPage/WebPage.h:
169         * WebProcess/WebPage/WebPage.messages.in:
170         Forward clips-to-visibleRect enabled state to the drawing area.
171
172         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
173         Add storage for m_clipsToExposedRect.
174
175         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
176         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
177         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
178         (WebKit::TiledCoreAnimationDrawingArea::setClipsToExposedRect):
179         (WebKit::TiledCoreAnimationDrawingArea::updateMainFrameClipsToExposedRect):
180         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
181         (WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer):
182         Check m_clipsToExposedRect instead of the main-frame's isScrollable() to determine
183         whether we should tell our TiledBackings to clip to the exposed rect we provide.
184
185         We don't need to listen to mainFrameScrollabilityChanged anymore.
186
187 2013-06-28  Gavin Barraclough  <barraclough@apple.com>
188
189         Stale occlusion state after moving page back into window
190         https://bugs.webkit.org/show_bug.cgi?id=118202
191
192         Reviewed by Anders Carlsson.
193         
194         We need to update the occlusion state when the page goes back into the window.
195
196         * UIProcess/API/mac/WKView.mm:
197         (-[WKView viewDidMoveToWindow]):
198             - update occlusion state.
199
200 2013-06-28  Gwang Yoon Hwang  <ryumiel@company100.net>
201
202         Coordinated Graphics: Separate CoordinatedLayerTreeHost into CoordinatedLayerTreeHost and CompositingCoordinator
203         https://bugs.webkit.org/show_bug.cgi?id=104360
204
205         Reviewed by Noam Rosenthal.
206
207         The CoordinatedLayerTreeHost has too many responsibilities. It
208         implements LayerTreeHost, GraphicsLayerClient,
209         CoordinatedGraphicsLayerClient, CoordinatedImageBacking::Client,
210         UpdateAtlas::Client, GraphicsLayerFactory and
211         WebCustomFilterProgramProxyClient.
212
213         This refactoring reduces the responsibilities of CoordinatedLayerTreeHost.
214
215         This patch introduces a new class called CompositingCoordinator, which
216         takes the responsibility of managing compositing resources in
217         WebProcess.
218
219         CoordinatedLayerTreeHost is responsible only for the scheduling and
220         IPC-specific stuff, which are relevant only for WebKit2.
221
222         No new tests, covered by existing tests.
223
224         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
225         (WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
226         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
227         (WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
228         (WebKit::CoordinatedLayerTreeHost::invalidate):
229         (WebKit::CoordinatedLayerTreeHost::forceRepaint):
230         (WebKit::CoordinatedLayerTreeHost::sizeDidChange):
231         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
232         (WebKit::CoordinatedLayerTreeHost::renderNextFrame):
233         (WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
234         (WebKit::CoordinatedLayerTreeHost::willSyncLayerState):
235         (WebKit::CoordinatedLayerTreeHost::prepareCustomFilterProxiesForAnimations):
236         (WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
237         (WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
238         (WebKit::CoordinatedLayerTreeHost::didFlushRootLayer):
239         (WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):
240         (WebKit::CoordinatedLayerTreeHost::createPageOverlayLayer):
241         (WebKit::CoordinatedLayerTreeHost::paintLayerContents):
242         (WebKit::CoordinatedLayerTreeHost::commitSceneState):
243         (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
244         (WebKit::CoordinatedLayerTreeHost::graphicsLayerFactory):
245         (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
246         (WebKit::CoordinatedLayerTreeHost::commitScrollOffset):
247         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
248         * WebProcess/WebPage/LayerTreeHost.h:
249
250 2013-06-28  Anders Carlsson  <andersca@apple.com>
251
252         Make the UI process run the Java Updater
253         https://bugs.webkit.org/show_bug.cgi?id=118197
254         <rdar://problem/14255677>
255
256         Reviewed by Sam Weinig.
257
258         Patch the relevant NSWorkspace method and pipe through the request to launch the Java updater to the UI process.
259
260         * PluginProcess/PluginProcess.h:
261         * PluginProcess/mac/PluginProcessMac.mm:
262         (WebKit::replacedNSWorkspace_launchApplicationAtURL_options_configuration_error):
263         (WebKit::initializeCocoaOverrides):
264         (WebKit::PluginProcess::launchApplicationAtURL):
265         * UIProcess/Plugins/PluginProcessProxy.h:
266         * UIProcess/Plugins/PluginProcessProxy.messages.in:
267         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
268         (WebKit::isJavaUpdaterURL):
269         (WebKit::shouldLaunchApplicationAtURL):
270         (WebKit::PluginProcessProxy::launchApplicationAtURL):
271
272 2013-06-28  Tim Horton  <timothy_horton@apple.com>
273
274         WARN_UNUSED_RESULT can't be used in API headers, but WKBundlePageExtendIncrementalRenderingSuppression tries to
275         https://bugs.webkit.org/show_bug.cgi?id=118196
276         <rdar://problem/14303613>
277
278         Reviewed by Anders Carlsson.
279
280         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
281
282 2013-06-28  Andreas Kling  <akling@apple.com>
283
284         Don't fire process-became-responsive callback when disconnecting it.
285         <http://webkit.org/b/118166>
286
287         Reviewed by Anders Carlsson.
288
289         When disconnecting from a web process, call ResponsivenessTimer::invalidate() instead of
290         stop() to avoid firing the didBecomeResponsive() callback.
291
292         This lets the UI process react faster to actually unresponsive processes.
293
294         * UIProcess/WebProcessProxy.cpp:
295         (WebKit::WebProcessProxy::disconnect):
296
297 2013-06-28  Sergio Villar Senin  <svillar@igalia.com>
298
299         [WK2][GTK] 100% CPU usage rendering a page with animations
300         https://bugs.webkit.org/show_bug.cgi?id=117703
301
302         Reviewed by Martin Robinson.
303
304         Unconditionally update the value of m_lastFlushTime in
305         ::flushAndRenderLayers. By doing that we avoid a neverending
306         sequence of layer flushes that happened when m_lastFlushTime==0
307         and flushPendingLayerChanges() was false. In that situation the
308         value m_lastFlushTime was never updated so a new flush was always
309         rescheduled.
310
311         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
312         (WebKit::LayerTreeHostGtk::flushAndRenderLayers):
313
314 2013-06-28  Andres Gomez  <agomez@igalia.com>
315
316         [GTK] MiniBrowser doesn't solve the saving location when there are no XDG settings
317         https://bugs.webkit.org/show_bug.cgi?id=117538
318
319         Reviewed by Carlos Garcia Campos.
320
321         If the XDG specification is not working for the "Downloads"
322         directory, let's use HOME as fallback.
323
324         * UIProcess/API/gtk/WebKitDownload.cpp:
325         (webkitDownloadDecideDestination):
326
327 2013-06-28  Dariusz Frankiewicz  <d.frankiewic@samsung.com>
328
329         [EFL][WK2] Add spellcheck API tests in unit tests.
330         https://bugs.webkit.org/show_bug.cgi?id=118123
331
332         Reviewed by Christophe Dumez.
333
334         According to discussion in bug https://bugs.webkit.org/show_bug.cgi?id=113742
335         we're moving spelling tests from layout tests to unit tests.
336
337         * UIProcess/API/efl/tests/resources/spelling_selection_tests.html: Added.
338         New file is needed to make tests, with and without spellcheck attribute.
339         File contains basic site with content editable fields and buttons which select
340         different parts of misspelled words.
341
342         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
343         (countContextMenuItems):
344         Added method used to count number of items in context menu.
345
346 2013-06-27  Kangil Han  <kangil.han@samsung.com>
347
348         Adopt is/toHTMLInputElement for code cleanup
349         https://bugs.webkit.org/show_bug.cgi?id=118130
350
351         Reviewed by Antti Koivisto.
352
353         To enhance readability, this patch adopts is/toHTMLInputElement.
354         This also helps out to reduce duplicated use of static_cast.
355
356         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
357         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementValueForUser):
358         (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutofilled):
359         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutofilled):
360         (WebKit::InjectedBundleNodeHandle::htmlInputElementLastChangeWasUserEdit):
361         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
362         (WebKit::PDFPluginTextAnnotation::createAnnotationElement):
363         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
364         (WebKit::WebChromeClient::focusedNodeChanged):
365         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
366         (WebKit::WebEditorClient::textFieldDidBeginEditing):
367         (WebKit::WebEditorClient::textFieldDidEndEditing):
368         (WebKit::WebEditorClient::textDidChangeInTextField):
369         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
370         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
371         * WebProcess/WebPage/WebFrame.cpp:
372         (WebKit::WebFrame::containsAnyFormControls):
373         * WebProcess/WebPage/WebPage.cpp:
374         (WebKit::WebPage::editorState):
375
376 2013-06-27  Eunmi Lee  <eunmi15.lee@samsung.com>
377
378         [EFL][WK2] Add WK2 C API to handle touch events.
379         https://bugs.webkit.org/show_bug.cgi?id=108915
380
381         Reviewed by Gyuyoung Kim.
382
383         Touch events for our target platforms differ (XInput2, Wayland, Tizen) so
384         for the EFL port we want to be able to feed events manually.
385
386         To keep our current API for desktop EFL/Enlightenment working, we convert
387         our currently limited EFL events to the new EFL specific C EwkTouchPoint
388         and EwkTouchEvent type.
389
390         EwkTouchPoint and EwkTouchEvent are exposed as WKTouchPointRef and
391         WKTouchEventRef, so they are opaque in the applications.
392
393         The WKViewSendTouchEvent can be used for any use-case (platform/product)
394         not involving the EFL events.
395
396         At the same time we make sure to avoid using WK2 internals in our EFL API
397         implementation.
398
399         * PlatformEfl.cmake:
400         * Shared/API/c/efl/WKBaseEfl.h:
401         * Shared/APIObject.h:
402         * Shared/NativeWebTouchEvent.h:
403         (WebKit::NativeWebTouchEvent::nativeEvent):
404         * Shared/efl/NativeWebTouchEventEfl.cpp:
405         (WebKit::NativeWebTouchEvent::NativeWebTouchEvent):
406         * Shared/efl/WebEventFactory.cpp:
407         (WebKit::toWebPlatformTouchPointState):
408         (WebKit::toWebEventType):
409         (WebKit::toWebEventModifiers):
410         (WebKit::WebEventFactory::createWebTouchEvent):
411         * Shared/efl/WebEventFactory.h:
412         * UIProcess/API/C/efl/WKAPICastEfl.h:
413         * UIProcess/API/C/efl/WKEventEfl.cpp: Added.
414         (WKTouchPointCreate):
415         (WKTouchEventCreate):
416         * UIProcess/API/C/efl/WKEventEfl.h: Added.
417         * UIProcess/API/C/efl/WKViewEfl.cpp:
418         (WKViewSendTouchEvent):
419         * UIProcess/API/C/efl/WKViewEfl.h:
420         * UIProcess/API/efl/EwkView.cpp:
421         (toWKTouchPointState):
422         (toWKEventModifiers):
423         (EwkView::feedTouchEvent):
424         (EwkView::feedTouchEvents):
425         * UIProcess/efl/EwkTouchEvent.cpp: Added.
426         (WebKit::EwkTouchEvent::EwkTouchEvent):
427         * UIProcess/efl/EwkTouchEvent.h: Added.
428         (WebKit::EwkTouchEvent::create):
429         (WebKit::EwkTouchEvent::eventType):
430         (WebKit::EwkTouchEvent::touchPoints):
431         (WebKit::EwkTouchEvent::modifiers):
432         (WebKit::EwkTouchEvent::timestamp):
433         (WebKit::EwkTouchEvent::type):
434         * UIProcess/efl/EwkTouchPoint.cpp: Added.
435         (WebKit::EwkTouchPoint::EwkTouchPoint):
436         * UIProcess/efl/EwkTouchPoint.h: Added.
437         (WebKit::EwkTouchPoint::create):
438         (WebKit::EwkTouchPoint::id):
439         (WebKit::EwkTouchPoint::state):
440         (WebKit::EwkTouchPoint::screenPosition):
441         (WebKit::EwkTouchPoint::position):
442         (WebKit::EwkTouchPoint::radius):
443         (WebKit::EwkTouchPoint::rotationAngle):
444         (WebKit::EwkTouchPoint::forceFactor):
445         (WebKit::EwkTouchPoint::type):
446         * UIProcess/efl/WebViewEfl.cpp:
447         (WebKit::WebViewEfl::sendTouchEvent):
448         * UIProcess/efl/WebViewEfl.h:
449
450 2013-06-27  Csaba Osztrogonác  <ossy@webkit.org>
451
452         Fix cast-align warnings in WebKit2/Platform/CoreIPC
453         https://bugs.webkit.org/show_bug.cgi?id=117987
454
455         Reviewed by Rob Buis, WK2 signed-off by Anders Carlsson.
456
457         * Platform/CoreIPC/ArgumentDecoder.cpp:
458         (CoreIPC::ArgumentDecoder::decode):
459         * Platform/CoreIPC/ArgumentEncoder.cpp:
460         (CoreIPC::ArgumentEncoder::encode):
461
462 2013-06-27  Commit Queue  <commit-queue@webkit.org>
463
464         Unreviewed, rolling out r152074.
465         http://trac.webkit.org/changeset/152074
466         https://bugs.webkit.org/show_bug.cgi?id=118137
467
468         It caused lots of layout and API test crash on Qt Wk2.
469         (Requested by kadam on #webkit).
470
471         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
472         (WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
473         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
474         (WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
475         (WebKit::CoordinatedLayerTreeHost::invalidate):
476         (WebKit::CoordinatedLayerTreeHost::forceRepaint):
477         (WebKit::CoordinatedLayerTreeHost::sizeDidChange):
478         (WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
479         (WebKit::CoordinatedLayerTreeHost::clearPendingStateChanges):
480         (WebKit::CoordinatedLayerTreeHost::initializeRootCompositingLayerIfNeeded):
481         (WebKit::CoordinatedLayerTreeHost::syncLayerState):
482         (WebKit::CoordinatedLayerTreeHost::prepareCustomFilterProxiesIfNeeded):
483         (WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
484         (WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
485         (WebKit::CoordinatedLayerTreeHost::detachLayer):
486         (WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):
487         (WebKit::CoordinatedLayerTreeHost::syncDisplayState):
488         (WebKit::CoordinatedLayerTreeHost::didPerformScheduledLayerFlush):
489         (WebKit::CoordinatedLayerTreeHost::createPageOverlayLayer):
490         (WebKit::CoordinatedLayerTreeHost::createImageBackingIfNeeded):
491         (WebKit::CoordinatedLayerTreeHost::createImageBacking):
492         (WebKit::CoordinatedLayerTreeHost::updateImageBacking):
493         (WebKit::CoordinatedLayerTreeHost::clearImageBackingContents):
494         (WebKit::CoordinatedLayerTreeHost::removeImageBacking):
495         (WebKit::CoordinatedLayerTreeHost::flushPendingImageBackingChanges):
496         (WebKit::CoordinatedLayerTreeHost::notifyAnimationStarted):
497         (WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
498         (WebKit::CoordinatedLayerTreeHost::paintContents):
499         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
500         (WebKit::CoordinatedLayerTreeHost::deviceScaleFactor):
501         (WebKit::CoordinatedLayerTreeHost::pageScaleFactor):
502         (WebKit::CoordinatedLayerTreeHost::createUpdateAtlas):
503         (WebKit::CoordinatedLayerTreeHost::removeUpdateAtlas):
504         (WebKit::CoordinatedLayerTreeHost::visibleContentsRect):
505         (WebKit::CoordinatedLayerTreeHost::mainContentsLayer):
506         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
507         (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
508         (WebKit::CoordinatedLayerTreeHost::graphicsLayerFactory):
509         (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
510         (WebKit::CoordinatedLayerTreeHost::renderNextFrame):
511         (WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
512         (WebKit::CoordinatedLayerTreeHost::paintToSurface):
513         (WebKit::CoordinatedLayerTreeHost::scheduleReleaseInactiveAtlases):
514         (WebKit::CoordinatedLayerTreeHost::releaseInactiveAtlasesTimerFired):
515         (WebKit::CoordinatedLayerTreeHost::commitScrollOffset):
516         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
517         * WebProcess/WebPage/LayerTreeHost.h:
518         (WebKit::LayerTreeHost::setVisibleContentsRect):
519         (WebKit::LayerTreeHost::renderNextFrame):
520         (WebKit::LayerTreeHost::purgeBackingStores):
521
522 2013-06-27  Xabier Rodriguez Calvar  <calvaris@igalia.com>
523
524         Fixing some compiler warnings
525         https://bugs.webkit.org/show_bug.cgi?id=117791
526
527         Reviewed by Martin Robinson.
528
529         * UIProcess/API/gtk/tests/WebExtensionTest.cpp: Properly
530         initialized GDBusInterfaceVTable.
531         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
532         (webkitWebPageCreate): Added missing fields to the
533         WKBundlePageLoaderClient.
534
535 2013-06-27  Iago Toral Quiroga  <itoral@igalia.com>
536
537         Use consistent file names for WidgetBackingStoreGtkX11 class
538         https://bugs.webkit.org/show_bug.cgi?id=118124
539
540         Reviewed by Carlos Garcia Campos.
541
542         * UIProcess/cairo/BackingStoreCairo.cpp:
543
544 2013-06-27  Alberto Garcia  <agarcia@igalia.com>
545
546         [GTK] [WK2] Check value of WEBKIT_INJECTED_BUNDLE_PATH
547         https://bugs.webkit.org/show_bug.cgi?id=118055
548
549         Reviewed by Carlos Garcia Campos.
550
551         If the directory pointed at by WEBKIT_INJECTED_BUNDLE_PATH does
552         not exist, fall back to the system directory.
553
554         This makes MiniBrowser work outside the build tree.
555
556         * UIProcess/API/gtk/WebKitWebContext.cpp:
557         (injectedBundleDirectory):
558
559 2013-06-26  Simon Cooper  <scooper@apple.com>
560
561         Sometimes the Flash Player plugin cannot make outgoing connections
562         https://bugs.webkit.org/show_bug.cgi?id=118110
563         <rdar://problem/14270933>
564
565         Reviewed by Alexey Proskuryakov.
566
567         Allow outgoing and incoming UDP data. Tidy up the QuickTime
568         profile as it gets the UDP ability from the common profile.
569
570         * Resources/PlugInSandboxProfiles/com.apple.QuickTime Plugin.plugin.sb:
571         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
572
573 2013-06-26  Simon Cooper  <scooper@apple.com>
574
575         Flash Player: deny ipc-posix-sem 59918130
576         https://bugs.webkit.org/show_bug.cgi?id=118107
577         <rdar://problem/14271105>
578
579         Reviewed by Alexey Proskuryakov.
580
581         Allow same-sandbox scoped semaphores on Mavericks. Permit the
582         named semaphore for older releases.
583
584         * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
585
586 2013-06-26  Gwang Yoon Hwang  <ryumiel@company100.net>
587
588         Coordinated Graphics: Separate CoordinatedLayerTreeHost into CoordinatedLayerTreeHost and CompositingCoordinator
589         https://bugs.webkit.org/show_bug.cgi?id=104360
590
591         Reviewed by Noam Rosenthal.
592
593         The CoordinatedLayerTreeHost has too many responsibilities. It
594         implements LayerTreeHost, GraphicsLayerClient,
595         CoordinatedGraphicsLayerClient, CoordinatedImageBacking::Client,
596         UpdateAtlas::Client, GraphicsLayerFactory and
597         WebCustomFilterProgramProxyClient.
598
599         This refactoring reduces the responsibilities of CoordinatedLayerTreeHost.
600
601         This patch introduces a new class called CompositingCoordinator, which
602         takes the responsibility of managing compositing resources in
603         WebProcess.
604
605         CoordinatedLayerTreeHost is responsible only for the scheduling and
606         IPC-specific stuff, which are relevant only for WebKit2.
607
608         No new tests, covered by existing tests.
609
610         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
611         (WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
612         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
613         (WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
614         (WebKit::CoordinatedLayerTreeHost::invalidate):
615         (WebKit::CoordinatedLayerTreeHost::forceRepaint):
616         (WebKit::CoordinatedLayerTreeHost::sizeDidChange):
617         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
618         (WebKit::CoordinatedLayerTreeHost::renderNextFrame):
619         (WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
620         (WebKit::CoordinatedLayerTreeHost::willSyncLayerState):
621         (WebKit::CoordinatedLayerTreeHost::prepareCustomFilterProxiesForAnimations):
622         (WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
623         (WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
624         (WebKit::CoordinatedLayerTreeHost::didFlushRootLayer):
625         (WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):
626         (WebKit::CoordinatedLayerTreeHost::createPageOverlayLayer):
627         (WebKit::CoordinatedLayerTreeHost::paintLayerContents):
628         (WebKit::CoordinatedLayerTreeHost::commitSceneState):
629         (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
630         (WebKit::CoordinatedLayerTreeHost::graphicsLayerFactory):
631         (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
632         (WebKit::CoordinatedLayerTreeHost::commitScrollOffset):
633         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
634         * WebProcess/WebPage/LayerTreeHost.h:
635
636 2013-06-26  Simon Cooper  <scooper@apple.com>
637
638         Silverlight deny ipc-posix-sem LC_Mutex playing Amazon Prime videos
639         https://bugs.webkit.org/show_bug.cgi?id=118102
640         <rdar://problem/14194077>
641
642         Reviewed by Alexey Proskuryakov.
643
644         Allow same-sandbox scoped semaphores on Mavericks. Permit the
645         named semaphore for older releases.
646
647         * Resources/PlugInSandboxProfiles/com.microsoft.SilverlightPlugin.sb:
648
649 2013-06-26  Simon Cooper  <scooper@apple.com>
650
651         Update ColorSync shared memory names in plug-in sandbox profile
652         https://bugs.webkit.org/show_bug.cgi?id=118099
653
654         Reviewed by Alexey Proskuryakov.
655
656         Update the common profile to use the names used in Mavericks
657
658         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
659
660 2013-06-26  Anders Carlsson  <andersca@apple.com>
661
662         Deprecate StringImpl::charactersWithNullTermination
663         https://bugs.webkit.org/show_bug.cgi?id=118108
664
665         Reviewed by Beth Dakin.
666
667         Rename calls to charactersWithNullTermination to deprecatedCharactersWithNullTermination.
668
669         * Platform/CoreIPC/win/ConnectionWin.cpp:
670         (CoreIPC::Connection::createServerAndClientIdentifiers):
671
672 2013-06-26  Simon Cooper  <scooper@apple.com>
673
674         QuickTime plug-in cannot update com.apple.quicktime.plugin.preferences.plist file
675         https://bugs.webkit.org/show_bug.cgi?id=118098
676         <rdar://problem/13888138>
677
678         Reviewed by Alexey Proskuryakov.
679
680         Allow the preference file to be written
681
682         * Resources/PlugInSandboxProfiles/com.apple.QuickTime Plugin.plugin.sb:
683
684 2013-06-24  Simon Cooper  <scooper@apple.com>
685
686         Silverlight triggers sandbox violations: deny network-bind 0.0.0.0:0
687         https://bugs.webkit.org/show_bug.cgi?id=117966
688         <rdar://problem/13927918>
689
690         Reviewed by Sam Weinig.
691
692         Allow assigning (via bind) an ephemeral port before connecting
693
694         * Resources/PlugInSandboxProfiles/com.apple.QuickTime Plugin.plugin.sb:
695         * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
696         * Resources/PlugInSandboxProfiles/com.microsoft.SilverlightPlugin.sb:
697         * Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
698
699 2013-06-24  Simon Cooper  <scooper@apple.com>
700
701         PluginProcess deny file-read-data /Network/Library under addVolumeTracker
702         https://bugs.webkit.org/show_bug.cgi?id=117965
703         <rdar://problem/14121247>
704
705         Reviewed by Alexey Proskuryakov.
706
707         Silently deny reading /Network/Applications and 
708         /Network/Library.
709
710         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
711
712 2013-06-24  Kangil Han  <kangil.han@samsung.com>
713
714         Adopt is/toHTMLFormElement for code cleanup
715         https://bugs.webkit.org/show_bug.cgi?id=117937
716
717         Reviewed by Andreas Kling.
718
719         This refers to http://src.chromium.org/viewvc/blink?view=revision&revision=152859
720
721         To enhance readibility, this patch adopts is/toHTMLFormElement.
722         This also helps out to reduce duplicated use of static_cast.
723
724         * WebProcess/WebPage/WebFrame.cpp:
725         (WebKit::WebFrame::containsAnyFormElements):
726
727 2013-06-24  Simon Cooper  <scooper@apple.com>
728
729         deny file-read-data /Library/CoreMediaIO/Plug-Ins/DAL
730         https://bugs.webkit.org/show_bug.cgi?id=117964
731         <rdar://problem/14036864>
732
733         Reviewed by Alexey Proskuryakov.
734
735         Permit reading of the /Library/CoreMediaIO/Plug-Ins/DAL
736         subdirectory.
737
738         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
739
740 2013-06-24  Simon Cooper  <scooper@apple.com>
741
742         Repeating sandbox violations when playing Amazon Prime videos with Flash
743         https://bugs.webkit.org/show_bug.cgi?id=117953
744         <rdar://problem/14193693>
745
746         Reviewed by Alexey Proskuryakov.
747
748         Add some missing "standard" files for network service lookups
749
750         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
751
752 2013-06-24  Simon Cooper  <scooper@apple.com>
753
754         Plug-in sandbox violations attempting to access com.apple.CoreGraphics.plist
755         https://bugs.webkit.org/show_bug.cgi?id=117963
756         <rdar://problem/14084234>
757
758         Reviewed by Alexey Proskuryakov.
759
760         Permit the reading of the com.apple.CoreGraphics preference file
761
762         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
763
764 2013-06-24  Simon Cooper  <scooper@apple.com>
765
766         com.oracle.javadeployment.plist is not correctly specified in the JavaApplet plugin profile
767         https://bugs.webkit.org/show_bug.cgi?id=117961
768         <rdar://problem/14223823>
769
770         Reviewed by Alexey Proskuryakov.
771
772         Remove the trailing extraneous .plist from the preference file rule
773
774         * Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
775
776 2013-06-24  Simon Cooper  <scooper@apple.com>
777
778         PluginProcess sandbox violations on com.apple.networkConnect.plist when resetting Safari
779         https://bugs.webkit.org/show_bug.cgi?id=117958
780         <rdar://problem/13938149>
781
782         Reviewed by Alexey Proskuryakov.
783
784         Allow reading the com.apple.networkConnect plist.
785
786         * Resources/PlugInSandboxProfiles/com.apple.ist.ds.appleconnect.webplugin.sb:
787
788 2013-06-24  Simon Cooper  <scooper@apple.com>
789
790         Java sandbox violation ipc-posix-shm-read-data /tmp/com.apple.csseed.67
791         https://bugs.webkit.org/show_bug.cgi?id=117954
792         <rdar://problem/14166577>
793
794         Reviewed by Alexey Proskuryakov.
795
796         Permit read access to this shared memory segment
797
798         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
799
800 2013-06-24  Simon Cooper  <scooper@apple.com>
801
802         Plugin Sandbox violation in /Library/Audio/Sounds/Banks
803         https://bugs.webkit.org/show_bug.cgi?id=117957
804         <rdar://problem/14163582>
805
806         Reviewed by Alexey Proskuryakov.
807
808         Permit read access to subdirectories under /Library/Audio/Sounds
809
810         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
811
812 2013-06-24  Nick Diego Yamane  <nick.yamane@openbossa.org>
813
814         Make sure m_iconDatabaseImpl is not null before closing it
815         https://bugs.webkit.org/show_bug.cgi?id=117943
816
817         Reviewed by Simon Fraser.
818
819         Since r150474 WebIconDatabase is closed unconditionally in
820         TestController destructor, in that case WebKitTestRunner crashes
821         when no icon database path is set. This misbehavior was observed in
822         ports such as efl and nix.
823         In this patch, WebIconDatabase::close() calls m_iconDatabaseImpl->close()
824         only if m_iconDatabaseImpl is not null, as it's already being done in other
825         WebIconDatabase's methods, such as isOpen().
826
827         * UIProcess/WebIconDatabase.cpp:
828         (WebKit::WebIconDatabase::close):
829
830 2013-06-24  Ruth Fong  <ruth_fong@apple.com>
831
832         Expose the mediaHasAudio() function in WK2
833         https://bugs.webkit.org/show_bug.cgi?id=117946
834         <rdar://problem/14250527>
835
836         Reviewed by Beth Dakin.
837
838         Exposes the WebCore::HTMLMediaElement::mediaHasAudio() function
839         in WK2.
840
841         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
842         (WKBundleHitTestResultMediaHasAudio): Added.
843         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
844         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
845         (WebKit::InjectedBundleHitTestResult::mediaHasAudio): Added.
846         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
847
848 2013-06-24  Anders Carlsson  <andersca@apple.com>
849
850         REGRESSION (r147591): can't type in Adobe Connect
851         https://bugs.webkit.org/show_bug.cgi?id=117947
852         <rdar://problem/14223539>
853
854         Reviewed by Andreas Kling.
855
856         With the change in r147591, it is now possible for a plug-in element to be focused before the plug-in
857         starts. Handle this by focusing the plug-in right after it's started if necessary.
858
859         * WebProcess/Plugins/PluginView.cpp:
860         (WebKit::PluginView::didInitializePlugin):
861
862 2013-06-24  Simon Fraser  <simon.fraser@apple.com>
863
864         Move displayID stuff from Widget to Chrome
865         https://bugs.webkit.org/show_bug.cgi?id=117944
866
867         Reviewed by Anders Carlsson.
868
869         In r151877 I polluted Widget with displayID-related stuff. This would
870         be better on HostWindow, so move it there. This is a net code reduction,
871         and eliminates PlatformScreenMac.h, and the NSScreen category.
872
873         * WebProcess/WebPage/WebPage.cpp:
874         (WebKit::WebPage::windowScreenDidChange): Go via chrome().
875
876 2013-06-24  Krzysztof Wolanski  <k.wolanski@samsung.com>
877
878         [EFL][WK2] Implement unit test callback: onWordGuesses.
879         https://bugs.webkit.org/show_bug.cgi?id=117794
880
881         Reviewed by Christophe Dumez.
882
883         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
884         (onWordGuesses):
885         Add client suggestions for the word.
886
887         (checkClientSuggestionsForWord):
888         Verify the suggestions that were given by the client.
889
890 2013-06-17  Darin Adler  <darin@apple.com>
891
892         Sort all the Xcode project files
893         https://bugs.webkit.org/show_bug.cgi?id=117696
894
895         Reviewed by Anders Carlsson.
896
897         * WebKit2.xcodeproj/project.pbxproj: Ran the sort-Xcode-project-file script.
898
899 2013-06-22  Dean Jackson  <dino@apple.com>
900
901         Slightly reduce width threshold on detection of primary snapshotted Plug-In
902         https://bugs.webkit.org/show_bug.cgi?id=117914
903         <rdar://problem/14136687>
904
905         Reviewed by Simon Fraser.
906
907         We've noticed some content that should be detected as the primary snapshotted plug-in,
908         but is just a bit smaller than our 450x300 minimum threshold. Reduce the width to 400.
909
910         * WebProcess/WebPage/WebPage.cpp: Change primarySnapshottedPlugInMinimumWidth from 450 to 400.
911
912 2013-06-22  Simon Fraser  <simon.fraser@apple.com>
913
914         screen.availWidth always returns width of primary display
915         https://bugs.webkit.org/show_bug.cgi?id=117863
916
917         Reviewed by Geoffrey Garen.
918     
919         In WebKit2, Widgets have no platformWidget, so trying to get to the
920         NSScreen via the platform widget's window never succeeded, and we always
921         fell back on getting info for the main display.
922
923         However, we were already pushing the WKView's displayID down to the
924         WebProcess for the requestAnimationFrame infrastructure, so use that.
925         
926         The WebProcess would not receive a displayID for a WKView until the window
927         was activated; fix by calling -doWindowDidChangeScreen when the view
928         moves to a window, rather than doing it from -_windowDidBecomeKey:.
929         
930         * UIProcess/API/mac/WKView.mm:
931         (-[WKView viewDidMoveToWindow]):
932         (-[WKView _windowDidBecomeKey:]):
933
934 2013-06-21  Carlos Garcia Campos  <cgarcia@igalia.com>
935
936         [GTK] Do not try to load videos in unit tests
937         https://bugs.webkit.org/show_bug.cgi?id=117866
938
939         Reviewed by Philippe Normand.
940
941         It makes the tests slower, and generates and error because we use
942         a fake src.
943
944         * UIProcess/API/gtk/tests/TestContextMenu.cpp:
945         (testContextMenuDefaultMenu): Use preload='none' in video tag.
946         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
947         (testWebViewMouseTarget): Ditto.
948
949 2013-06-21  Christophe Dumez  <ch.dumez@sisa.samsung.com>
950
951         REGRESSION (r150663): Using webkitAudioContext in Inspector makes it undefined everywhere
952         https://bugs.webkit.org/show_bug.cgi?id=117825
953
954         Reviewed by Kentaro Hara.
955
956         Use Settings to enable Web Audio instead of RuntimeEnabledFeatures.
957
958         * WebProcess/InjectedBundle/InjectedBundle.cpp:
959         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
960         * WebProcess/WebPage/WebPage.cpp:
961         (WebKit::WebPage::updatePreferences):
962
963 2013-06-21  Sergio Correia  <sergio.correia@openbossa.org>
964
965         [WK2][EFL]: Invalidate the ProcessLauncher when the process is terminated before it has finished launching
966         https://bugs.webkit.org/show_bug.cgi?id=117865
967
968         Reviewed by Christophe Dumez.
969
970         Original patch from Carlos Garcia Campos for the Gtk port.
971
972         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
973         (WebKit::ProcessLauncher::terminateProcess): If process is still
974         launching, just invalidate the launcher. Reset the process
975         identifier after killing the process.
976
977 2013-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
978
979         [GTK] Migrate WebKitWebResource to GTask
980         https://bugs.webkit.org/show_bug.cgi?id=117152
981
982         Reviewed by Gustavo Noronha Silva.
983
984         * UIProcess/API/gtk/WebKitWebResource.cpp:
985         (resourceDataCallback):
986         (webkit_web_resource_get_data):
987         (webkit_web_resource_get_data_finish):
988
989 2013-06-20  Sergio Correia  <sergio.correia@openbossa.org>
990
991         [WK2] Looping for EINTR on close() is incorrect for Linux, at least
992         https://bugs.webkit.org/show_bug.cgi?id=117266
993
994         Reviewed by Darin Adler.
995
996         Call closeWithRetry() to work around a difference in how the retry needs to
997         be done on Linux.
998
999         * Platform/CoreIPC/unix/AttachmentUnix.cpp:
1000         (CoreIPC::Attachment::dispose):
1001         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
1002         (CoreIPC::Connection::platformInvalidate):
1003         * Platform/unix/SharedMemoryUnix.cpp:
1004         (WebKit::SharedMemory::Handle::~Handle):
1005         (WebKit::SharedMemory::create):
1006         (WebKit::SharedMemory::~SharedMemory):
1007         (WebKit::SharedMemory::createHandle):
1008         * PluginProcess/PluginProcess.cpp:
1009         (WebKit::PluginProcess::createWebProcessConnection):
1010         * SharedWorkerProcess/SharedWorkerProcess.cpp:
1011         (WebKit::SharedWorkerProcess::createWebProcessConnection):
1012         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
1013         (WebKit::ProcessLauncher::launchProcess): All these places had
1014         ``close-followed-by-EINTR-handling'' replaced with the new closeWithRetry()
1015         function added in this commit.
1016
1017 2013-06-20  Brady Eidson  <beidson@apple.com>
1018
1019         WebProcess hangs loading eff.org (Waiting forever on a sync XHR, NetworkProcess unable to service it).
1020         <rdar://problem/14112329> and https://bugs.webkit.org/show_bug.cgi?id=117842
1021
1022         Reviewed by Alexey Proskuryakov.
1023
1024         * NetworkProcess/HostRecord.cpp:
1025         (WebKit::removeLoaderFromQueue): Utility to clear a Loader out of a LoaderQueue.
1026         (WebKit::HostRecord::removeLoader): Use removeLoaderFromQueue, and also try to clear the loader from m_syncLoadersPending.
1027         (WebKit::HostRecord::servePendingRequestsForQueue): Small refactoring/cleanup.
1028         (WebKit::HostRecord::limitsRequests): Change so that if the number of loaders in flight is exactly equal to the limit, then
1029           allow serving a synchronous loader to go exactly one beyond the limit.
1030         * NetworkProcess/HostRecord.h:
1031
1032         Make the static maxRequestsInFlightPerHost a member of the NetworkResourceLoadScheduler, instead:
1033         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1034         (WebKit::NetworkResourceLoadScheduler::NetworkResourceLoadScheduler):
1035         (WebKit::NetworkResourceLoadScheduler::hostForURL):
1036         * NetworkProcess/NetworkResourceLoadScheduler.h:
1037
1038         * NetworkProcess/mac/NetworkResourceLoadSchedulerMac.mm:
1039         (WebKit::NetworkResourceLoadScheduler::platformInitializeMaximumHTTPConnectionCountPerHost): Tell CFNetwork to allow
1040           7 connections per host instead of 6, but tell the scheduler that 6 is still the normal limit.
1041
1042 2013-06-20  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
1043
1044         [EFL][WK2] Update text checker documentation.
1045         https://bugs.webkit.org/show_bug.cgi?id=117828
1046
1047         Reviewed by Christophe Dumez.
1048
1049         * UIProcess/API/efl/ewk_text_checker.h:
1050         The client is not responsible for destroying the memory.
1051
1052 2013-06-19  Sam Weinig  <sam@webkit.org>
1053
1054         Expose plug-ins CFBundleShortVersionString in the WKPluginInformation dictionary
1055         https://bugs.webkit.org/show_bug.cgi?id=117816
1056
1057         Reviewed by Geoffrey Garen.
1058
1059         - Adds a new key for the WKPluginInformation dictionary: WKPluginInformationBundleShortVersionKey().
1060
1061         * Shared/API/c/WKPluginInformation.cpp:
1062         (WKPluginInformationBundleShortVersionKey):
1063         * Shared/API/c/WKPluginInformation.h:
1064         * Shared/Plugins/Netscape/PluginInformation.cpp:
1065         (WebKit::pluginInformationBundleShortVersionKey):
1066         * Shared/Plugins/Netscape/PluginInformation.h:
1067         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
1068         (WebKit::NetscapePluginModule::getPluginInfo):
1069         * Shared/Plugins/Netscape/mac/PluginInformationMac.mm:
1070         (WebKit::getPlatformPluginModuleInformation):
1071         * Shared/Plugins/PluginModuleInfo.h:
1072
1073 2013-06-19  Ruth Fong  <ruth_fong@apple.com>
1074
1075         <rdar://problem/14197983> Rename functions from Bug 117667 and add safeguards for !ENABLE(VIDEO) platforms (117765)
1076         https://bugs.webkit.org/show_bug.cgi?id=117765
1077
1078         Patch by Ruth Fong <ruth_fong@apple.com>.
1079         Reviewed by Brady Eidson.
1080
1081         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
1082         (WKBundleHitTestResultGetMediaType): Updated to use mediaType().
1083
1084         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
1085         (WebKit::InjectedBundleHitTestResult::mediaType): Updated.
1086         Renamed getMediaType() to mediaType() and now handles !ENABLE(VIDEO) platforms.
1087
1088         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
1089
1090 2013-06-19  Benjamin Poulain  <bpoulain@apple.com>
1091
1092         Use the PlatformEvent timestamp when creating a DOM Event
1093         https://bugs.webkit.org/show_bug.cgi?id=117179
1094
1095         Reviewed by Darin Adler.
1096
1097         * Shared/mac/WebEventFactory.mm:
1098         (WebKit::WebEventFactory::createWebMouseEvent):
1099         (WebKit::WebEventFactory::createWebWheelEvent):
1100         (WebKit::WebEventFactory::createWebKeyboardEvent):
1101         (WebKit::WebEventFactory::createWebGestureEvent):
1102
1103 2013-06-19  Anders Carlsson  <andersca@apple.com>
1104
1105         REGRESSION: Cannot open Silverlight preferences via context menu
1106         https://bugs.webkit.org/show_bug.cgi?id=117806
1107         <rdar://problem/14166644>
1108
1109         Reviewed by Beth Dakin.
1110
1111         Hook the LSOpenCFURLRef function and make the UI process open the URL if it's the URL for the
1112         Silverlight Preferences application. This is what we do for the Flash updater.
1113
1114         * PluginProcess/PluginProcess.h:
1115         * PluginProcess/mac/PluginProcessMac.mm:
1116         (WebKit::openCFURLRef):
1117         (WebKit::initializeShim):
1118         (WebKit::PluginProcess::openURL):
1119         * PluginProcess/mac/PluginProcessShim.h:
1120         * PluginProcess/mac/PluginProcessShim.mm:
1121         (WebKit::shimLSOpenCFURLRef):
1122         * UIProcess/Plugins/PluginProcessProxy.h:
1123         * UIProcess/Plugins/PluginProcessProxy.messages.in:
1124         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
1125         (WebKit::isSilverlightPreferencesURL):
1126         (WebKit::shouldOpenURL):
1127         (WebKit::PluginProcessProxy::openURL):
1128
1129 2013-06-19  Krzysztof Wolanski  <k.wolanski@samsung.com>
1130
1131         [EFL][WK2] Implement unit test callback: onSettingChange.
1132         https://bugs.webkit.org/show_bug.cgi?id=117728
1133
1134         Reviewed by Christophe Dumez.
1135
1136         It is finally possible to implement missing unit tests as WebKit2-EFL
1137         has delivered sub menu (r150254).
1138         Add two unit tests for checking onSettingChange callback behaviour,
1139         when toggling "Check Spelling While Typing" in context menu.
1140
1141         Changed types inside callbacksExecutionStats struct from bit field to bool,
1142         because casting from bit field to &bool is invalid (in using waitUntilTrue method).
1143
1144         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
1145         (resetCallbacksExecutionStats):
1146         (onSettingChange):
1147         (findContextMenuItem):
1148         Get determined option from context menu.
1149
1150         (checkCorrectnessOfSpellingItems):
1151         Changed the name of onContextMenuShow method to be consistent with new methods.
1152
1153         (toogleCheckSpellingWhileTyping):
1154         Select "Check Spelling While Typing" in context menu to test whether
1155         onSettingChange is called.
1156
1157 2013-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1158
1159         [GTK][SOUP] Migrate SoupRequestManager to GTask
1160         https://bugs.webkit.org/show_bug.cgi?id=117157
1161
1162         Reviewed by Gustavo Noronha Silva.
1163
1164         GSimpleAsyncResult has been deprecated in favour of GTask.
1165
1166         * WebProcess/soup/WebKitSoupRequestGeneric.cpp:
1167         (webkitSoupRequestGenericSendAsync):
1168         (webkitSoupRequestGenericSendFinish):
1169         * WebProcess/soup/WebSoupRequestManager.cpp:
1170         (WebKit::WebSoupRequestAsyncData::WebSoupRequestAsyncData):
1171         (WebKit::WebSoupRequestAsyncData::releaseTask):
1172         (WebKit::WebSoupRequestManager::didHandleURIRequest):
1173         (WebKit::WebSoupRequestManager::didFailURIRequest):
1174         (WebKit::WebSoupRequestManager::send):
1175         (WebKit::WebSoupRequestManager::finish):
1176         * WebProcess/soup/WebSoupRequestManager.h:
1177
1178 2013-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1179
1180         [GTK] Migrate WebKitFaviconDatabase to GTask
1181         https://bugs.webkit.org/show_bug.cgi?id=117156
1182
1183         Reviewed by Gustavo Noronha Silva.
1184
1185         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
1186         (processPendingIconsForPageURL):
1187         (webkit_favicon_database_get_favicon):
1188         (webkit_favicon_database_get_favicon_finish):
1189
1190 2013-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1191
1192         [GTK] Migrate WebKitWebView to GTask
1193         https://bugs.webkit.org/show_bug.cgi?id=117154
1194
1195         Reviewed by Gustavo Noronha Silva.
1196
1197         * UIProcess/API/gtk/WebKitWebView.cpp:
1198         (didValidateCommand):
1199         (webkit_web_view_can_execute_editing_command):
1200         (webkit_web_view_can_execute_editing_command_finish):
1201         (webkitWebViewRunJavaScriptCallback):
1202         (webkit_web_view_run_javascript):
1203         (webkit_web_view_run_javascript_finish):
1204         (resourcesStreamReadCallback):
1205         (webkit_web_view_run_javascript_from_gresource):
1206         (webkit_web_view_run_javascript_from_gresource_finish):
1207         (fileReplaceContentsCallback):
1208         (getContentsAsMHTMLDataCallback):
1209         (webkit_web_view_save):
1210         (webkit_web_view_save_finish):
1211         (webkit_web_view_save_to_file):
1212         (webkit_web_view_save_to_file_finish):
1213         (webKitWebViewDidReceiveSnapshot):
1214         (webkit_web_view_get_snapshot):
1215         (webkit_web_view_get_snapshot_finish):
1216
1217 2013-06-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1218
1219         [GTK] Migrate WebKitCookieManager to GTask
1220         https://bugs.webkit.org/show_bug.cgi?id=117150
1221
1222         Reviewed by Gustavo Noronha Silva.
1223
1224         Don't use helper structs for async data since the cancellable is
1225         now accessible from the GTask.
1226
1227         * UIProcess/API/gtk/WebKitCookieManager.cpp:
1228         (webkitCookieManagerGetAcceptPolicyCallback):
1229         (webkit_cookie_manager_get_accept_policy):
1230         (webkit_cookie_manager_get_accept_policy_finish):
1231         (webkitCookieManagerGetDomainsWithCookiesCallback):
1232         (webkit_cookie_manager_get_domains_with_cookies):
1233         (webkit_cookie_manager_get_domains_with_cookies_finish):
1234
1235 2013-06-18  Roger Fong  <roger_fong@apple.com>
1236
1237         Unreviewed. Fix a typo that may be causing some test failures.
1238
1239         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1240         (WebKit::WebFrameNetworkingContext::scheduledRunLoopPairs):
1241
1242 2013-06-18  Anders Carlsson  <andersca@apple.com>
1243
1244         Make it possible to set a minimum height for auto-layout
1245         https://bugs.webkit.org/show_bug.cgi?id=117758
1246         <rdar://problem/12849080>
1247
1248         Reviewed by Tim Horton.
1249
1250         Change a bunch of minimumLayoutWidth declarations to minimumLayoutSize and add a new minimumLayoutSize property.
1251         If minimumLayoutSize.height is greater than zero, use it to set the minimum layout size on the frame view.
1252
1253         * Shared/WebPageCreationParameters.cpp:
1254         (WebKit::WebPageCreationParameters::encode):
1255         (WebKit::WebPageCreationParameters::decode):
1256         * Shared/WebPageCreationParameters.h:
1257         * UIProcess/API/mac/WKView.mm:
1258         (-[WKView _setIntrinsicContentSize:]):
1259         (-[WKView minimumLayoutWidth]):
1260         (-[WKView setMinimumLayoutWidth:]):
1261         (-[WKView minimumWidthForAutoLayout]):
1262         (-[WKView setMinimumWidthForAutoLayout:]):
1263         (-[WKView minimumSizeForAutoLayout]):
1264         (-[WKView setMinimumSizeForAutoLayout:]):
1265         * UIProcess/API/mac/WKViewPrivate.h:
1266         * UIProcess/DrawingAreaProxy.h:
1267         (WebKit::DrawingAreaProxy::minimumLayoutSizeDidChange):
1268         * UIProcess/WebPageProxy.cpp:
1269         (WebKit::WebPageProxy::WebPageProxy):
1270         (WebKit::WebPageProxy::creationParameters):
1271         (WebKit::WebPageProxy::setMinimumLayoutSize):
1272         * UIProcess/WebPageProxy.h:
1273         (WebKit::WebPageProxy::minimumLayoutSize):
1274         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
1275         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
1276         (WebKit::TiledCoreAnimationDrawingAreaProxy::TiledCoreAnimationDrawingAreaProxy):
1277         (WebKit::TiledCoreAnimationDrawingAreaProxy::minimumLayoutSizeDidChange):
1278         (WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
1279         (WebKit::TiledCoreAnimationDrawingAreaProxy::intrinsicContentSizeDidChange):
1280         (WebKit::TiledCoreAnimationDrawingAreaProxy::sendUpdateGeometry):
1281         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1282         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
1283         * WebProcess/WebPage/WebPage.cpp:
1284         (WebKit::WebPage::WebPage):
1285         (WebKit::WebPage::setMinimumLayoutSize):
1286         * WebProcess/WebPage/WebPage.h:
1287         (WebKit::WebPage::minimumLayoutSize):
1288         * WebProcess/WebPage/WebPage.messages.in:
1289         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1290         (WebKit::TiledCoreAnimationDrawingArea::mainFrameContentSizeChanged):
1291         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
1292
1293 2013-06-18  Simon Cooper  <scooper@apple.com>
1294
1295         sandbox violation when Flash runs for the first time
1296         https://bugs.webkit.org/show_bug.cgi?id=117753
1297         <rdar://problem/14165466>
1298
1299         Reviewed by Alexey Proskuryakov.
1300
1301         Allow flash to try and change the ownership of directories it has just created.
1302
1303         * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
1304
1305 2013-06-18  Ruth Fong  <ruth_fong@apple.com>
1306
1307         Expose a getMediaType method in WebKit
1308         https://bugs.webkit.org/show_bug.cgi?id=117667
1309
1310         Reviewed by Brady Eidson.
1311
1312         * GNUmakefile.list.am:
1313         * Target.pri:
1314         Updated to include the added header file InjectedBundleHitTestResultMediaType.h
1315         
1316         * UIProcess/API/C/WKAPICast.h:
1317         (WebKit::toBundleHitTestResultMediaType):
1318         (WebKit::toAPI):
1319         Added methods to convert between BundleHitTestResultMediaType
1320         and WKBundleHitTestResultMediaType.
1321
1322         * WebKit2.xcodeproj/project.pbxproj: Updated to include
1323         InjectedBundleHitTestResultMediaType.h in the WebKit2 project.
1324
1325         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
1326         (WKBundleHitTestResultGetMediaType): Exposes the method getMediaType and
1327         hooks into InjectedBundleHitTestResult::getMediaType.
1328
1329         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
1330
1331         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
1332         (WebKit::InjectedBundleHitTestResult::getMediaType): Added to return 
1333         what type, if any, a media element is.
1334
1335         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
1336
1337         * WebProcess/InjectedBundle/InjectedBundleHitTestResultMediaType.h: Added
1338         to contain new BundleHitTestResultMediaType enums.
1339
1340 2013-06-18  Roger Fong  <roger_fong@apple.com>
1341
1342         Re-implement WebFrameNetworkingContext.
1343         <rdar://problem/13174821>.
1344
1345         Reviewed by Alexey Proskuryakov.
1346
1347         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h: Added.
1348         (WebKit::WebFrameNetworkingContext::create):
1349         (WebKit::WebFrameNetworkingContext::WebFrameNetworkingContext):
1350         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: Added.
1351         (WebKit::WebFrameNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
1352         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
1353         (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
1354         (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
1355         (WebKit::WebFrameNetworkingContext::needsSiteSpecificQuirks):
1356         (WebKit::WebFrameNetworkingContext::localFileContentSniffingEnabled):
1357         (WebKit::WebFrameNetworkingContext::scheduledRunLoopPairs):
1358         (WebKit::WebFrameNetworkingContext::sourceApplicationAuditData):
1359         (WebKit::WebFrameNetworkingContext::blockedError):
1360         (WebKit::WebFrameNetworkingContext::storageSession):
1361
1362 2013-06-18  Alexey Proskuryakov  <ap@apple.com>
1363
1364         <rdar://problem/13174821> Remove files with an incorrect license.
1365
1366         Rubber-stamped by Maciej Stachowiak.
1367
1368         This will break the build, stay tuned for a fix coming soon.
1369
1370         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h: Removed.
1371         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: Removed.
1372
1373 2013-06-17  Santosh Mahto  <santosh.ma@samsung.com>
1374
1375         Extra whitespace in blank line in PlatformPopupMenuData.cpp
1376         https://bugs.webkit.org/show_bug.cgi?id=117627
1377
1378         Reviewed by Brent Fulgham.
1379
1380         * Shared/PlatformPopupMenuData.cpp:
1381         (WebKit::PlatformPopupMenuData::decode):
1382         Removing extra space
1383
1384 2013-06-17  Beth Dakin  <bdakin@apple.com>
1385
1386         PageBanners appear over HTML5 video when media element is in full screen mode
1387         https://bugs.webkit.org/show_bug.cgi?id=117721
1388         -and corresponding-
1389         <rdar://problem/13686998>
1390
1391         Reviewed by Sam Weinig.
1392
1393         When an element enters fullscreen, hide the banners. Show them again when the 
1394         element exits fullscreen.
1395         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1396         (WebKit::WebFullScreenManager::willEnterFullScreen):
1397         (WebKit::WebFullScreenManager::willExitFullScreen):
1398
1399         Handle hiding and showing by removing or re-creating a parent layer for m_layer.
1400         * WebProcess/WebPage/PageBanner.cpp:
1401         (WebKit::PageBanner::hide):
1402         (WebKit::PageBanner::showIfHidden):
1403         * WebProcess/WebPage/PageBanner.h:
1404         * WebProcess/WebPage/mac/PageBannerMac.mm:
1405         (WebKit::PageBanner::PageBanner):
1406         (WebKit::PageBanner::hide):
1407         (WebKit::PageBanner::showIfHidden):
1408         (WebKit::PageBanner::mouseEvent):
1409         * WebProcess/WebPage/WebPage.cpp:
1410         (WebKit::WebPage::hidePageBanners):
1411         (WebKit::WebPage::showPageBanners):
1412         * WebProcess/WebPage/WebPage.h:
1413
1414 2013-06-17  Ruth Fong  <ruth_fong@apple.com>
1415
1416         REGRESSION: Important controls are missing from <video> element UI, when compared to QuickTime
1417         https://bugs.webkit.org/show_bug.cgi?id=20599
1418
1419         Add a "Download Video"/"Download Audio" context menu item to download media
1420         elements.
1421
1422         Reviewed by Beth Dakin.
1423
1424         * Shared/API/c/WKContextMenuItemTypes.h: Updated to include
1425         an enum type for the "Download Video/Audio" context menu item.
1426
1427         * Shared/API/c/WKSharedAPICast.h: Updated to associate
1428         the enums in WebKit and WebCore that handle the "Download Video/Audio"
1429         context menu item.
1430
1431         * UIProcess/API/efl/ewk_context_menu.cpp:
1432         * UIProcess/API/efl/ewk_context_menu_item.cpp:
1433         * UIProcess/API/efl/ewk_context_menu_item.h:
1434         Updated to include new EWK enum type for "Download Video/Audio" context menu item.
1435
1436         * UIProcess/WebPageProxy.cpp: Updated to 
1437         handle the "Download Video/Audio" context menu item mouse click
1438         and download the media item in the UI process.
1439
1440 2013-06-17  Ralph Thomas  <ralpht@gmail.com>
1441
1442         [CoordinatedGraphics][CSS Shaders] Use forwarding header for TextureMapperPlatformCompiledProgram.h
1443         https://bugs.webkit.org/show_bug.cgi?id=117712
1444
1445         Reviewed by Noam Rosenthal.
1446
1447         * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h:
1448
1449 2013-06-17  Mark Rowe  <mrowe@apple.com>
1450
1451         <rdar://problem/13145014> Allow CoreIPC messages to transmit importance boosts
1452
1453         Transmitting the importance boost from the UI process to the web process is particularly
1454         important when disabling process suppression on a web process, as it will minimize the
1455         delays that can occur before the message instructing process suppression to be disabled
1456         is processed by the web process.
1457
1458         We keep the importance boost alive for the duration of the CoreIPC message handler. We
1459         achieve this by having an ImportanceAssertion object that owns the assertion, and whose
1460         lifetime is tied to that of the MessageDecoder.
1461
1462         Reviewed by Anders Carlsson.
1463
1464         * Platform/CoreIPC/MessageDecoder.cpp:
1465         (CoreIPC::MessageDecoder::setImportanceAssertion): Associate an importance assertion
1466         with this message.
1467         * Platform/CoreIPC/MessageDecoder.h:
1468         * Platform/CoreIPC/mac/ConnectionMac.cpp:
1469         (CoreIPC::Connection::open): Mark our receive port as allowing importance boosts to be received.
1470         (CoreIPC::Connection::receiveSourceEventHandler):
1471         * Platform/CoreIPC/mac/ImportanceAssertion.h:
1472         (CoreIPC::ImportanceAssertion::create):
1473         (CoreIPC::ImportanceAssertion::~ImportanceAssertion): Release the assertion.
1474         (CoreIPC::ImportanceAssertion::ImportanceAssertion): Take an assertion if a boost was present in
1475         the Mach message.
1476
1477 2013-06-17  Mark Rowe  <mrowe@apple.com>
1478
1479         <rdar://problem/14051357> Web processes sometimes remain in a suppressed
1480         state after their window is unoccluded.
1481
1482         The code in WKView that responds to occlusion notifications was incorrectly
1483         treating the window's occlusion state as being an enum rather than the set of
1484         flags that it is.
1485
1486         Reviewed by Oliver Hunt.
1487
1488         * UIProcess/API/mac/WKView.mm:
1489         (-[WKView _windowDidChangeOcclusionState:]): Test only the visibility state.
1490         (-[WKView setWindowOcclusionDetectionEnabled:]): Ditto.
1491
1492 2013-06-17  Michael Brüning  <michael.bruning@digia.com>
1493
1494         [Qt] Remove Qt specific QTKIT flagged code.
1495         https://bugs.webkit.org/show_bug.cgi?id=117635
1496
1497         Reviewed by Simon Hausmann.
1498
1499         Due to disabling QTKIT for Qt in r151546, the
1500         code the flags that are not taken into account
1501         anymore and the code that has been rendered
1502         unreachable by this are removed.
1503
1504         * Target.pri:
1505         * UIProcess/qt/WebContextQt.cpp:
1506         (WebKit::WebContext::platformInitializeWebProcess):
1507         * WebProcess/WebCoreSupport/qt/WebSystemInterface.h: Removed.
1508         * WebProcess/WebCoreSupport/qt/WebSystemInterface.mm: Removed.
1509         * WebProcess/WebPage/WebPage.cpp:
1510         (WebKit::WebPage::updatePreferences):
1511         * WebProcess/qt/WebProcessMainQt.cpp:
1512         (WebKit::WebProcessMainQt):
1513
1514 2013-06-17  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
1515
1516         Unreviewed, rolling out r151632.
1517         http://trac.webkit.org/changeset/151632
1518         https://bugs.webkit.org/show_bug.cgi?id=117585
1519
1520         Debug build error ASSERT(WTF_USE_GRAMMAR_CHECKING) for non MAC
1521         platforms
1522
1523         * Shared/API/c/WKSharedAPICast.h:
1524         (WebKit::toAPI):
1525         (WebKit::toImpl):
1526         * UIProcess/API/efl/ewk_context_menu_item.cpp:
1527         (getEwkActionFromWKTag):
1528         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
1529         (onContextMenuShow):
1530         (TEST_F):
1531         * UIProcess/API/gtk/WebKitContextMenuActions.cpp:
1532         (webkitContextMenuActionGetActionTag):
1533         (webkitContextMenuActionGetForContextMenuItem):
1534         (webkitContextMenuActionGetLabel):
1535         * UIProcess/WebPageProxy.cpp:
1536         (WebKit::WebPageProxy::contextMenuItemSelected):
1537
1538 2013-06-14  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
1539
1540         Context menu grammar checking items are available when GRAMMAR_CHECKING macro is off
1541         https://bugs.webkit.org/show_bug.cgi?id=117585
1542
1543         Reviewed by Anders Carlsson.
1544
1545         Add GRAMMAR_CHECKING guard to the context menu grammar items.
1546
1547         * Shared/API/c/WKSharedAPICast.h:
1548         (WebKit::toAPI):
1549         (WebKit::toImpl):
1550         * UIProcess/API/efl/ewk_context_menu_item.cpp:
1551         (getEwkActionFromWKTag):
1552         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
1553         (checkSpellingItemsAvailability):
1554         Change callback name, to be consistent with a newly added.
1555
1556         (checkSpellingAndGrammarSubmenuAvailability):
1557         (checkGrammarWithSpellingItemAvailability):
1558         Add two unit tests for EFL to check whether context menu grammar items are
1559         available only when GRAMMAR_CHECKING macro is enabled.
1560
1561         * UIProcess/API/gtk/WebKitContextMenuActions.cpp:
1562         (webkitContextMenuActionGetActionTag):
1563         (webkitContextMenuActionGetForContextMenuItem):
1564         (webkitContextMenuActionGetLabel):
1565         * UIProcess/WebPageProxy.cpp:
1566         (WebKit::WebPageProxy::contextMenuItemSelected):
1567
1568 2013-06-14  Dean Jackson  <dino@apple.com>
1569
1570         Crash in supportsSnapshotting
1571         https://bugs.webkit.org/show_bug.cgi?id=117670
1572         <rdar://problem/14059711>
1573
1574         Reviewed by Darin Adler.
1575
1576         Speculative fix for deferencing a null RefPtr in supportsSnapshotting.
1577         It seems like it was possible to get in a state where the plugin machinery
1578         would fire up and attempt to get a screenshot before there was an active
1579         connection to the plugin process (usually under periods of high load, such
1580         as opening a lot of tabs at once). In this case we're now returning false
1581         from supportsSnapshotting, which will trigger the plugin to restart, but
1582         that's better than requesting a snapshot on something that doesn't yet exist.
1583
1584         * WebProcess/Plugins/PluginProxy.cpp:
1585         (WebKit::PluginProxy::supportsSnapshotting): Guard for an empty connection object.
1586
1587 2013-06-14  Enrica Casucci  <enrica@apple.com>
1588
1589         WKPageFindStringMatches ignores the kWKFindOptionsBackwards option.
1590         https://bugs.webkit.org/show_bug.cgi?id=117647
1591         <rdar://problem/13881024>
1592
1593         Reviewed by Darin Adler.
1594         
1595         The API returns the matched ranges in the DOM order regardless of the
1596         find direction, but the index of the first match after the user selection
1597         should take the find direction into account.
1598
1599         Extended existing test in TestWebKitAPI.
1600
1601         * Shared/API/c/WKFindOptions.h: Added enum for the case where there are
1602         no matches after the user selection in the direction of the find.
1603
1604 2013-06-14  Andres Gomez  <agomez@igalia.com>
1605
1606         [GTK] Compilation problems - hb.h not found
1607         https://bugs.webkit.org/show_bug.cgi?id=117636
1608
1609         Unreviewed GTK+ build fix.
1610
1611         * GNUmakefile.am: Added freetype cflags for WebKit2 GTK+ Platform
1612         library.
1613
1614 2013-06-13  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
1615
1616         [EFL][WK2] Wrong context menu and popup menu positions when scroll is applied
1617         https://bugs.webkit.org/show_bug.cgi?id=116610
1618
1619         Reviewed by Noam Rosenthal.
1620
1621         WebKit2 EFL uses fixed layout - because of this ScrollView::contentsToWindow, does
1622         not take scroll into account, as it is meant to be handled by UI application.
1623         When popup and context menu are created, after calling contentsToWindow their position
1624         are not adjusted to page scroll.
1625         Added two functions to EwkView and WKView, converting contents position to user viewport
1626         coordinates, to adjust popup and context menu positions.
1627
1628         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
1629         (WKViewContentsToUserViewport):
1630         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
1631         * UIProcess/API/efl/EwkView.cpp:
1632         (EwkView::showContextMenu):
1633         (EwkView::requestPopupMenu):
1634         * UIProcess/CoordinatedGraphics/WebView.cpp:
1635         (WebKit::WebView::contentsToUserViewport):
1636         * UIProcess/CoordinatedGraphics/WebView.h:
1637
1638 2013-06-12  Anders Carlsson  <andersca@apple.com>
1639
1640         Remove the notion of inactive plug-ins
1641         https://bugs.webkit.org/show_bug.cgi?id=117570
1642         <rdar://problem/13484213>
1643
1644         Reviewed by Tim Horton.
1645
1646         Remove code that deals with inactive plug-ins. We still keep around the kWKPluginLoadPolicyInactive API enum for now.
1647
1648         * Shared/Plugins/PluginModuleInfo.h:
1649         * UIProcess/API/C/WKAPICast.h:
1650         (WebKit::toWKPluginLoadPolicy):
1651         (WebKit::toPluginModuleLoadPolicy):
1652         * UIProcess/Plugins/PluginInfoStore.cpp:
1653         * UIProcess/Plugins/PluginInfoStore.h:
1654         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
1655         (WebKit::PluginInfoStore::shouldUsePlugin):
1656         (WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):
1657         * UIProcess/WebPageProxy.cpp:
1658         (WebKit::WebPageProxy::findPlugin):
1659         (WebKit::WebPageProxy::unavailablePluginButtonClicked):
1660         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1661         (WebKit::WebChromeClient::shouldUnavailablePluginMessageBeButton):
1662         (WebKit::WebChromeClient::unavailablePluginButtonClicked):
1663         * WebProcess/WebPage/WebPage.cpp:
1664         (WebKit::WebPage::createPlugin):
1665
1666 2013-06-12  Hugo Parente Lima  <hugo.lima@openbossa.org>
1667
1668         [GTK] Explicit include glib.h to avoid compilation errors if libsoup isn't used.
1669         https://bugs.webkit.org/show_bug.cgi?id=117564
1670
1671         Reviewed by Martin Robinson.
1672
1673         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
1674
1675 2013-06-12  Zan Dobersek  <zdobersek@igalia.com>
1676
1677         [GTK] Move more build targets for source code that's free of layer violations into libPlatform
1678         https://bugs.webkit.org/show_bug.cgi?id=115936
1679
1680         Reviewed by Martin Robinson.
1681
1682         * GNUmakefile.am: Add GStreamer dependency's CFLAGS to the list of libPlatformGtk2 CPPFLAGS.
1683
1684 2013-06-12  Ruth Fong  <ruth_fong@apple.com>
1685
1686         "Open Video in New Window" doesn't make sense in fullscreen
1687         https://bugs.webkit.org/show_bug.cgi?id=117556
1688
1689         Reviewed by Beth Dakin.
1690
1691         Adds method mediaIsInFullscreen() that checks if a media element is in
1692         fullscreen mode, which is needed to decide when to display the
1693         "Open Video in New Window" context menu item.
1694
1695         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
1696         (WKBundleHitTestResultMediaIsInFullscreen): Added.
1697         Hooks into new InjectedBundleHitTestResult::mediaIsInFullscreen() method.
1698         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
1699         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
1700         (WebKit::InjectedBundleHitTestResult::mediaIsInFullscreen): Added.
1701         Checks if media element is in fullscreen.
1702         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
1703
1704 2013-06-12  Ruth Fong  <ruth_fong@apple.com>
1705
1706         Allow for toggling fullscreen on <video> elements
1707         https://bugs.webkit.org/show_bug.cgi?id=117220
1708
1709         Reviewed by Dean Jackson.
1710
1711         * Shared/API/c/WKContextMenuItemTypes.h:
1712         * Shared/API/c/WKSharedAPICast.h:
1713         Added variables to support the toggle-ability of the fullscreen
1714         video context menu item.
1715
1716 2013-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1717
1718         [GTK] Invalidate the ProcessLauncher when the process is terminated before it has finished launching
1719         https://bugs.webkit.org/show_bug.cgi?id=117412
1720
1721         Reviewed by Anders Carlsson.
1722
1723         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
1724         (WebKit::ProcessLauncher::terminateProcess): If process is still
1725         launching just invalidate the launcher. Reset the process
1726         identifier after killing the process.
1727
1728 2013-06-12  Jae Hyun Park  <jae.park@company100.net>
1729
1730         [Coordinated Graphics] Remove unused headers in CoordinatedLayerTreeHostProxy
1731         https://bugs.webkit.org/show_bug.cgi?id=117539
1732
1733         Reviewed by Noam Rosenthal.
1734
1735         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
1736         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1737
1738 2013-06-12  Zan Dobersek  <zdobersek@igalia.com>
1739
1740         [GTK] Remove the WebCoreLayer(Gtk2).a archives before regenerating them
1741         https://bugs.webkit.org/show_bug.cgi?id=116723
1742
1743         Reviewed by Carlos Garcia Campos.
1744
1745         * GNUmakefile.am: When generating the WebCoreLayerGtk2.a archive from all the dependency archives, remove the
1746         current archive (if any). Updating an existent archive in an incremental build is not bulletproof and can lead
1747         to corrupt archives and subsequent build failures. On the other hand, the archive generation is not expensive
1748         and produces a working archive without problems even on incremental builds.
1749
1750 2013-06-12  Zan Dobersek  <zdobersek@igalia.com>
1751
1752         Unreviewed GTK build fix.
1753
1754         * GNUmakefile.list.am: Adding missing build targets to the plugin process after r151480.
1755
1756 2013-06-11  Gavin Barraclough  <barraclough@apple.com>
1757
1758         Add NSSupportsAppNap keys to WebProcess, PluginProcess
1759         https://bugs.webkit.org/show_bug.cgi?id=117528
1760
1761         Reviewed by Mark Rowe.
1762
1763         * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
1764         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
1765         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
1766         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
1767         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
1768         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
1769             - add NSSupportsAppNap key.
1770
1771 2013-06-11  Oliver Hunt  <oliver@apple.com>
1772
1773         Make sure we aren't throttling plugin timers during initialisation and destruction
1774         https://bugs.webkit.org/show_bug.cgi?id=117522
1775
1776         Reviewed by Darin Adler.
1777
1778         Add a new ActivityAssertion RAII class to handle allowing/disallowing
1779         timer throttling.  Then make use of it during plugin initialisation
1780         and destruction, as well as any synchronous messages (on the basis
1781         that if another process is waiting for the plugin we shouldn't be
1782         throttling timers).
1783
1784         * CMakeLists.txt:
1785         * GNUmakefile.list.am:
1786         * PluginProcess/WebProcessConnection.cpp:
1787         (WebKit::WebProcessConnection::didReceiveSyncMessage):
1788         (WebKit::WebProcessConnection::destroyPlugin):
1789         (WebKit::WebProcessConnection::createPlugin):
1790         * Shared/ActivityAssertion.cpp: Added.
1791         (WebKit::ActivityAssertion::ActivityAssertion):
1792         (WebKit::ActivityAssertion::~ActivityAssertion):
1793         * Shared/ActivityAssertion.h: Added.
1794         * Target.pri:
1795         * WebKit2.xcodeproj/project.pbxproj:
1796
1797 2013-06-06  Timothy Hatcher  <timothy@apple.com>
1798
1799         Update the framework bundle identifier for the Web Inspector.
1800
1801         Reviewed by Mark Rowe.
1802
1803         * UIProcess/mac/WebInspectorProxyMac.mm:
1804         (WebKit::inspectorReallyUsesWebKitUserInterface):
1805         (WebKit::WebInspectorProxy::inspectorPageURL):
1806         (WebKit::WebInspectorProxy::inspectorBaseURL):
1807         * WebProcess/WebPage/mac/WebInspectorMac.mm:
1808         (WebKit::inspectorReallyUsesWebKitUserInterface):
1809         (WebKit::WebInspector::localizedStringsURL):
1810
1811 2013-06-11  Jer Noble  <jer.noble@apple.com>
1812
1813         Do not filter cookies requested through the CookieStorageShim.
1814         https://bugs.webkit.org/show_bug.cgi?id=117511
1815         <rdar://problem/13603433>
1816
1817         Reviewed by Beth Dakin.
1818
1819         Since the shim function is called when the underlying media engine is
1820         creating an HTTPRequest, use CookieRequestHeaderFieldValue (which does
1821         not filter out HTTP-only cookies) rather than CookiesForDOM (which does).
1822
1823         * Shared/mac/CookieStorageShim.cpp:
1824         (WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):
1825
1826 2013-06-11  Seokju Kwon  <seokju.kwon@gmail.com>
1827
1828         Remove leftover wxWebkit code
1829         https://bugs.webkit.org/show_bug.cgi?id=117471
1830
1831         Reviewed by Andreas Kling.
1832
1833         * Scripts/generate-forwarding-headers.pl:
1834
1835 2013-06-11  Changhyup Jwa  <ch.jwa@samsung.com>
1836
1837         [EFL][WK2] Add fallback for EWK2UnitTestBase if opengl is not available.
1838         https://bugs.webkit.org/show_bug.cgi?id=117504
1839
1840         Reviewed by Christophe Dumez.
1841
1842         There're many fails on efl webkit2 unit test if opengl is not available.
1843         So, add fallback to non-opengl evas engine.
1844
1845         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1846         (EWK2UnitTest::EWK2UnitTestBase::SetUp):
1847
1848 2013-06-11  Csaba Osztrogonác  <ossy@webkit.org>
1849
1850         Make WTR use its own temporary directory for application cache
1851         https://bugs.webkit.org/show_bug.cgi?id=117143
1852
1853         Reviewed by Alexey Proskuryakov.
1854
1855         * UIProcess/API/C/WKContext.cpp:
1856         (WKContextSetApplicationCacheDirectory):
1857         * UIProcess/API/C/WKContextPrivate.h:
1858         * UIProcess/WebContext.cpp:
1859         (WebKit::WebContext::applicationCacheDirectory):
1860         * UIProcess/WebContext.h:
1861         (WebKit::WebContext::setApplicationCacheDirectory):
1862         * UIProcess/efl/WebContextEfl.cpp:
1863         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
1864         * UIProcess/gtk/WebContextGtk.cpp:
1865         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
1866         * UIProcess/mac/WebContextMac.mm:
1867         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
1868         * UIProcess/qt/WebContextQt.cpp:
1869         (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
1870
1871 2013-06-11  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
1872
1873         [EFL][WK2] Fix test_ewk2_context_menu
1874         https://bugs.webkit.org/show_bug.cgi?id=116601
1875
1876         Reviewed by Gyuyoung Kim.
1877
1878         test_ewk2_context_menu is always passing, it does not test any context menu feature
1879         as it ends before context menu is called.
1880         One single test was divided into two tests: testing WebKit2 created context menu and
1881         testing menus and items created by application.
1882
1883         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1884         (EWK2UnitTest::EWK2UnitTestBase::waitUntilTrue): added function introducing internal loop until boolean value is changed to true
1885         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
1886         * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:
1887         (customItemSelected):
1888         (showContextMenu):
1889         (showContextMenuForRemoveAndAppend):
1890         (showContextMenuForSubmenu):
1891         (hideContextMenu):
1892         (TEST_F):
1893
1894 2013-06-11  Ryuan Choi  <ryuan.choi@samsung.com>
1895
1896         [EFL][WK2] Add ewk_view_navigate API
1897         https://bugs.webkit.org/show_bug.cgi?id=117467
1898
1899         Reviewed by Christophe Dumez.
1900
1901         The applications will use this API to navigate history more than one step.
1902
1903         * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
1904         (EwkBackForwardListItem::wkItem): Return WKBackForwardListItemRef for page to navigate.
1905         * UIProcess/API/efl/ewk_view.cpp:
1906         (ewk_view_navigate_to): Added new API.
1907         * UIProcess/API/efl/ewk_view.h:
1908         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1909         (TEST_F): Added more test case for navigation.
1910
1911 2013-06-10  Jae Hyun Park  <jae.park@company100.net>
1912
1913         [CoordinatedGraphics] Typos in custom shader support
1914         https://bugs.webkit.org/show_bug.cgi?id=117413
1915
1916         Reviewed by Noam Rosenthal.
1917
1918         Wrong keyframe is passed when assigning filterValue.
1919
1920         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1921         (WebKit::CoordinatedLayerTreeHost::prepareCustomFilterProxiesIfNeeded):
1922
1923 2013-06-10  Seokju Kwon  <seokju.kwon@gmail.com>
1924
1925         [Qt][GTK] Build fix after r151403
1926         https://bugs.webkit.org/show_bug.cgi?id=117452
1927
1928         Reviewed by Csaba Osztrogonác.
1929
1930         * UIProcess/API/gtk/PageClientImpl.cpp:
1931         (WebKit::PageClientImpl::preferencesDidChange):
1932         * UIProcess/API/gtk/PageClientImpl.h:
1933         * UIProcess/API/qt/raw/qrawwebview_p_p.h:
1934         (QRawWebViewPrivate::preferencesDidChange):
1935         * UIProcess/qt/QtPageClient.h:
1936         (WebKit::QtPageClient::preferencesDidChange):
1937
1938 2013-06-10  Commit Queue  <commit-queue@webkit.org>
1939
1940         Unreviewed, rolling out r151411.
1941         http://trac.webkit.org/changeset/151411
1942         https://bugs.webkit.org/show_bug.cgi?id=117453
1943
1944         because it is duplicated with Bug 117441 (Requested by
1945         gyuyoung_ on #webkit).
1946
1947         * UIProcess/efl/WebViewEfl.cpp:
1948         * UIProcess/efl/WebViewEfl.h:
1949
1950 2013-06-10  Jaehun Lim  <ljaehun.lim@samsung.com>
1951
1952         Fix build error and warning
1953         https://bugs.webkit.org/show_bug.cgi?id=117441
1954
1955         Reviewed by Anders Carlsson.
1956
1957         * UIProcess/CoordinatedGraphics/WebView.cpp:
1958         (WebKit::WebView::preferencesDidChange): Added.
1959         (WebKit::WebView::createPopupMenuProxy): Remove 'page'.
1960         * UIProcess/CoordinatedGraphics/WebView.h:
1961
1962 2013-06-10  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1963
1964         Unreviewed, EFL Build fix after r151403.
1965
1966         Added preferencesDidChange to WebViewEfl.
1967
1968         * UIProcess/efl/WebViewEfl.cpp:
1969         (WebKit::WebViewEfl::preferencesDidChange):
1970         * UIProcess/efl/WebViewEfl.h:
1971
1972 2013-06-10  Anders Carlsson  <andersca@apple.com>
1973
1974         Crash in StorageAreaMap::applyChange when clearing local storage in another web process
1975         https://bugs.webkit.org/show_bug.cgi?id=117440
1976         <rdar://problem/13961548>
1977
1978         Reviewed by Tim Horton.
1979
1980         Add an early return so we won't try to look up a null key in the m_pendingValueChanges map.
1981         Also, fix an assertion - it's fine for m_storageMap to be null in applyChange.
1982
1983         * WebProcess/Storage/StorageAreaMap.cpp:
1984         (WebKit::StorageAreaMap::applyChange):
1985
1986 2013-06-10  Sergio Correia  <sergio.correia@openbossa.org>
1987
1988         [WK2][CoordinatedGraphics] Add default case to switches to fix strict build
1989         https://bugs.webkit.org/show_bug.cgi?id=117416
1990
1991         Reviewed by Noam Rosenthal.
1992
1993         This patch fixes a strict build by asserting on the default case of two
1994         switch statements where gcc was previously complaining of unhandled cases.
1995
1996         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
1997         (CoreIPC::::encode):
1998         (CoreIPC::::decode):
1999
2000 2013-06-10  Anders Carlsson  <andersca@apple.com>
2001
2002         -[WKView _updateWindowAndViewFrames] should avoid updating the view frame in window coordinates if we don't have plugins
2003         https://bugs.webkit.org/show_bug.cgi?id=117420
2004         <rdar://problem/14073034>
2005
2006         Reviewed by Tim Horton.
2007
2008         If plug-ins are disabled there's no need for the web process to know about the view frame in window coordinates so only
2009         send it when plug-ins are enabled. In addition, if accessibility is disabled we don't need to send a message at all.
2010
2011         * UIProcess/API/mac/PageClientImpl.h:
2012         * UIProcess/API/mac/PageClientImpl.mm:
2013         (WebKit::PageClientImpl::preferencesDidChange):
2014         Call through to -[WKView _preferencesDidChange].
2015
2016         * UIProcess/API/mac/WKView.mm:
2017         (-[WKView _updateWindowAndViewFrames]):
2018         Don't compute viewFrameInWindowCoordinates or accessibilityPosition unless they're required. If neither are required,
2019         don't even send a message to the web process.
2020
2021         (-[WKView _preferencesDidChange]):
2022         Update _needsViewFrameInWindowCoordinates and call -[WKView _updateWindowAndViewFrames] if needed.
2023
2024         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
2025         Set _needsViewFrameInWindowCoordinates based on whether plug-ins are enabled or not.
2026
2027         * UIProcess/WebPageProxy.cpp:
2028         (WebKit::WebPageProxy::preferencesDidChange):
2029         Call the page client.
2030
2031 2013-06-10  Bear Travis  <betravis@adobe.com>
2032
2033         [CSS Shapes][CSS Exclusions] Split CSS Exclusions and CSS Shapes code
2034         https://bugs.webkit.org/show_bug.cgi?id=117162
2035
2036         Reviewed by Alexandru Chiculita.
2037
2038         Adding the WebCore/rendering/shapes directory to the include list.
2039
2040         * CMakeLists.txt:
2041
2042 2013-06-10  Iago Toral Quiroga  <itoral@igalia.com>
2043
2044         Use Cairo implementation of the WidgetBackingStore instead of X11 when running on Wayland
2045         https://bugs.webkit.org/show_bug.cgi?id=116717
2046
2047         Reviewed by Martin Robinson.
2048
2049         Decide which implementation of WidgetBackingStore to use (X11 or Cairo)
2050         depending on whether we are running on X11 or not. Select Cairo
2051         implementation when not running in X11.
2052
2053         * UIProcess/cairo/BackingStoreCairo.cpp:
2054         (WebKit):
2055         (WebKit::createBackingStoreForGTK):
2056         (WebKit::BackingStore::incorporateUpdate):
2057
2058 2013-06-09  Jae Hyun Park  <jae.park@company100.net>
2059
2060         [CoordinatedGraphics] Typo in argument decoder for CoordinatedGraphicsState
2061         https://bugs.webkit.org/show_bug.cgi?id=117384
2062
2063         Reviewed by Noam Rosenthal.
2064
2065         For CSS Shaders, it must decode state.customFiltersToRemove instead of
2066         state.updateAtlasesToRemove.
2067
2068         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2069         (CoreIPC::::decode):
2070
2071 2013-06-08  Jae Hyun Park  <jae.park@company100.net>
2072
2073         [Coordinated Graphics] Pass the ownership of GraphicsSurface explicitly
2074         https://bugs.webkit.org/show_bug.cgi?id=117379
2075
2076         Reviewed by Noam Rosenthal.
2077
2078         When creating WebCoordinatedSurface with GraphicsSurface, it is clearer
2079         to pass the ownership of the created GraphicsSurface explicitly.
2080
2081         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
2082         (WebKit::WebCoordinatedSurface::create):
2083
2084 2013-06-07  Anders Carlsson  <andersca@apple.com>
2085
2086         Coalesce multiple calls to WebPageProxy::windowAndViewFramesChanged
2087         https://bugs.webkit.org/show_bug.cgi?id=117364
2088         <rdar://problem/14042099>
2089
2090         Reviewed by Geoffrey Garen.
2091
2092         -[WKView _updateWindowAndViewFrames] can be called many times per run loop iteration so coalesce calls
2093         to WebPageProxy::windowAndViewFrames using dispatch_async.
2094
2095         * UIProcess/API/mac/WKView.mm:
2096         (-[WKView _updateWindowAndViewFrames]):
2097
2098 2013-06-07  Thomas Deniau  <deniau@apple.com>
2099
2100         Reproducible crash with triple-finger-tap "define word" gesture on a Netflix video
2101         https://bugs.webkit.org/show_bug.cgi?id=117020
2102
2103         Reviewed by Ryosuke Niwa.
2104
2105         * WebProcess/WebPage/mac/WebPageMac.mm:
2106         (WebKit::WebPage::performDictionaryLookupAtLocation):
2107         Don't invoke the Dictionary lookup when we failed to extract the range of the token
2108         surrounding the tapped position.
2109
2110 2013-06-07  Enrique Ocana Gonzalez  <eocanha@igalia.com>
2111
2112         [GTK] Weird behaviour and no clues to the user when the shared memory file can't be opened
2113         https://bugs.webkit.org/show_bug.cgi?id=117063
2114
2115         Reviewed by Anders Carlsson.
2116
2117         Log error message when the shared memory file can't be opened in
2118         Unix platform using a release build
2119
2120         * Platform/unix/SharedMemoryUnix.cpp:
2121         (WebKit::SharedMemory::create):
2122
2123 2013-06-07  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2124
2125         [EFL][WK2] Context menu spellchecking items are not available when "Check Spelling While Typing" is off
2126         https://bugs.webkit.org/show_bug.cgi?id=117190
2127
2128         Reviewed by Christophe Dumez.
2129
2130         Context menu items (suggestions, learn and ignore word) are not available
2131         due to missing dictionary. To get the suggestions for the misspelled word,
2132         the dictionary has to be loaded first.
2133
2134         WebKit loads the default dictionary when check spelling while typing is being enabled.
2135         However, context menu spellchecking items should be present even if this setting is off.
2136
2137         * UIProcess/API/efl/ewk_context.cpp:
2138         (EwkContext::EwkContext):
2139         Load the user's default dictionary to ensure context menu spellchecking items.
2140         The dictionary is loaded asynchronously so it shouldn't delay application.
2141
2142         * UIProcess/API/efl/ewk_text_checker.h:
2143         Update doc. Spelling suggestions, learn and ignore word should be available
2144         independently of checking spelling while typing setting.
2145
2146         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
2147         (onContextMenuShow):
2148         (TEST_F):
2149         Add two unit tests to check whether the default dictionary is loaded and
2150         whether the context menu spelling items are available.
2151
2152         * UIProcess/efl/TextCheckerEfl.cpp:
2153         (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
2154         (WebKit::TextChecker::continuousSpellCheckingEnabledStateChanged):
2155         Not set the default dictionary while enabling the setting, it's already loaded.
2156
2157 2013-06-07  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
2158
2159         [EFL][WK2] Implement customContextMenuItemSelected
2160         https://bugs.webkit.org/show_bug.cgi?id=117298
2161
2162         Reviewed by Christophe Dumez.
2163
2164         When custom context menu item is selected using ewk API, the feedback is not
2165         sent back to application, as customContextMenuItemSelected was unimplemented in
2166         contextMenuClientEfl.
2167
2168         * UIProcess/API/efl/EwkView.cpp:
2169         (EwkView::customContextMenuItemSelected):
2170         * UIProcess/API/efl/EwkView.h:
2171         * UIProcess/API/efl/ewk_view.h: added custom_item_selected callback.
2172         * UIProcess/efl/ContextMenuClientEfl.cpp:
2173         (customContextMenuItemSelected):
2174         (ContextMenuClientEfl::ContextMenuClientEfl):
2175
2176 2013-06-06  Oliver Hunt  <oliver@apple.com>
2177
2178         Completely initialize ChildProcess state on launch
2179         https://bugs.webkit.org/show_bug.cgi?id=117328
2180
2181         Reviewed by Sam Weinig.
2182
2183         Use setProcessSuppressionEnabledInternal to avoid setProcessSuppressionEnabled
2184         "optimizing" our initialization away.
2185
2186         * Shared/mac/ChildProcessMac.mm:
2187         (WebKit::ChildProcess::platformInitialize):
2188
2189 2013-06-06  Rafael Brandao  <rafael.lobo@openbossa.org>
2190
2191         [Gtk] Connection is leaking when WebProcess is terminated
2192         https://bugs.webkit.org/show_bug.cgi?id=117293
2193
2194         Reviewed by Martin Robinson.
2195
2196         Connection is leaking because WorkQueue::SocketEventSource inherits from
2197         WorkQueue::EventSource but when it is destroyed, the actual destructor running
2198         is the one from base class; however, subclass contains a function binded from
2199         Connection (m_closeFunction) and we need to do this extra cleanup, otherwise
2200         WorkQueue will keep Connection alive. A better explanation of this fix is provided
2201         on http://stackoverflow.com/questions/461203/when-to-use-virtual-destructors
2202
2203         A quick way to see the leak is to change WK2 test "ReloadPageAfterCrash" to terminate
2204         WebProcess N times and add a printf on Connection destructor.
2205
2206         * Platform/gtk/WorkQueueGtk.cpp:
2207         (WorkQueue::EventSource::~EventSource): Adds a virtual destructor to enable
2208         the subclass to do its own cleanup.
2209
2210 2013-06-06  Jae Hyun Park  <jae.park@company100.net>
2211
2212         Coordinated Graphics : Refactor CoordinatedSurface to manage the lifecycle of GraphicsContext
2213         https://bugs.webkit.org/show_bug.cgi?id=108899
2214
2215         Reviewed by Noam Rosenthal.
2216
2217         This is a preparation patch for Threaded Coordinated Graphics.
2218
2219         This patch changes CoordinatedSurface to be responsible for the
2220         lifecycle of GraphicsContext used in Coordinated Graphics System.
2221         CoordinatedImageBacking and UpdateAtlas do not ask for the ownership
2222         of GraphicsContext anymore. Instead, those classes use client pattern to
2223         ask the CoordiantedSurface to paint to the GraphicsContext.
2224
2225         This refactoring is needed to implement CoordinatedSurface for Threaded
2226         Coordinated Graphics.
2227
2228         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
2229         (WebKit::WebCoordinatedSurface::paintToSurface):
2230         * Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
2231         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2232         (WebKit::CoordinatedLayerTreeHost::paintToSurface):
2233         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2234
2235 2013-06-05  Kangil Han  <kangil.han@samsung.com>
2236
2237         [EFL][WK2] Fix test_ewk2_view unit test timed out issue
2238         https://bugs.webkit.org/show_bug.cgi?id=117251
2239
2240         Reviewed by Christophe Dumez.
2241
2242         'ewk_view_contents_size_changed' unit test case has been timed out since r150802 because
2243         same size is filtered by WebView class. So create one different test html string that has
2244         different size to continue unit tests.
2245
2246         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2247         (onContentsSizeChangedPortrait):
2248         (onContentsSizeChangedLandscape):
2249         (TEST_F):
2250
2251 2013-06-05  Bear Travis  <betravis@adobe.com>
2252
2253         [CSS Exclusions][CSS Shapes] Split CSS Exclusions & Shapes compile & runtime flags
2254         https://bugs.webkit.org/show_bug.cgi?id=117172
2255
2256         Reviewed by Alexandru Chiculita.
2257
2258         Adding the CSS_SHAPES compile flag.
2259
2260         * Configurations/FeatureDefines.xcconfig:
2261
2262 2013-06-05  Anders Carlsson  <andersca@apple.com>
2263
2264         Crash if an IPC connection is invalidated before it's completely set up
2265         https://bugs.webkit.org/show_bug.cgi?id=117274
2266         <rdar://problem/13319035>
2267
2268         Reviewed by Andreas Kling.
2269
2270         Resume our dispatch sources on the connection queue so we won't get invalidation callbacks before
2271         all sources have been set up.
2272
2273         * Platform/CoreIPC/mac/ConnectionMac.cpp:
2274         (CoreIPC::Connection::open):
2275         (CoreIPC::Connection::sendOutgoingMessage):
2276         (CoreIPC::Connection::initializeDeadNameSource):
2277         (CoreIPC::Connection::receiveSourceEventHandler):
2278
2279 2013-06-05  Tim Horton  <timothy_horton@apple.com>
2280
2281         [wk2] WebProcess' page-in-window count can be wrong
2282         https://bugs.webkit.org/show_bug.cgi?id=117106
2283         <rdar://problem/14040991>
2284
2285         Reviewed by Anders Carlsson.
2286
2287         If we're using a single WebProcess and a window is closed, we were
2288         not decrementing the page-in-window count (because we apparently don't
2289         setIsInWindow(false) a WebPage in a closing window before tearing it down).
2290
2291         Turn the page-in-window count into a HashSet of pageIDs instead.
2292
2293         * WebProcess/WebPage/WebPage.cpp:
2294         (WebKit::WebPage::WebPage):
2295         (WebKit::WebPage::setIsInWindow):
2296         Send the pageID instead (this change is just so that I don't need to
2297         fetch the WebPage in WebProcess::removeWebPage).
2298
2299         * WebProcess/WebProcess.cpp:
2300         (WebKit::WebProcess::WebProcess):
2301         Remove m_inWindowPageCount.
2302
2303         (WebKit::WebProcess::removeWebPage):
2304         Ensure that WebPages being torn-down are removed from the in-window WebPage set.
2305
2306         (WebKit::WebProcess::pageDidEnterWindow):
2307         (WebKit::WebProcess::pageWillLeaveWindow):
2308         Use our new HashSet instead of a count.
2309
2310         (WebKit::WebProcess::nonVisibleProcessCleanupTimerFired):
2311         Make sure that we don't have any visible pages before doing cleanup.
2312
2313         * WebProcess/WebProcess.h:
2314         Remove m_inWindowPageCount.
2315         Add m_inWindowPageSet.
2316         Make pageDidEnterWindow/pageWillLeaveWindow take pageID instead of WebPage.
2317
2318 2013-06-05  Tim Horton  <timothy_horton@apple.com>
2319
2320         REGRESSION (r148713): Crash under waitForDidUpdateInWindowState
2321         https://bugs.webkit.org/show_bug.cgi?id=117268
2322         <rdar://problem/13822353>
2323
2324         Reviewed by Anders Carlsson.
2325
2326         Check if the WebProcess is valid before waiting for a message from it.
2327         Reset the bool that tells us that we have an outstanding didUpdateInWindowState message if the WebProcess quits.
2328
2329         * UIProcess/WebPageProxy.cpp:
2330         (WebKit::WebPageProxy::waitForDidUpdateInWindowState):
2331         (WebKit::WebPageProxy::resetStateAfterProcessExited):
2332
2333 2013-06-05  Gwang Yoon Hwang  <ryumiel@company100.net>
2334
2335         [Coordinated Graphics] Prevent a recursive painting in CoordinatedGraphicsLayer
2336         https://bugs.webkit.org/show_bug.cgi?id=117222
2337
2338         Reviewed by Noam Rosenthal.
2339
2340         CoordinatedGraphicsLayer::flushCompositingState() will cross frame
2341         boundaries if the GraphicsLayers are connected. In this case,
2342         updateContentBuffers will invoke a painting of a sub-frame that causes
2343         flushCompositingState recursively.
2344
2345         To prevent this behavior this patch extracts updateContentBuffers from
2346         flushCompositingState, and places it in
2347         updateContentBuffersIncludeSublayers, which traverses the tree
2348         separately from flushing the state for painting.
2349
2350         No new tests, covered by existing tests.
2351
2352         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2353         (WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
2354
2355 2013-06-05  Gwang Yoon Hwang  <ryumiel@company100.net>
2356
2357         [Coordinated Graphics] Rename client classes for CoordinatedImageBacking and UpdateAtlas.
2358         https://bugs.webkit.org/show_bug.cgi?id=111948
2359
2360         Reviewed by Noam Rosenthal.
2361
2362         This patch renames CoordinatedImageBacking::Coordinator to
2363         CoordinatedImageBacking::Client, and UpdateAtlasClient to
2364         UpdateAtlas::Client for naming consistency and clarification.
2365
2366         No new tests, covered by existing tests.
2367
2368         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2369
2370 2013-06-05  Gwang Yoon Hwang  <ryumiel@company100.net>
2371
2372         [Coordinated Graphics] Unify messages related object's lifecycles into CoordinatedGraphicsState.
2373         https://bugs.webkit.org/show_bug.cgi?id=111919
2374
2375         Reviewed by Noam Rosenthal.
2376
2377         CoordinatedLayerTreeHostProxy has several methods, which simply passes
2378         these calls to CoordinatedGraphicsScene.
2379
2380         This patch removes methods in CoordinatedLayerTreeHostProxy just for
2381         message chaining. Instead of that, messages for creation/deletion of objects
2382         (Layers, CustomFilters, UpdateAtlas, and ImageBacking) are unified into
2383         CommitCoordinatedGraphicsState.
2384
2385         And this patch also removes codes for WebCoordinatedSurface in
2386         CoordinatedLayerTreeHost, except for a factory method.
2387         CoordinatedGraphicsArgumentCoders [en|de]codes CoordinatedSurface itself
2388         using WebCoordinatedSurface.
2389
2390         No new tests, covered by existing tests.
2391
2392         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2393         (CoreIPC::encodeCoordinatedSurface):
2394         (CoreIPC::decodeCoordinatedSurface):
2395         (CoreIPC::::encode):
2396         (CoreIPC::::decode):
2397         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
2398         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2399         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
2400         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2401         (WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
2402         (WebKit::CoordinatedLayerTreeHost::clearPendingStateChanges):
2403         (WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
2404         (WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
2405         (WebKit::CoordinatedLayerTreeHost::detachLayer):
2406         (WebKit::CoordinatedLayerTreeHost::createImageBacking):
2407         (WebKit::CoordinatedLayerTreeHost::updateImageBacking):
2408         (WebKit::CoordinatedLayerTreeHost::clearImageBackingContents):
2409         (WebKit::CoordinatedLayerTreeHost::removeImageBacking):
2410         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
2411         (WebKit::CoordinatedLayerTreeHost::createUpdateAtlas):
2412         (WebKit::CoordinatedLayerTreeHost::removeUpdateAtlas):
2413         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2414
2415 2013-06-04  Simon Cooper  <scooper@apple.com>
2416
2417         Tighten plugin sandbox profiles against symlink attacks
2418         https://bugs.webkit.org/show_bug.cgi?id=117219
2419         <rdar://problem/13044569>
2420
2421         Reviewed by Sam Weinig.
2422
2423         This inserts deny rules for creating symbolic links. The rules are
2424         inserted at the end of sandbox profile compilation by overriding the
2425         finalizer.  The initial value of %finalize must be the last function
2426         called.
2427
2428         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
2429
2430 2013-06-04  Chris Fleizach  <cfleizach@apple.com>
2431
2432         AX: WK2: accessibility position is calculated every time window frame is updated
2433         https://bugs.webkit.org/show_bug.cgi?id=117201
2434
2435         Reviewed by Tim Horton.
2436
2437         Only calculate the AX position if AX has already been enabled when updating the
2438         WKView's window and frame.
2439
2440         * UIProcess/API/mac/WKView.mm:
2441         (-[WKView _updateWindowAndViewFrames]):
2442         (-[WKView _accessibilityRegisterUIProcessTokens]):
2443             Don't call accessibilityAttributeValue: here because it could enable accessibility prematurely.
2444         (-[WKView enableAccessibilityIfNecessary]):
2445             After enabling AX for the first time, also update the frame so that the AX position is correct.
2446         (-[WKView accessibilityFocusedUIElement]):
2447         (-[WKView accessibilityHitTest:]):
2448         (-[WKView accessibilityAttributeValue:]):
2449             Tell the AXObjectCache that AX is now enabled.
2450
2451 2013-06-04  Mark Rowe  <mrowe@apple.com>
2452
2453         REGRESSION (r151043): Frequent crashes inside WebPageProxy::getPlugInInformation
2454         <http://webkit.org/b/117180>
2455
2456         Reviewed by Brady Eidson.
2457
2458         * UIProcess/mac/WebPageProxyMac.mm:
2459         (WebKit::WebPageProxy::getPlugInInformation): Return early when plugInProcessProxy is null
2460         since there's nothing we can do.
2461
2462 2013-06-04  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
2463
2464         [EFl][WK2] Sub menu items should be of EWK_SUBMENU_TYPE and not checkable
2465         https://bugs.webkit.org/show_bug.cgi?id=116959
2466
2467         Reviewed by Gyuyoung Kim.
2468
2469         Currently using ewk API it is possible to create a sub menu item which is not an EWK_SUBMENU_TYPE
2470         or set checkable flag for it, while it is not possible for items created by WebKit. 
2471         This patch changes ewk context menu API to match WebKit2 behaviour, by creating sub menus with
2472         proper type and checkable flags.
2473
2474         * UIProcess/API/efl/ewk_context_menu_item.cpp:
2475         (ewk_context_menu_item_new_with_submenu):
2476         * UIProcess/API/efl/ewk_context_menu_item.h:
2477         * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:
2478         (showContextMenu):
2479
2480 2013-06-04  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
2481
2482         [EFL][WK2] Custom context menu items cannot be selected
2483         https://bugs.webkit.org/show_bug.cgi?id=116830
2484
2485         Reviewed by Gyuyoung Kim.
2486
2487         Custom item added using ewk_context_menu_item_append had no
2488         pointer to parent menu, and custom submenu added using with the
2489         the same function had no pointer to EwkView. Both issues
2490         prevented items to be selected.
2491
2492         * UIProcess/API/efl/ewk_context_menu.cpp:
2493         (EwkContextMenu::appendItem):
2494         (EwkContextMenu::contextMenuItemSelected):
2495         (ewk_context_menu_item_append):
2496         (ewk_context_menu_item_select):
2497         * UIProcess/API/efl/ewk_context_menu_private.h:
2498         (EwkContextMenu):
2499         (EwkContextMenu::setEwkView):
2500
2501 2013-06-03  Simon Cooper  <scooper@apple.com>
2502
2503         Unable to play videos in Safari using QuickTime plug-in until I've played those videos in Chrome first
2504         https://bugs.webkit.org/show_bug.cgi?id=117174
2505         <rdar://problem/13711687>
2506
2507         Reviewed by Alexey Proskuryakov.
2508
2509         Pull in fixes that allow https connections within the plugin
2510         environment.
2511
2512         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
2513
2514 2013-06-03  Marcelo Lira  <marcelo.lira@openbossa.org>
2515
2516         [WK2] REGRESSION(r150798): scrolling coordinator is not being enabled when WebPage is set to use fixed layout
2517         https://bugs.webkit.org/show_bug.cgi?id=117163
2518
2519         Reviewed by Darin Adler.
2520
2521         Moved call to WebPage::settings()->setScrollingCoordinatorEnabled()
2522         from CoordinatedLayerTreeHost constructor to WebPage::setUseFixedLayout().
2523         The scrolling coordinator must be enabled or disabled following the
2524         WebPage's use of fixed layout.
2525
2526         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2527         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
2528         * WebProcess/WebPage/WebPage.cpp:
2529         (WebKit::WebPage::setUseFixedLayout):
2530
2531 2013-06-03  Anders Carlsson  <andersca@apple.com>
2532
2533         Send mouse events to the banner for as long as the mouse button is down
2534         https://bugs.webkit.org/show_bug.cgi?id=117161
2535         <rdar://problem/13821220>
2536
2537         Reviewed by Beth Dakin.
2538
2539         Keep track of whether the mouse was pressed in a banner and keep sending mouse events to it,
2540         even if they are outside the banner's bounds for as long as the mouse is down.
2541
2542         * WebProcess/WebPage/PageBanner.h:
2543         * WebProcess/WebPage/mac/PageBannerMac.mm:
2544         (WebKit::PageBanner::PageBanner):
2545         (WebKit::PageBanner::mouseEvent):
2546
2547 2013-06-03  Sergio Correia  <sergio.correia@openbossa.org>
2548
2549         [EFL][WK2] Process launcher uses system() for wrapping the WebProcess when using WEB_PROCESS_CMD_PREFIX
2550         https://bugs.webkit.org/show_bug.cgi?id=105156
2551
2552         Reviewed by Christophe Dumez.
2553
2554         When using WEB_PROCESS_CMD_PREFIX - which allows us for instance to analyze
2555         WebProcess under tools like valgrind or gdb -, the ProcessLauncher would
2556         spawn the new process using system(), which would, among other things, keep
2557         an extra UIProcess waiting and executing the shell.
2558
2559         This patch handles the normal case and the case where we have something to
2560         prefix WebProcess (i.e., by using WEB_PROCESS_CMD_PREFIX in a debug build)
2561         the same way, through a call to execvp().
2562
2563         To achieve this a function was introduced to create an array with the given
2564         arguments to the full command to be executed, to be used by execvp(). We use
2565         a Vector<OwnArrayPtr<char>>, so that we can take advantage of the destructor
2566         of OwnArrayPtr to handle the memory deallocation when it goes out of scope.
2567
2568         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
2569         (WebKit::createArgsArray):  This function creates the array to be used by
2570         execvp(), out of the Strings given as arguments.
2571         (WebKit::ProcessLauncher::launchProcess): Rework the logic to accomodate
2572         both the cases with and without WEB_PROCESS_CMD_PREFIX. The execl() call
2573         was replaced with an execvp() call, since now we should deal with having
2574         a variable number of arguments (WEB_PROCESS_CMD_PREFIX) as well.
2575
2576 2013-06-02  Arunprasad Rajkumar  <arurajku@cisco.com>
2577
2578         [Qt] Move Qt port off legacy clipboard
2579         https://bugs.webkit.org/show_bug.cgi?id=116416
2580
2581         Reviewed by Darin Adler.
2582
2583         * WebProcess/WebCoreSupport/qt/WebDragClientQt.cpp:
2584         (WebKit::WebDragClient::startDrag):
2585
2586 2013-06-02  Sergio Correia  <sergio.correia@openbossa.org>
2587
2588         [WK2][CoordinatedGraphics]: Use a properly initialized WebPage when creating a PageClient
2589         https://bugs.webkit.org/show_bug.cgi?id=117116
2590
2591         Reviewed by Tim Horton.
2592
2593         Valgrind reported a "conditional jump or move depends on uninitialised value"
2594         at WebPageProxy constructor, when checking the m_isVisible variable inside
2595         the ENABLE(PAGE_VISIBILITY_API) guard.
2596
2597         The issue was tracked down to the WebView constructor, which was creating a
2598         WebKit::PageClient* making use of `this' before having initialized all of its
2599         attributes.
2600
2601         The solution was to move the initialization of the `page' member to inside the
2602         constructor itself - out of the initialization list -, where we can guarantee
2603         all the relevant stuff has already been properly initialized.
2604
2605         Here's the relevant valgrind trace for reference:
2606
2607         Conditional jump or move depends on uninitialised value(s)
2608             at 0x65A35A4: WebKit::WebPageProxy::WebPageProxy(WebKit::PageClient*,
2609                           WTF::PassRefPtr<WebKit::WebProcessProxy>,
2610                           WebKit::WebPageGroup*, unsigned long) (WebPageProxy.cpp:322)
2611             by 0x65A2BA2: WebKit::WebPageProxy::create(WebKit::PageClient*,
2612                           WTF::PassRefPtr<WebKit::WebProcessProxy>,
2613                           WebKit::WebPageGroup*, unsigned long) (WebPageProxy.cpp:233)
2614             by 0x65E94BB: WebKit::WebProcessProxy::createWebPage(WebKit::PageClient*,
2615                           WebKit::WebContext*, WebKit::WebPageGroup*)
2616                           (WebProcessProxy.cpp:172)
2617             by 0x6570957: WebKit::WebContext::createWebPage(WebKit::PageClient*,
2618                           WebKit::WebPageGroup*, WebKit::WebPageProxy*)
2619                           (WebContext.cpp:735)
2620             by 0x67673E3: WebKit::WebView::WebView(WebKit::WebContext*,
2621                           WebKit::WebPageGroup*) (WebView.cpp:52)
2622             by 0x6775F18: WebKit::WebViewEfl::WebViewEfl(WebKit::WebContext*,
2623                           WebKit::WebPageGroup*) (WebViewEfl.cpp:54)
2624             by 0x6775EB4: WebKit::WebView::create(WebKit::WebContext*,
2625                           WebKit::WebPageGroup*) (WebViewEfl.cpp:49)
2626             by 0x673E13D: WKViewCreate (WKView.cpp:33)
2627             by 0x6763ECE: EWKViewCreate (ewk_view.cpp:92)
2628
2629         * UIProcess/CoordinatedGraphics/WebView.cpp:
2630         (WebKit::WebView::WebView):
2631
2632 2013-05-31  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2633
2634         [EFL][WK2] Add a null checking condition to in hide() of EwkContextMenu
2635         https://bugs.webkit.org/show_bug.cgi?id=117014
2636
2637         Reviewed by Christophe Dumez.
2638
2639         m_viewImpl is able to be null. So, we need to protect this function against such case.
2640
2641         * UIProcess/API/efl/ewk_context_menu.cpp:
2642         (EwkContextMenu::hide):
2643         (ewk_context_menu_hide):
2644         * UIProcess/API/efl/ewk_context_menu_private.h:
2645         (EwkContextMenu):
2646
2647 2013-05-31  Oliver Hunt  <oliver@apple.com>
2648
2649         Fix bug in active page tracking that lead to plugins hanging during destruction
2650         https://bugs.webkit.org/show_bug.cgi?id=117099
2651
2652         Reviewed by Anders Carlsson.
2653
2654         NPRuntimeObjectMap no longer keeps its own reference to the
2655         throttler, and no longer reports activity during destruction.
2656
2657         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
2658         (WebKit::NPRuntimeObjectMap::NPRuntimeObjectMap):
2659         (WebKit::NPRuntimeObjectMap::evaluate):
2660         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
2661         * WebProcess/Plugins/PluginView.cpp:
2662         (WebKit::PluginView::PluginView):
2663
2664 2013-05-31  Tim Horton  <timothy_horton@apple.com>
2665
2666         [wk2] All intrinsic content size changes should go through the 0-delay timer
2667         https://bugs.webkit.org/show_bug.cgi?id=117058
2668         <rdar://problem/13935042>
2669
2670         Reviewed by Anders Carlsson.
2671
2672         In r146913, I added a 0-delay timer so that we'd coalesce intrinsic
2673         content size changes. However, didUpdateGeometry was still immediately
2674         invalidating the intrinsic content size without coalescing.
2675
2676         Move that update to the WebProcess to share the timer.
2677
2678         * UIProcess/DrawingAreaProxy.h:
2679         (WebKit::DrawingAreaProxy::didUpdateGeometry):
2680         * UIProcess/DrawingAreaProxy.messages.in:
2681         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
2682         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
2683         (WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
2684         Remove the newIntrinsicContentSize argument, and don't invalidate intrinsic
2685         content size inside didUpdateGeometry.
2686
2687         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2688         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
2689         Start the intrinsic content size update timer when we finish updateGeometry.
2690
2691 2013-05-31  Alexey Proskuryakov  <ap@apple.com>
2692
2693         Sandbox violations when trying to access fonts in non-standard locations
2694         https://bugs.webkit.org/show_bug.cgi?id=117097
2695         <rdar://problem/9264746>
2696
2697         Reviewed by Anders Carlsson.
2698
2699         The issue was that lack of a main xib was resulting in font machinery being
2700         initialized too early, before we entered sandbox.
2701
2702         * Resources/WebContentProcess.xib: Added.
2703         * WebKit2.xcodeproj/project.pbxproj:
2704         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
2705         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
2706         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
2707
2708 2013-05-31  Alexey Proskuryakov  <ap@apple.com>
2709
2710         <rdar://problem/14036464> Sandbox violation when using Web SpeechSynthesis
2711
2712         Reviewed by Anders Carlsson
2713
2714         * WebProcess/com.apple.WebProcess.sb.in: Allow com.apple.speech.synthesis.console.
2715
2716 2013-05-31  Jessie Berlin  <jberlin@apple.com>
2717
2718         Need the ability to get the information for a plug-in with a particular process id that may
2719         be running on a page
2720         https://bugs.webkit.org/show_bug.cgi?id=117090
2721
2722         Rubber-stamped by Anders Carlsson.
2723
2724         Follow-up to r151043 incorprating some feedback I got from Darin after I had already
2725         committed the patch.
2726
2727         * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
2728         (callGetPlugInInformationBlockAndDispose):
2729         Renamed to be less wordy.
2730         (WKPageGetPlugInInformation):
2731         Ditto.
2732         * UIProcess/API/C/mac/WKPagePrivateMac.h:
2733         Ditto.
2734
2735         * UIProcess/Plugins/PluginProcessManager.h:
2736         * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
2737         (WebKit::PluginProcessManager::findPlugInProcessByID):
2738         Renamed to not use "Cocoa method style" in non-Cocoa functions.
2739         (WebKit::PluginProcessManager::findPlugInProcessByToken):
2740         Ditto.
2741
2742         * UIProcess/WebPageProxy.h:
2743         * UIProcess/mac/WebPageProxyMac.mm:
2744         (WebKit::WebPageProxy::getPlugInInformation):
2745         Reduce ref count churn and fix a variable name.
2746         Updated for the change to findPlugInProcessByID.
2747         (WebKit::WebPageProxy::containsPlugInCallback):
2748         Updated for the change to findPlugInProcessByToken.
2749
2750         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
2751         Move the override of a virtual function to the private section.
2752
2753 2013-05-31  Jessie Berlin  <jberlin@apple.com>
2754
2755         Need the ability to get the information for a plug-in with a particular process id that may
2756         be running on a page
2757         https://bugs.webkit.org/show_bug.cgi?id=117090
2758
2759         Reviewed by Anders Carlsson.
2760
2761         * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
2762         (callGetInformationForPlugInWithProcessIDBlockAndDispose):
2763         Get the block from the context, invoke it with the result, and dispose of it.
2764         (WKPageGetInformationForPlugInWithProcessID):
2765         Ask the WebPageProxy and provide it with a dictionary callback that uses the
2766         above function to invoke the passed in block.
2767         * UIProcess/API/C/mac/WKPagePrivateMac.h:
2768         Add WKPageGetInformationForPlugInWithProcessID and a typedef for the callback block.
2769
2770         * UIProcess/Plugins/PluginProcessManager.h:
2771         Add ways to get the PluginProcessProxy associated with a process id or process token.
2772         * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
2773         (WebKit::PluginProcessManager::plugInProcessWithProcessID):
2774         Return the first PluginProcessProxy with the passed in process ID.
2775         (WebKit::PluginProcessManager::plugInProcessWithToken):
2776         Return the first PluginProcessProxy with the passed in process token.
2777
2778         * UIProcess/WebPageProxy.cpp:
2779         (WebKit::WebPageProxy::close):
2780         Invalidate any outstanding requests for plug-in information.
2781         * UIProcess/WebPageProxy.h:
2782         Keep track of the callbacks for the requests for plug-in information.
2783         * UIProcess/WebPageProxy.messages.in:
2784         * UIProcess/mac/WebPageProxyMac.mm:
2785         (WebKit::WebPageProxy::getInformationForPlugInWithProcessID):
2786         If there are no known plug-ins with the provided process ID, invoke the callback with a null
2787         dictionary of plug-in information.
2788         Otherwise, keep track of the callback and send a message to the web process asking for the
2789         information.
2790         (WebKit::WebPageProxy::containsPlugInCallback):
2791         If the page did not contain the plug-in, invoke the callback with a null dictionary of
2792         plug-in information.
2793         Invoke the callback with a dictionary containing the PlugInModuleInfo.
2794
2795         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2796         Return 0 for the plugInProcessToken.
2797         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
2798         Ditto.
2799         * WebProcess/Plugins/Plugin.h:
2800         Add a pure virtual method for plugInProcessToken so it can be accessed from from the Plugin
2801         on the PluginView.
2802         * WebProcess/Plugins/PluginProxy.h:
2803         Return the actual plug-in process token.
2804
2805         * WebProcess/Plugins/PluginView.h:
2806         (WebKit::PluginView::plugIn):
2807         Make it possible to get at the plug-in process token through the Plugin.
2808
2809         * WebProcess/WebPage/WebPageMac.mm:
2810         (WebKit::WebPage::containsPluginViewsWithPluginProcessToken):
2811         If there is an instance of the plug-in with that token, send a confirmation to the ui
2812         process.
2813         * WebProcess/WebPage/WebPage.h:
2814         * WebProcess/WebPage/WebPage.messages.in:
2815
2816 2013-05-31  Alexey Proskuryakov  <ap@apple.com>
2817
2818         REGRESSION (r141445): MPEG-4 videos do not play on certain hardware configurations
2819         https://bugs.webkit.org/show_bug.cgi?id=117089
2820         <rdar://problem/13839717>
2821
2822         Reviewed by Mark Rowe.
2823
2824         * Configurations/WebContentProcess.xcconfig: Statically link to a framework that
2825         uses an XPC service to work around a libxpc limitation on Lion.
2826
2827 2013-05-31  Dean Jackson  <dino@apple.com>
2828
2829         Don't create an accelerated compositing layer unless we have to for snapshotting plug-ins
2830         https://bugs.webkit.org/show_bug.cgi?id=117076
2831         <rdar://problem/14030364>
2832
2833         Reviewed by Beth Dakin and Anders Carlsson.
2834
2835         If a plug-in can support software snapshotting, then don't create an
2836         accelerated compositing layer for it while in snapshot mode. This is a
2837         better user experience -- otherwise the page/plug-in looks like it broke.
2838
2839         * WebProcess/Plugins/PluginView.cpp:
2840         (WebKit::PluginView::isAcceleratedCompositingEnabled): If we are in snapshotting mode
2841         and we are a Flash plugin (the only one that supports software snapshots at the moment)
2842         then do not create an accelerated compositing layer.
2843
2844 2013-05-30  Tim Horton  <timothy_horton@apple.com>
2845
2846         It's easy to hit ASSERT_NOT_REACHED in WKDOMNodeClass
2847         https://bugs.webkit.org/show_bug.cgi?id=117051
2848
2849         Reviewed by Anders Carlsson.
2850
2851         Re-add the ASSERT_NOT_REACHED, and return [WKDOMNode class] in the case
2852         where we don't have a specific subclass.
2853
2854         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
2855         (WebKit::WKDOMNodeClass):
2856
2857 2013-05-31  Stephanie Lewis  <slewis@apple.com>
2858
2859         Update low memory handler to use new memory pressure notifications on new OS versions.
2860         <rdar://problem/14027095>
2861
2862         Reviewed by Mark Rowe.
2863
2864         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2865         (InitWebCoreSystemInterface):
2866
2867 2013-05-30  Tim Horton  <timothy_horton@apple.com>
2868
2869         Remove ASSERT_NOT_REACHED from WKDOMNodeClass
2870         https://bugs.webkit.org/show_bug.cgi?id=117051
2871
2872         Reviewed by Anders Carlsson.
2873
2874         It's easy to fail this assertion in seemingly-legitimate cases.
2875
2876         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
2877         (WebKit::WKDOMNodeClass):
2878
2879 2013-05-29  Jeffrey Pfau  <jpfau@apple.com>
2880
2881         [Mac] Enable cache partitioning and the public suffix list on 10.8
2882         <rdar://problem/13679019>
2883
2884         Rubber-stamped by David Kilzer.
2885
2886         * Configurations/FeatureDefines.xcconfig:
2887
2888 2013-05-30  Andreas Kling  <akling@apple.com>
2889
2890         Fix double hash lookup in WebPage::determinePrimarySnapshottedPlugIn() loop.
2891         <http://webkit.org/b/117032>
2892
2893         Reviewed by Anders Carlsson.
2894
2895         * WebProcess/WebPage/WebPage.cpp:
2896         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
2897
2898 2013-05-29  Tim Horton  <timothy_horton@apple.com>
2899
2900         Expose incrementalRenderingSuppressionTimeout via WK2
2901         https://bugs.webkit.org/show_bug.cgi?id=117015
2902         <rdar://problem/13992853>
2903
2904         Reviewed by Darin Adler.
2905
2906         * Shared/WebPreferencesStore.h:
2907         * UIProcess/API/C/WKPreferencesPrivate.h:
2908         Add IncrementalRenderingSuppressionTimeout preference.
2909
2910         * UIProcess/API/C/WKPreferences.cpp:
2911         (WKPreferencesSetIncrementalRenderingSuppressionTimeout): Added.
2912         (WKPreferencesGetIncrementalRenderingSuppressionTimeout): Added.
2913
2914         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2915         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2916         (WebKit::WebFrameLoaderClient::forcePageTransitionIfNeeded): Added.
2917         Call didCompletePageTransition, which un-freezes the layer tree.
2918
2919         * WebProcess/WebPage/WebPage.cpp:
2920         (WebKit::WebPage::didCompletePageTransition):
2921         Fix some indentation.
2922
2923         (WebKit::WebPage::updatePreferences):
2924         Forward the timeout value through to WebCore.
2925
2926 2013-05-29  Simon Fraser  <simon.fraser@apple.com>
2927
2928         Fix paint-related milestones to not fire when the layer tree is frozen
2929         https://bugs.webkit.org/show_bug.cgi?id=117012
2930
2931         Reviewed by Tim Horton.
2932         
2933         Implement ChromeClient::layerTreeStateIsFrozen() to return
2934         the frozen state of the drawing area.
2935
2936         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2937         (WebKit::WebChromeClient::layerTreeStateIsFrozen):
2938         * WebProcess/WebCoreSupport/WebChromeClient.h:
2939         (WebChromeClient):
2940
2941 2013-05-29  Anders Carlsson  <andersca@apple.com>
2942
2943         WebKit should expose HSTS APIs to determine whether a host is in the HSTS cache and to reset HSTS policies
2944         https://bugs.webkit.org/show_bug.cgi?id=117010
2945         <rdar://problem/13689666>
2946
2947         Reviewed by Tim Horton.
2948
2949         * UIProcess/API/C/mac/WKContextPrivateMac.h:
2950         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
2951         * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
2952         * UIProcess/API/C/mac/WKPagePrivateMac.h:
2953         * UIProcess/WebContext.h:
2954         (WebContext):
2955         * UIProcess/mac/WebContextMac.mm:
2956         (WebKit):
2957         (WebKit::privateBrowsingSession):
2958         (WebKit::WebContext::isURLKnownHSTSHost):
2959         (WebKit::WebContext::resetHSTSHosts):
2960
2961 2013-05-29  Tim Horton  <timothy_horton@apple.com>
2962
2963         WKViews using shouldClipToVisibleRect=YES should respect prepareContentInRect: if called
2964         https://bugs.webkit.org/show_bug.cgi?id=116989
2965         <rdar://problem/14007440>
2966
2967         Reviewed by Anders Carlsson.
2968
2969         * UIProcess/API/mac/WKView.mm:
2970         (-[WKView prepareContentInRect:]):
2971         If prepareContentInRect: is called, save the rect and set a flag so we know we should use it.
2972
2973         (-[WKView _updateViewExposedRect]):
2974         Give the WebPage (and later the DrawingArea) the union of the rect handed to prepareContentInRect:
2975         and the WKView's visibleRect, if we're in that mode, so that applications that do their own scrolling
2976         can cause tiles to be created in currently offscreen views (for overdraw).
2977
2978         (-[WKView setFrameSize:]):
2979         (-[WKView _updateWindowAndViewFrames]):
2980         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
2981         (-[WKView enableFrameSizeUpdates]):
2982         (-[WKView setShouldClipToVisibleRect:]):
2983         (-[WKView forceAsyncDrawingAreaSizeUpdate:]):
2984         Use [_updateViewExposedRect].
2985
2986 2013-05-28  Oliver Hunt  <oliver@apple.com>
2987
2988         Add more accurate activity state tracking
2989         https://bugs.webkit.org/show_bug.cgi?id=116893
2990
2991         Reviewed by Gavin Barraclough.
2992
2993         This extends the logic in WebCore from a Page to Process
2994         granularity, so we will avoid lowering the child process
2995         priority if there is active content.  This also plumbs in
2996         the logic to allow plugins to report that they have done
2997         something "interesting".  Currently this is somewhat conservative
2998         but even this is sufficient to fix some stuttering issues
2999         that we've seen.
3000
3001         * Shared/ChildProcess.cpp:
3002         (WebKit::ChildProcess::ChildProcess):
3003         * Shared/ChildProcess.h:
3004         (ChildProcess):
3005         (WebKit::ChildProcess::processSuppressionEnabled):
3006         (WebKit::ChildProcess::incrementActiveTaskCount):
3007         (WebKit::ChildProcess::decrementActiveTaskCount):
3008         * Shared/mac/ChildProcessMac.mm:
3009         (WebKit):
3010         (WebKit::ChildProcess::setProcessSuppressionEnabledInternal):
3011         (WebKit::ChildProcess::setProcessSuppressionEnabled):
3012         (WebKit::ChildProcess::incrementActiveTaskCount):
3013         (WebKit::ChildProcess::decrementActiveTaskCount):
3014         (WebKit::ChildProcess::suspensionHysteresisTimerFired):
3015         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3016         (WebKit::NPRuntimeObjectMap::NPRuntimeObjectMap):
3017         (WebKit::NPRuntimeObjectMap::evaluate):
3018         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
3019         (WebCore):
3020         (NPRuntimeObjectMap):
3021         * WebProcess/Plugins/PluginView.cpp:
3022         (WebKit::PluginView::PluginView):
3023         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3024         (WebKit::WebChromeClient::incrementActivePageCount):
3025         (WebKit):
3026         (WebKit::WebChromeClient::decrementActivePageCount):
3027         * WebProcess/WebCoreSupport/WebChromeClient.h:
3028         (WebChromeClient):
3029
3030 2013-05-29  Anders Carlsson  <andersca@apple.com>
3031
3032         Return earlier if there's no session storage namespace
3033         https://bugs.webkit.org/show_bug.cgi?id=116984
3034         <rdar://problem/13976781>
3035
3036         Reviewed by Tim Horton.
3037
3038         If we can't find a session storage namespace, return before creating an entry in the m_storageAreasByConnection
3039         hash map since then we'll crash trying to remove it later.
3040
3041         * UIProcess/Storage/StorageManager.cpp:
3042         (WebKit::StorageManager::createSessionStorageMap):
3043
3044 2013-05-29  Martin Robinson  <mrobinson@igalia.com>
3045
3046         Fix more CMake GTK+ build issues after r150336
3047
3048         * CMakeLists.txt: We need to allow for setting the WebProcess output name, since
3049         WebKitGTK+ expects it to be called WebKitWebProcess.
3050         * PlatformGTK.cmake: No longer set WebProcess_EXECUTABLE_NAME as it's been replaced
3051         by WebKit2_WebProcess_OUTPUT_NAME.
3052
3053 2013-05-29  Marcelo Lira  <marcelo.lira@openbossa.org>
3054
3055         [WK2][CoordinatedGraphics][EFL] WKViewUserViewportToContents() function doesn't do what it says
3056         https://bugs.webkit.org/show_bug.cgi?id=116683
3057
3058         Reviewed by Noam Rosenthal.
3059
3060         WKViewUserViewportToContents now converts WebView coordinates to
3061         page contents coordinates, taking into account factors as content
3062         scale and scroll, and also device scale.
3063
3064         The function WKViewUserViewportToScene was added to convert WebView
3065         coordinates to the coordinates of the canvas/scene where the view
3066         is drawn, and EwkView was fixed to use it, instead of
3067         WKViewUserViewportToContents.
3068
3069         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
3070         (WKViewUserViewportToScene):
3071         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
3072         * UIProcess/API/efl/EwkView.cpp:
3073         (EwkView::createGLSurface):
3074         * UIProcess/CoordinatedGraphics/WebView.cpp:
3075         (WebKit::WebView::userViewportToContents):
3076         (WebKit):
3077         (WebKit::WebView::userViewportToScene):
3078         (WebKit::WebView::transformToScene):
3079         * UIProcess/CoordinatedGraphics/WebView.h:
3080         (WebView):
3081
3082 2013-05-29  Carlos Garcia Campos  <cgarcia@igalia.com>
3083
3084         Unreviewed. Fix make distcheck.
3085
3086         * GNUmakefile.am: Add WebCoreLayerGtk2.a to DISTCLEANFILES.
3087
3088 2013-05-29  Seokju Kwon  <seokju.kwon@gmail.com>
3089
3090         [GTK] Clean up WebKit2 GNUmakefile.am
3091         https://bugs.webkit.org/show_bug.cgi?id=116907
3092
3093         Reviewed by Martin Robinson.
3094
3095         Removed WebNotificationManagerProxy.messages.in after r150785.
3096
3097         * GNUmakefile.am:
3098
3099 2013-05-28  Alexey Proskuryakov  <ap@apple.com>
3100
3101         Freeze when loading a particular page on washingtonpost.com with NetworkProcess enabled
3102         https://bugs.webkit.org/show_bug.cgi?id=116887
3103         <rdar://problem/12965959>
3104
3105         Reviewed by Darin Adler.
3106
3107         * Shared/cf/ArgumentCodersCF.cpp:
3108         (CoreIPC::encode):
3109         (CoreIPC::decode):
3110         Fix for the bug: use good shared WebCore code to manipulate CFURLs. Also, added
3111         a FIXME about empty URLs.
3112
3113         * Shared/API/c/cf/WKURLCF.cpp: (WKURLCreateWithCFURL): Fixed to not use
3114         CFURLGetString, as that could prevent loading certain resources, like ones with
3115         curly braces in resource specifiers. We want KURL normalization, not CFURL one.
3116
3117 2013-05-28  Tim Horton  <timothy_horton@apple.com>
3118
3119         Rendering suppression extension tokens shouldn't be 0, should handle overflow
3120         https://bugs.webkit.org/show_bug.cgi?id=116886
3121         <rdar://problem/14004474>
3122
3123         Reviewed by Darin Adler.
3124
3125         Don't use invalid HashSet values as tokens, and ensure that
3126         we're not already using a token before returning it.
3127
3128         * WebProcess/WebPage/WebPage.cpp:
3129         (WebKit::WebPage::extendIncrementalRenderingSuppression):
3130
3131 2013-05-28  Lauro Neto <lauro.neto@openbossa.org>
3132
3133         [GTK] Connection issues in repeated WebProcess crash/reloads.
3134         https://bugs.webkit.org/show_bug.cgi?id=115880
3135
3136         Reviewed by Anders Carlsson.
3137
3138         When stressing the WebProcess creation/destruction, WebKitGTK can
3139         often run into socket issues like bad file descriptor errors or
3140         polling a socket indefinitely.
3141
3142         Currently WebKitGTK has three places where a socket can be
3143         closed.
3144
3145         - childFinishedFunction (in ProcessLauncherGtk.cpp)
3146         - Connection::platformInvalidate (in ConnectionUnix.cpp)
3147         - WorkQueue EventSource destruction (in WorkQueueGtk.cpp)
3148
3149         To avoid these race conditions, socket closing will be handled
3150         by the event source callback in WorkQueueGtk.cpp.
3151
3152         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
3153         (CoreIPC::Connection::platformInvalidate): Do not close the socket
3154         when the connection is invalidated, the socket event source is
3155         unregistered in this method and the socket is closed when the
3156         GSocket associated to the event source is destroyed.
3157         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
3158         (WebKit::ProcessLauncher::launchProcess): Do not monitor child
3159         process to close the connection on termination. This was needed in
3160         the past when we used DGRAM sockets, we currently use always
3161         connection oriented sockets, so that when the other end closes
3162         the connection we are notified and the connection is invalidated.
3163
3164 2013-05-28  Martin Robinson  <mrobinson@igalia.com>
3165
3166         Fix GTK+ CMake build
3167
3168         * PlatformGTK.cmake: After r150336, the name of the WebKit2
3169         library target is simply "WebKit2."
3170
3171 2013-05-28  Marcelo Lira  <marcelo.lira@openbossa.org>
3172
3173         [WK2][CoordinatedGraphics] DrawingArea's visible content area must be updated when contents size changes
3174         https://bugs.webkit.org/show_bug.cgi?id=116845
3175
3176         Reviewed by Noam Rosenthal.
3177
3178         * UIProcess/CoordinatedGraphics/WebView.cpp:
3179         (WebKit::WebView::didChangeContentsSize):
3180
3181 2013-05-28  Noam Rosenthal  <noam@webkit.org>
3182
3183         [Qt] REGRESSION(r149292): broke scrolling in Qt WK2 desktop mode
3184         https://bugs.webkit.org/show_bug.cgi?id=116597
3185
3186         ScrollingCoordinatorCoordinatedGraphics is tailored specifically for
3187         fixedLayout mode. When fixedLayout is not set, it should be turned off.
3188
3189         Reviewed by Allan Sandfeld Jensen.
3190
3191         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
3192         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
3193
3194 2013-05-28  Andreas Kling  <akling@apple.com>
3195
3196         Document::setFocusedNode() should be setFocusedElement().
3197         <http://webkit.org/b/116857>
3198
3199         Reviewed by Antti Koivisto.
3200
3201         * WebProcess/Plugins/PluginView.cpp:
3202         (WebKit::PluginView::focusPluginElement):
3203         * WebProcess/WebPage/WebPage.cpp:
3204         (WebKit::WebPage::focusedPluginViewForFrame):
3205         (WebKit::WebPage::setInitialFocus):
3206
3207 2013-05-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3208
3209         [EFL][WK2] Clean up duplicated include files.
3210         https://bugs.webkit.org/show_bug.cgi?id=116851
3211
3212         Reviewed by Christophe Dumez.
3213
3214         Remove some of duplicated include file in ewk files.
3215
3216         * UIProcess/API/efl/EwkView.h:
3217         * UIProcess/API/efl/ewk_color_picker.cpp:
3218         * UIProcess/API/efl/ewk_context_menu.cpp:
3219         * UIProcess/API/efl/ewk_security_origin_private.h:
3220
3221 2013-05-28  Ryuan Choi  <ryuan.choi@samsung.com>
3222
3223         [EFL] pc files should have harfbuzz dependency.
3224         https://bugs.webkit.org/show_bug.cgi?id=116852
3225
3226         Reviewed by Gyuyoung Kim.
3227
3228         * efl/ewebkit2.pc.in: Added harfbuzz as Required package.
3229
3230 2013-05-27  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3231
3232         [EFL][WK2] Remove unneeded WebCore namespace use in ewk
3233         https://bugs.webkit.org/show_bug.cgi?id=116707
3234
3235         Reviewed by Christophe Dumez.
3236
3237         * UIProcess/API/efl/ewk_security_origin.cpp: Remove "using namespace WebCore".
3238         * UIProcess/API/efl/ewk_text_checker.cpp: ditto.
3239
3240 2013-05-26  Jon Lee  <jonlee@apple.com>
3241
3242         [WK2] Notifications clobber each other with multiple processes
3243         https://bugs.webkit.org/show_bug.cgi?id=116428
3244         <rdar://problem/13935191>
3245
3246         Reviewed by Darin Adler.
3247
3248         With multiple processes, the notification IDs, when passed up to the UI process, can clobber
3249         each other. To fix this, we need to maintain a global map of notification IDs. This map is
3250         keyed by its own unique notification ID, and maps to a pair containing the web page ID and that
3251         web page's ID for the notification.
3252
3253         Now that we maintain groups of notifications based on the web page, we no longer send IPC messages
3254         from WebNotificationManager to WebNotificationManagerProxy; instead we send messages to the
3255         WebPageProxy. This removes the need for WebNotificationManagerProxy to be a message receiver.
3256
3257         When a page closes, all of the web notifications are cleared out. However, by the time the
3258         WebPage::close() is called, the connection between WebPage and WebPageProxy is destroyed. Since
3259         the WebPage is told to close from the UI process anyway, we clear out the notifications separately,
3260         instead of waiting for a message from the WebPage.
3261
3262         * UIProcess/Notifications/WebNotificationManagerProxy.h: Update to take into account the
3263         notification's web page. Remove inheritance of CoreIPC::MessageReceiver. Expose the original message
3264         handlers as public functions, since they will be called from WebPageProxy. Add a new map that
3265         associates a global ID with a notification ID that came from a web page.
3266             There are now two flavors of clearNotifications(). One clears out all notifications associated
3267         with a web page. This is called when the page is closed. The other clears out a subset of
3268         notifications associated with a web page. This is called when notifications associated with a sub-frame
3269         is closed.
3270         * UIProcess/Notifications/WebNotificationManagerProxy.messages.in: Removed. All messages from
3271         the web process go to WebPageProxy now.
3272
3273         * UIProcess/Notifications/WebNotificationManagerProxy.cpp: Update to take into account the
3274         notification's web page.
3275
3276         (WebKit::generateGlobalNotificationID): The manager proxy now maintains its own global notification
3277         ID generator.
3278         (WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy): The proxy is no longer a
3279         message receiver. Remove code that registers it as such.
3280
3281         (WebKit::WebNotificationManagerProxy::show): Refactor to differentiate between the notification ID
3282         that came from the web process, and the global notification ID the proxy maintains. Add the mapping
3283         from the global ID to the (web page ID, notification ID) pair.
3284         (WebKit::WebNotificationManagerProxy::cancel): Refactor to take into consideration the web page.
3285         (WebKit::WebNotificationManagerProxy::didDestroyNotification): Refactor to take into consideration
3286         the web page. Fixes a leak where we did not remove the item from the maps. This function is called
3287         from the web process, when the ScriptExecutionContext is destroyed, so we remove it from our maps
3288         before we pass the message along to the provider.
3289
3290         Helper functions that evaluate when a given notification in the map matches the desired parameters.
3291         (WebKit::pageIDsMatch): The notification is associated with the provided page.
3292         (WebKit::pageAndNotificationIDsMatch): The notification is associated with the provided page and is
3293         contained within the list of provided notifications.
3294
3295         (WebKit::WebNotificationManagerProxy::clearNotifications): Changed to only remove notifications
3296         associated with the provided web page, and could include a specific list of notifications. This latter
3297         situation occurs if notifications were associated with an iframe, and that iframe was removed.
3298         There is an O(n) walk that could be make more efficient using another hash map, but that's overhead
3299         for a map that should be small in size anyway.
3300
3301         (WebKit::WebNotificationManagerProxy::providerDidShowNotification): Refactor to take into
3302         consideration the web page.
3303         (WebKit::WebNotificationManagerProxy::providerDidClickNotification): Refactor to take into
3304         consideration the web page.
3305         (WebKit::WebNotificationManagerProxy::providerDidCloseNotifications): Now we need to comb through
3306         the list of global IDs and put them in buckets based on the notification's web pages. After that
3307         is done we can send the DidCloseNotifications() to those pages' processes. There is a possible
3308         extra optimization here where we group based on the page's process instead, to reduce the number
3309         of messages sent to processes.
3310
3311         * UIProcess/WebPageProxy.cpp:
3312         (WebKit::WebPageProxy::close): When a web page is closed, we clear the notifications associated
3313         with the page.
3314         (WebKit::WebPageProxy::cancelNotification): Forward call to WebNotificationManagerProxy.
3315         (WebKit::WebPageProxy::clearNotifications): Ditto.
3316         (WebKit::WebPageProxy::didDestroyNotification): Ditto.
3317         * UIProcess/WebPageProxy.h:
3318         * UIProcess/WebPageProxy.messages.in:
3319
3320         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
3321         * WebProcess/Notifications/WebNotificationManager.cpp:
3322         (WebKit::WebNotificationManager::cancel):
3323         (WebKit::WebNotificationManager::clearNotifications):
3324         (WebKit::WebNotificationManager::didDestroyNotification):
3325         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp: Remove extraneous include.
3326
3327         * CMakeLists.txt: Remove WebNotificationManagerProxy.messages.in and related files.
3328         * DerivedSources.pri: Ditto.
3329         * DerivedSources.make: Ditto.
3330         * GNUmakefile.list.am: Ditto.
3331         * WebKit2.xcodeproj/project.pbxproj: Ditto.
3332
3333 2013-05-27  Tim Horton  <timothy_horton@apple.com>
3334
3335         Unreviewed build fix take 2.
3336
3337         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3338
3339 2013-05-27  Tim Horton  <timothy_horton@apple.com>
3340
3341         Unreviewed build fix.
3342
3343         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3344
3345 2013-05-27  Tim Horton  <timothy_horton@apple.com>
3346
3347         PDFPlugin: Main-frame PDFPlugin Accessibility
3348         https://bugs.webkit.org/show_bug.cgi?id=116563
3349         <rdar://problem/13458534>
3350
3351         Reviewed by Sam Weinig.
3352
3353         * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h:
3354         Forward-declare a variety of accessibility methods.
3355
3356         * WebProcess/Plugins/PDF/PDFPlugin.h:
3357         Add convertFromPDFViewToScreen, boundsOnScreen, accessibilityObject, and
3358         storage for our accessibility wrapper.
3359         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3360         Add WKPDFPluginAccessibilityObject.
3361
3362         (-[WKPDFPluginAccessibilityObject accessibilityIsIgnored]):
3363         We want to be included in the accessibility tree.
3364
3365         (-[WKPDFPluginAccessibilityObject accessibilityAttributeValue:]):
3366         (-[WKPDFPluginAccessibilityObject accessibilityAttributeValue:forParameter:]):
3367         Grab values for accessibility attributes from the relevant sources
3368         (mostly from PDFLayerController).
3369
3370         (-[WKPDFPluginAccessibilityObject readingModel]): Ditto.
3371         (-[WKPDFPluginAccessibilityObject accessibilityAttributeNames]):
3372         (-[WKPDFPluginAccessibilityObject accessibilityParameterizedAttributeNames]):
3373         (-[WKPDFPluginAccessibilityObject accessibilityActionNames]):
3374         Return the set of accessibility attributes, actions, and parameterized
3375         attributes that we support.
3376
3377         (-[WKPDFPluginAccessibilityObject accessibilityIsAttributeSettable:]):
3378         (-[WKPDFPluginAccessibilityObject accessibilitySetValue:forAttribute:]):
3379         Forward some other accessibility methods to PDFLayerController.
3380
3381         (-[WKPDFPluginAccessibilityObject accessibilityFocusedUIElement]):
3382         (-[WKPDFPluginAccessibilityObject accessibilityHitTest:]):
3383         We have no children, so if a hit test makes it to us, it's ours.
3384
3385         (WebKit::PDFPlugin::PDFPlugin):
3386         Make a WKPDFPluginAccessibilityObject and hook it up.
3387         [FIXME: this could use some de-crapifying]
3388
3389         (WebKit::PDFPlugin::convertFromPluginToPDFView):
3390         Transform a point from plugin space to PDFLayerController space.
3391
3392         (WebKit::PDFPlugin::convertFromPDFViewToRootView):
3393         (WebKit::PDFPlugin::convertFromPDFViewToScreen): Added.
3394         (WebKit::PDFPlugin::boundsOnScreen):
3395         Return the PDFPlugin's frame in screen coordinates.
3396
3397         (WebKit::PDFPlugin::accessibilityObject):
3398         Return our accessibility wrapper.
3399
3400         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
3401         * WebProcess/Plugins/Plugin.h:
3402         (WebKit::Plugin::accessibilityObject):
3403         * WebProcess/Plugins/PluginView.cpp:
3404         (WebKit::PluginView::accessibilityObject):
3405         * WebProcess/Plugins/PluginView.h:
3406         Add accessibilityObject(), to acquire accessibility wrappers from plugins.
3407
3408         * WebProcess/WebPage/WebPage.h:
3409         (WebPage): Add accessibilityObjectForMainFramePlugin();
3410         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
3411         (-[WKAccessibilityWebPageObject accessibilityRootObjectWrapper]):
3412         If the main frame has a PluginDocument that has an accessibilityObject,
3413         use that one instead of the WebPage's.
3414
3415         * WebProcess/WebPage/mac/WebPageMac.mm:
3416         (WebKit::WebPage::accessibilityObjectForMainFramePlugin):
3417         Return the accessibilityObject from the main-frame PluginDocument, if
3418         there is one.
3419
3420 2013-05-27  Marcelo Lira  <marcelo.lira@openbossa.org>
3421
3422         [WK2][CoordinatedGraphics] Misuse of DrawingAreaProxy::setVisibleContentsRect() in WebView::updateViewportSize()
3423         https://bugs.webkit.org/show_bug.cgi?id=116688
3424
3425         Reviewed by Noam Rosenthal.
3426
3427         Visible contents area passed to DrawingAreaProxy::setVisibleContentsRect()
3428         must be calculated including the page scale factor and avoid crossing the
3429         boundaries of the page contents size. In other words the DrawingArea
3430         must know the actual dimensions of what it being drawn. If the
3431         DrawingArea thinks the visible rectangle is bigger than it is, the
3432         contents will be drawn pixelated and blurry.
3433
3434         * UIProcess/CoordinatedGraphics/WebView.cpp:
3435         (WebKit::WebView::didChangeContentsSize):
3436         (WebKit::WebView::updateViewportSize):
3437         (WebKit::WebView::visibleContentsSize):
3438         (WebKit):
3439         * UIProcess/CoordinatedGraphics/WebView.h:
3440         (WebKit::WebView::contentsSize):
3441         (WebView):
3442
3443 2013-05-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3444
3445         [GTK] WebKitWebView child widgets are not rendered with recent GTK+
3446         https://bugs.webkit.org/show_bug.cgi?id=116794
3447
3448         Reviewed by Xan Lopez.
3449
3450         Since rev d22fd7223c75f4720ddb982c659efb0d8d7543c4 of GTK+ expose
3451         events are not propagated to child GdkWindows anymore, and child
3452         widgets are rendered via gtk_container_propagate_draw(). Since all
3453         our children have its own GdkWindow (auth widget, inspector view
3454         and windowed plugins) we don't propagate the draw signal making
3455         them invisible with current GTK+.
3456
3457         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3458         (webkitWebViewBaseDraw): Chain up to the parent draw(), so it's
3459         propagated to the children. This shouldn't have any effect in
3460         previous versions of GTK+ because gtk_container_propagate_draw()
3461         returned early when the child widget had its own GdkWindow.
3462
3463 2013-05-27  Xan Lopez  <xlopez@igalia.com>
3464
3465         Reset all clients on WebPage close
3466         https://bugs.webkit.org/show_bug.cgi?id=112334
3467
3468         Reviewed by Anders Carlsson.
3469
3470         We do not reset the clients on WebPage::close(), so there's a
3471         small chance that someone will try to access them after that. This
3472         won't work and will generally cause runtime warnings, crashes or
3473         other issues. Reset them all to null to prevent this situation.
3474
3475         * WebProcess/WebPage/WebPage.cpp:
3476         (WebKit::WebPage::close):
3477
3478 2013-05-27  Manuel Rego Casasnovas  <rego@igalia.com>
3479
3480         [GTK] Notify WebProcess in WebKitURISchemeRequest when we fail to read the user InputStream
3481         https://bugs.webkit.org/show_bug.cgi?id=114347
3482
3483         Reviewed by Carlos Garcia Campos.
3484
3485         While processing a WebKitURISchemeRequest if there is any error reading
3486         the InputStream provided by the user (for example the stream is already
3487         closed) we have to notify the WebProcess that the request has failed.
3488
3489         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
3490         (webkitURISchemeRequestReadCallback): Get the error from
3491         g_input_stream_read_finish() and use it to call
3492         webkit_uri_scheme_request_finish_error() in order to finish the failing
3493         WebKitURISchemeRequest properly.
3494         * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
3495         (testWebContextURIScheme): Modify test to check the new situation using
3496         an already closed InputStream.
3497
3498 2013-05-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3499