5e2911cde5a98a289cab3bd4e55c5e460fffac5f
[WebKit-https.git] / Source / WebKit / mac / ChangeLog
1 2013-10-12  Darin Adler  <darin@apple.com>
2
3         Get rid of the toHTMLElement helper for casting FormAssociatedElement to HTMLElement
4         https://bugs.webkit.org/show_bug.cgi?id=122713
5
6         Reviewed by Sam Weinig.
7
8         * WebView/WebHTMLRepresentation.mm:
9         (-[WebHTMLRepresentation elementWithName:inForm:]): Use asHTMLElement.
10         (-[WebHTMLRepresentation controlsInForm:]): Ditto.
11
12 2013-10-12  Adam Roben  <aroben@webkit.org>
13
14         WebViews inside OS X screen savers have large caches, but should not
15         https://bugs.webkit.org/show_bug.cgi?id=122604
16
17         We use WebCacheModelDocumentViewer by default for apps linked against
18         modern WebKit, and WebCacheModelDocumentBrowser for apps linked
19         against legacy WebKit. ScreenSaverEngine.app doesn't link against
20         WebKit at all, and thus falls into the legacy case by accident because
21         NSVersionOfLinkTimeLibrary("WebKit") returns -1.
22
23         But WebViews inside screen savers are almost certainly not being used
24         as browsers, so this large-ish cache specified by
25         WebCacheModelDocumentBrowser is wasteful. This is likely true for all
26         apps that don't directly link against WebKit, so now we use
27         WebCacheModelDocumentViewer by default for those apps.
28
29         Reviewed by Darin Adler.
30
31         * WebView/WebPreferences.mm:
32         (cacheModelForMainBundle): Use WebCacheModelDocumentViewer by default
33         for apps that don't link against WebKit directly. Also converted to
34         use @autoreleasepool {} and early returns while I was in here.
35
36 2013-10-12  Alexey Proskuryakov  <ap@apple.com>
37
38         Add a feature define for SubtleCrypto
39         https://bugs.webkit.org/show_bug.cgi?id=122683
40
41         Reviewed by Anders Carlsson.
42
43         * Configurations/FeatureDefines.xcconfig:
44
45 2013-10-12  Darin Adler  <darin@apple.com>
46
47         Use unique_ptr instead of delete in a few places
48         https://bugs.webkit.org/show_bug.cgi?id=122639
49
50         Reviewed by Anders Carlsson.
51
52         * History/WebHistory.mm:
53         (-[WebHistoryPrivate init]): Use make_unique.
54         (-[WebHistoryPrivate dealloc]): Don't delete.
55         (-[WebHistoryPrivate finalize]): Don't delete.
56         (-[WebHistoryPrivate data]): Use get.
57
58         * WebCoreSupport/WebFrameNetworkingContext.mm:
59         (privateSession): Use NeverDestroyed here instead of a raw pointer.
60         (WebFrameNetworkingContext::ensurePrivateBrowsingSession): Use the
61         new function instead of direct global variable access.
62         (WebFrameNetworkingContext::destroyPrivateBrowsingSession): Ditto.
63         (WebFrameNetworkingContext::storageSession): Ditto.
64
65         * WebView/WebFrame.mm:
66         (-[WebFramePrivate dealloc]): Don't delete.
67         (-[WebFramePrivate finalize]): Don't delete.
68         (-[WebFrame _attachScriptDebugger]): Use make_unique.
69         (-[WebFrame _detachScriptDebugger]): Don't delete.
70         * WebView/WebFrameInternal.h: Use unique_ptr.
71
72 2013-10-11  Timothy Hatcher  <timothy@apple.com>
73
74         Remove preference support for picking the old Web Inspector.
75         https://bugs.webkit.org/show_bug.cgi?id=122655
76
77         Reviewed by Alexey Proskuryakov.
78
79         * WebCoreSupport/WebInspectorClient.mm:
80         (WebInspectorFrontendClient::localizedStringsURL):
81         (-[WebInspectorWindowController inspectorPagePath]):
82
83 2013-10-10  Simon Fraser  <simon.fraser@apple.com>
84
85         Always force layout before flushing compositing layers
86         https://bugs.webkit.org/show_bug.cgi?id=122626
87
88         Reviewed by Tim Horton.
89         
90         [m_webView _flushCompositingChanges] only actually flushes compositing
91         layers if the FrameView does not need layout (FrameView::flushCompositingStateForThisFrame()
92         returns in this case). In this situation, flushLayers() does actually try
93         to force a layout, but on some platforms it's possible for something else
94         to dirty layout before the runloop observer fires again. This can result
95         in flushLayers() never actually managing to flush, which stalls visual
96         updates.
97         
98         Fix by always calling -viewWillDraw (which updates layout) before flushing
99         layers. This now matches WebKit2 behavior.
100
101         * WebView/WebView.mm:
102         (LayerFlushController::flushLayers):
103
104 2013-10-10  Andy Estes  <aestes@apple.com>
105
106         Add SPI for telling WebKit to prefer pictograph glyphs over monochrome ones
107         https://bugs.webkit.org/show_bug.cgi?id=122608
108
109         Reviewed by Dan Bernstein.
110
111         Based on patches by Dan Bernstein.
112
113         * WebView/WebView.mm:
114         (-[WebView _setFontFallbackPrefersPictographs:]): Called
115         WebCore::Settings::setFontFallbackPrefersPictographs().
116         * WebView/WebViewPrivate.h:
117
118 2013-10-10  Mark Rowe  <mrowe@apple.com>
119
120         <rdar://problem/13341666> WebKit should always build against an SDK.
121
122         Have all projects default to building against the OS X Internal SDK for the Production
123         configuration. For the Debug and Release configurations, look for UseInternalSDK.xcconfig
124         to determine whether the OS X Internal SDK should be used. If not, use the normal OS X SDK.
125
126         Reviewed by Dan Bernstein.
127
128         * Configurations/Base.xcconfig:
129         * Configurations/DebugRelease.xcconfig:
130
131 2013-10-08  Darin Adler  <darin@apple.com>
132
133         WebNetscapePluginView should no longer use deleteAllValues
134         https://bugs.webkit.org/show_bug.cgi?id=122495
135
136         Reviewed by Anders Carlsson.
137
138         * Plugins/WebNetscapePluginView.h: Use unique_ptr for both the pointer to
139         the timers hash table, and for the values in the hash table.
140
141         * Plugins/WebNetscapePluginView.mm:
142         (-[WebNetscapePluginView stopTimers]): Rewrote loop so it works with unique_ptr.
143         (-[WebNetscapePluginView startTimers]): Ditto.
144         (-[WebNetscapePluginView fini]): Removed unneeded code to delete timers.
145         (-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]): Make
146         the timers hash table with make-unique. Fixed the loop that chooses the timer
147         ID so it won't ever try to use a deleted value, although that never happens
148         in practice. Use HashMap::add instead of using both contains and set.
149         Rearranged code so we don't need to make a raw pointer for the timer.
150         (-[WebNetscapePluginView unscheduleTimer:]): Use remove instead of take/delete,
151         since remove takes care of the deletion automatically since we are using the
152         unique_ptr class.
153
154 2013-10-08  Darin Adler  <darin@apple.com>
155
156         Eliminate use of deleteAllValues in ProxyInstance
157         https://bugs.webkit.org/show_bug.cgi?id=122499
158
159         Reviewed by Anders Carlsson.
160
161         * Plugins/Hosted/ProxyInstance.h: Use unique_ptr for map values in m_fields and m_methods.
162
163         * Plugins/Hosted/ProxyInstance.mm:
164         (WebKit::ProxyInstance::~ProxyInstance): Removed calls to deleteAllValues.
165         (WebKit::ProxyInstance::methodNamed): Use make_unique and get to deal with map entries
166         that are unique_ptr. Also fixed a bug where this would do an expensive no-op if the map
167         already had an entry with a null in it. We would call the plug-in, but eventually
168         isNewEntry would be false so we would return null.
169         (WebKit::ProxyInstance::fieldNamed): Use make_unique and get to deal with map entries
170         that are unique_ptr.
171
172 2013-10-08  Darin Adler  <darin@apple.com>
173
174         Change NetscapePluginInstanceProxy::m_replies to use unique_ptr instead of deleteAllValues
175         https://bugs.webkit.org/show_bug.cgi?id=122492
176
177         Reviewed by Andreas Kling.
178
179         * Plugins/Hosted/NetscapePluginHostManager.mm:
180         (WebKit::NetscapePluginHostManager::instantiatePlugin): Use auto so this works with
181         unique_ptr instead of auto_ptr.
182         * Plugins/Hosted/NetscapePluginHostProxy.mm:
183         (WKPCGetScriptableNPObjectReply): Use make_unique instead of using new directly.
184         (WKPCBooleanReply): Ditto.
185         (WKPCBooleanAndDataReply): Ditto.
186         (WKPCInstantiatePluginReply): Ditto.
187         * Plugins/Hosted/NetscapePluginInstanceProxy.h: Changed m_replies to map to unique_ptr
188         instead of to a raw pointer.
189         (WebKit::NetscapePluginInstanceProxy::setCurrentReply): Changed to take a unique_ptr
190         instead of a raw pointer since this takes ownership of the pointer.
191         (WebKit::NetscapePluginInstanceProxy::waitForReply): Changed to return a unique_ptr
192         instead of a auto_ptr because that's better. Use unique_ptr inside the function
193         too to avoid the need for an explicit delete.
194         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
195         (WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy): Removed the call to
196         deleteAllValues.
197         (WebKit::NetscapePluginInstanceProxy::cancelStreamLoad): Removed unneeded initialization
198         of a local variable that was already set in all code paths.
199         (WebKit::NetscapePluginInstanceProxy::wheelEvent): Use auto so this works with unique_ptr
200         instead of auto_ptr.
201         (WebKit::NetscapePluginInstanceProxy::print): Ditto.
202         (WebKit::NetscapePluginInstanceProxy::snapshot): Ditto. Ditto.
203         (WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): Changed to return
204         a unique_ptr. Also removed an unneeded assertion.
205         (WebKit::NetscapePluginInstanceProxy::createBindingsInstance): Use auto so this works
206         with unique_ptr instead of auto_ptr.
207
208         * Plugins/Hosted/ProxyInstance.h: Changed return type of waitForReply to unique_ptr.
209
210         * Plugins/Hosted/ProxyInstance.mm:
211         (WebKit::ProxyInstance::invoke): Use auto so this works with unique_ptr instead of auto_ptr.
212         (WebKit::ProxyInstance::supportsInvokeDefaultMethod): Ditto.
213         (WebKit::ProxyInstance::supportsConstruct): Ditto.
214         (WebKit::ProxyInstance::getPropertyNames): Ditto.
215         (WebKit::ProxyInstance::methodNamed): Ditto.
216         (WebKit::ProxyInstance::fieldNamed): Ditto.
217         (WebKit::ProxyInstance::fieldValue): Ditto.
218         (WebKit::ProxyInstance::setFieldValue): Ditto.
219
220 2013-10-07  Sam Weinig  <sam@webkit.org>
221
222         CTTE: Use references in and around DragController
223         https://bugs.webkit.org/show_bug.cgi?id=122427
224
225         Reviewed by Andreas Kling.
226
227         * WebCoreSupport/WebDragClient.h:
228         * WebCoreSupport/WebDragClient.mm:
229         (WebDragClient::actionMaskForDrag):
230         (WebDragClient::willPerformDragDestinationAction):
231         (WebDragClient::willPerformDragSourceAction):
232         (WebDragClient::startDrag):
233         (WebDragClient::declareAndWriteDragImage):
234         * WebView/WebFrame.mm:
235         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
236         * WebView/WebHTMLView.mm:
237         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
238         * WebView/WebView.mm:
239         (-[WebView draggingEntered:]):
240         (-[WebView draggingUpdated:]):
241         (-[WebView draggingExited:]):
242         (-[WebView performDragOperation:]):
243
244 2013-10-05  Sam Weinig  <sam@webkit.org>
245
246         CTTE: Thread references through markup.h
247         https://bugs.webkit.org/show_bug.cgi?id=122403
248
249         Reviewed by Darin Adler and Andreas Kling.
250
251         * DOM/WebDOMOperations.mm:
252         (-[DOMNode markupString]):
253         (-[DOMRange markupString]):
254         * WebView/WebFrame.mm:
255         (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]):
256         (-[WebFrame _documentFragmentWithNodesAsParagraphs:]):
257
258 2013-10-05  Sam Weinig  <sam@webkit.org>
259
260         CTTE: Pass DocumentWriter around as a reference
261         https://bugs.webkit.org/show_bug.cgi?id=122396
262
263         Reviewed by Andreas Kling.
264
265         * WebView/WebFrame.mm:
266         (-[WebFrame _canProvideDocumentSource]):
267
268 2013-10-04  Alexey Proskuryakov  <ap@apple.com>
269
270         Don't preflight spell checker when calling -setContinuousSpellCheckingEnabled repeatedly
271         https://bugs.webkit.org/show_bug.cgi?id=122329
272
273         Reviewed by Darin Adler.
274
275         * WebView/WebView.mm: (-[WebView setContinuousSpellCheckingEnabled:]): Don't do any
276         work if preference didn't change (continuousSpellCheckingEnabled is a static that
277         starts with false).
278
279 2013-10-04  Anders Carlsson  <andersca@apple.com>
280
281         FramePolicyFunction should be an std::function
282         https://bugs.webkit.org/show_bug.cgi?id=122362
283
284         Reviewed by Darin Adler.
285
286         * WebCoreSupport/WebFrameLoaderClient.h:
287         * WebCoreSupport/WebFrameLoaderClient.mm:
288         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
289         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
290         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
291         (WebFrameLoaderClient::dispatchWillSubmitForm):
292
293 2013-10-04  Mark Lam  <mark.lam@apple.com>
294
295         Change ScriptDebugServer to use DebuggerCallFrame instead of JavaScriptCallFrame.
296         https://bugs.webkit.org/show_bug.cgi?id=121969.
297
298         Reviewed by Geoffrey Garen.
299
300         1. Make JavaScriptCallFrame a thin shell around the DebuggerCallFrame.
301            DebuggerCallFrame now tracks whether it is valid instead of needing
302            JavaScriptCallFrame do it.
303         2. ScriptDebugServer now only instantiates an DebuggerCallFrame when needed
304            just before it pauses and calls back to its client, and then invalidates
305            it immediately when the callback returns. Every subsequent callback to
306            the client will use a new instance of the DebuggerCallFrame.
307         3. Similarly, ScriptDebugServer now only creates a JavaScriptCallFrame when
308            it "pauses".
309         4. DebuggerCallFrame only creates its caller DebuggerCallFrame when
310            it is needed i.e. when the client calls callerFrame(). Similarly,
311            JavaScriptCallFrame only creates its caller when it's requested.
312         5. DebuggerCallFrame's line() and column() now returns a base-zero int.
313         6. WebScriptDebugDelegate now only caches the functionName of the frame
314            instead of the entire DebuggerCallFrame because that is all that is
315            needed.
316         7. Also removed evaluateInGlobalCallFrame() which is not used anywhere.
317
318         * WebView/WebScriptDebugDelegate.mm:
319         (-[WebScriptCallFramePrivate dealloc]):
320         (-[WebScriptCallFrame _initWithGlobalObject:functionName:exceptionValue:JSC::]):
321         (-[WebScriptCallFrame functionName]):
322         (-[WebScriptCallFrame exception]):
323         * WebView/WebScriptDebugger.mm:
324         (WebScriptDebugger::exception):
325
326 2013-10-04  Anders Carlsson  <andersca@apple.com>
327
328         Remove some unneeded code from WidgetMac
329         https://bugs.webkit.org/show_bug.cgi?id=122355
330
331         Reviewed by Dan Bernstein.
332
333         Remove code to handle the visible rect changing, it's not needed anymore since we always put Netscape plug-ins into their own layers now.
334
335         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
336         * Plugins/WebBaseNetscapePluginView.h:
337         * Plugins/WebBaseNetscapePluginView.mm:
338
339 2013-10-04  Daniel Bates  <dabates@apple.com>
340
341         [iOS] Upstream disk image cache
342         https://bugs.webkit.org/show_bug.cgi?id=121985
343
344         Reviewed by Joseph Pecoraro.
345
346         * Misc/WebCache.mm:
347         (+[WebCache statistics]):
348         * WebView/WebDataSource.mm:
349         (BufferMemoryMapped): Added.
350         (-[WebDataSource _setAllowToBeMemoryMapped]): Added.
351         (-[WebDataSource setDataSourceDelegate:]): Added.
352         (-[WebDataSource dataSourceDelegate]): Added.
353         (-[WebDataSource dealloc]):
354         * WebView/WebDataSourcePrivate.h: Declared private delegate
355         protocol, WebDataSourcePrivateDelegate.
356         * WebView/WebPreferenceKeysPrivate.h:
357         * WebView/WebPreferences.mm:
358         (+[WebPreferences initialize]):
359         (-[WebPreferences diskImageCacheEnabled]): Added.
360         (-[WebPreferences setDiskImageCacheEnabled:]): Added.
361         (-[WebPreferences diskImageCacheMinimumImageSize]): Added.
362         (-[WebPreferences setDiskImageCacheMinimumImageSize:]): Added.
363         (-[WebPreferences diskImageCacheMaximumCacheSize]): Added.
364         (-[WebPreferences setDiskImageCacheMaximumCacheSize:]): Added.
365         (-[WebPreferences _diskImageCacheSavedCacheDirectory]): Added.
366         (-[WebPreferences _setDiskImageCacheSavedCacheDirectory:]): Added.
367         * WebView/WebView.mm:
368         (-[WebView _commonInitializationWithFrameName:groupName:]):
369         (-[WebView _preferencesChanged:]):
370
371 2013-10-04  Anders Carlsson  <andersca@apple.com>
372
373         Remove WebAssertions.h
374         https://bugs.webkit.org/show_bug.cgi?id=122328
375
376         Reviewed by Jessie Berlin.
377
378         * Misc/WebAssertions.h: Removed.
379
380 2013-10-03  Anders Carlsson  <andersca@apple.com>
381
382         Remove WebNSNotificationCenterExtras
383         https://bugs.webkit.org/show_bug.cgi?id=122316
384
385         Reviewed by Dan Bernstein.
386
387         Use dispatch_async to ensure that notifications are posted on the main thread.
388
389         * Misc/WebIconDatabase.mm:
390         (-[WebIconDatabase _sendNotificationForURL:]):
391         (-[WebIconDatabase _sendDidRemoveAllIconsNotification]):
392         * Misc/WebNSNotificationCenterExtras.h: Removed.
393         * Misc/WebNSNotificationCenterExtras.m: Removed.
394
395 2013-10-03  Sam Weinig  <sam@webkit.org>
396
397         Remove shouldRubberBandInDirection from the WKBundlePageUIClient
398         https://bugs.webkit.org/show_bug.cgi?id=122309
399
400         Reviewed by Andreas Kling.
401
402         * WebCoreSupport/WebChromeClient.h:
403
404 2013-10-03  Anders Carlsson  <andersca@apple.com>
405
406         Ignore deprecation warnings
407         https://bugs.webkit.org/show_bug.cgi?id=122302
408
409         Reviewed by Mark Rowe.
410
411         * Misc/WebIconDatabase.mm:
412         (-[WebIconDatabase _scaleIcon:toSize:]):
413         (webGetNSImage):
414         * Misc/WebNSImageExtras.m:
415         (-[NSImage _web_scaleToMaxSize:]):
416         (-[NSImage _web_dissolveToFraction:]):
417         * Misc/WebNSViewExtras.m:
418         (-[NSView _web_DragImageForElement:rect:event:pasteboard:source:offset:]):
419         (-[NSView _web_convertRect:toView:]):
420         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
421         (WebKit::NetscapePluginInstanceProxy::mouseEvent):
422         * Plugins/Hosted/WebTextInputWindowController.m:
423         (-[WebTextInputPanel _interpretKeyEvent:string:]):
424         * Plugins/WebBaseNetscapePluginView.mm:
425         (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]):
426         * WebCoreSupport/WebDragClient.mm:
427         (WebDragClient::startDrag):
428         * WebInspector/WebNodeHighlight.mm:
429         (-[WebNodeHighlight _computeHighlightWindowFrame]):
430         * WebView/WebFullScreenController.mm:
431         (-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]):
432         (-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]):
433         * WebView/WebHTMLView.mm:
434         (+[WebHTMLView _postFlagsChangedEvent:]):
435         (-[WebHTMLView _updateMouseoverWithFakeEvent]):
436         (-[WebHTMLView _autoscroll]):
437         (-[WebHTMLView mouseDown:]):
438         (-[WebHTMLView mouseDragged:]):
439         (-[WebHTMLView mouseUp:]):
440         (-[WebHTMLView accessibilityHitTest:]):
441         (-[WebHTMLView _executeSavedKeypressCommands]):
442         (-[WebHTMLView attachRootLayer:]):
443         (-[WebHTMLView textStorage]):
444         (-[WebHTMLView _updateSelectionForInputManager]):
445         * WebView/WebTextCompletionController.mm:
446         (-[WebTextCompletionController _buildUI]):
447         (-[WebTextCompletionController _placePopupWindow:]):
448
449 2013-10-01  Sam Weinig  <sam@webkit.org>
450
451         CTTE: DOMWrapperWorlds should be passed around by reference
452         https://bugs.webkit.org/show_bug.cgi?id=122206
453
454         Reviewed by Andreas Kling.
455
456         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
457         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
458         (WebKit::NetscapePluginInstanceProxy::getPluginElementNPObject):
459         (WebKit::NetscapePluginInstanceProxy::evaluate):
460         * WebCoreSupport/WebFrameLoaderClient.h:
461         * WebCoreSupport/WebFrameLoaderClient.mm:
462         * WebView/WebFrame.mm:
463         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
464         (-[WebFrame _globalContextForScriptWorld:]):
465         (-[WebFrame jsWrapperForNode:inScriptWorld:]):
466         * WebView/WebScriptWorld.mm:
467         (+[WebScriptWorld standardWorld]):
468         (+[WebScriptWorld findOrCreateWorld:]):
469         * WebView/WebScriptWorldInternal.h:
470         * WebView/WebView.mm:
471         (-[WebView _injectOutlookQuirksScript]):
472         (+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:injectedFrames:]):
473         (+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:injectedFrames:]):
474         (+[WebView _removeUserScriptFromGroup:world:url:]):
475         (+[WebView _removeUserStyleSheetFromGroup:world:url:]):
476         (+[WebView _removeUserScriptsFromGroup:world:]):
477         (+[WebView _removeUserStyleSheetsFromGroup:world:]):
478
479 2013-09-30  Sam Weinig  <sam@webkit.org>
480
481         Remove support for DOMFileSystem
482         https://bugs.webkit.org/show_bug.cgi?id=122137
483
484         Reviewed by Anders Carlsson.
485
486         * Configurations/FeatureDefines.xcconfig:
487
488 2013-09-30  Benjamin Poulain  <benjamin@webkit.org>
489
490         Remove the code guarded by STYLE_SCOPED
491         https://bugs.webkit.org/show_bug.cgi?id=122123
492
493         Reviewed by Anders Carlsson.
494
495         * Configurations/FeatureDefines.xcconfig:
496
497 2013-09-30  Mark Rowe  <mrowe@apple.com>
498
499         Fix the build when building against an SDK.
500
501         Xcode helpfully prepends $(SDKROOT) to the paths in FRAMEWORK_SEARCH_PATHS when generating
502         the compiler command lines. It can't know to do this for the system framework search paths
503         we add manually via OTHER_CFLAGS though, so we need to prefix them with $(SDKROOT) ourself.
504
505         * Configurations/WebKit.xcconfig:
506
507 2013-09-29  Mark Rowe  <mrowe@apple.com>
508
509         Fix the Lion build.
510
511         Ensure that C++ and Objective-C++ files build with the right compiler flags.
512
513         * Configurations/WebKit.xcconfig:
514
515 2013-09-28  Mark Rowe  <mrowe@apple.com>
516
517         Fix some failures with newer versions of clang.
518
519         Some CoreGraphics headers generate warnings under newer versions of clang. Since they're system headers the warnings would
520         usually be suppressed, but we're adding the frameworks to the non-system framework search path so they're no longer treated
521         as system headers. We address this by removing the system paths from FRAMEWORK_SEARCH_PATHS and using the -iframework compiler
522         flag in OTHER_CFLAGS to add the paths to the system framework search path. We have to set OTHER_CFLAGS at the target level
523         in order for it to coexist with the ASAN-related OTHER_CFLAGS that's set in DebugRelease.xcconfig.
524
525         Reviewed by Dan Bernstein.
526
527         * Configurations/DebugRelease.xcconfig:
528         * Configurations/WebKit.xcconfig:
529
530 2013-09-28  Mark Rowe  <mrowe@apple.com>
531
532         Take Xcode's advice and enable some extra warnings.
533
534         Reviewed by Sam Weinig.
535
536         * Configurations/Base.xcconfig:
537
538 2013-09-28  Darin Adler  <darin@apple.com>
539
540         Add Frame::mainFrame and Frame::isMainFrame
541         https://bugs.webkit.org/show_bug.cgi?id=122064
542
543         Reviewed by Andreas Kling.
544
545         * WebCoreSupport/WebFrameLoaderClient.mm:
546         (WebFrameLoaderClient::canHandleRequest):
547         (WebFrameLoaderClient::transitionToCommittedForNewPage):
548         * WebView/WebFrameView.mm:
549         (-[WebFrameView _install]):
550         Call isMainFrame.
551
552 2013-09-28  Mark Rowe  <mrowe@apple.com>
553
554         WebKit fails to build with newer versions of clang.
555
556         Reviewed by Sam Weinig.
557
558         * Carbon/HIWebView.mm: Remove an unused function.
559         * History/BinaryPropertyList.cpp: #if a constant that's only used in 64-bit.
560         * Misc/WebIconDatabase.mm: Remove two unused constants.
561         * Plugins/WebBaseNetscapePluginView.mm: Remove an unused constant.
562         * WebCoreSupport/WebEditorClient.mm: Ditto.
563
564 2013-09-27  Enrica Casucci  <enrica@apple.com>
565
566         Upstream changes to Pasteboard implementation for iOS.
567         https://bugs.webkit.org/show_bug.cgi?id=121818
568
569         Reviewed by Benjamin Poulain.
570
571         * WebCoreSupport/WebPlatformStrategies.h:
572         * WebCoreSupport/WebPlatformStrategies.mm:
573         (WebPlatformStrategies::writeToPasteboard):
574         (WebPlatformStrategies::getPasteboardItemsCount):
575         (WebPlatformStrategies::readBufferFromPasteboard):
576         (WebPlatformStrategies::readURLFromPasteboard):
577         (WebPlatformStrategies::readStringFromPasteboard):
578         (WebPlatformStrategies::changeCount):
579
580 2013-09-26  Darin Adler  <darin@apple.com>
581
582         rename KURL to URL
583         https://bugs.webkit.org/show_bug.cgi?id=16214
584
585         Reviewed by Andreas Kling.
586
587         * many files: Renamed, using script.
588
589 2013-09-06  Jer Noble  <jer.noble@apple.com>
590
591         [Mac] Implement the media controls in JavaScript.
592         https://bugs.webkit.org/show_bug.cgi?id=120895
593
594         Reviewed by Dean Jackson.
595
596         Define and turn on ENABLE_MEDIA_CONTROLS_SCRIPT.
597
598         * Configurations/FeatureDefines.xcconfig:
599
600 2013-09-27  Darin Adler  <darin@apple.com>
601
602         Add empty MainFrame class
603         https://bugs.webkit.org/show_bug.cgi?id=121770
604
605         Reviewed by Andreas Kling.
606
607         * WebCoreSupport/WebDragClient.mm:
608         * WebCoreSupport/WebInspectorClient.mm:
609         * WebCoreSupport/WebPlatformStrategies.mm:
610         * WebView/WebFrame.mm:
611         * WebView/WebHTMLView.mm:
612         * WebView/WebView.mm:
613         Include MainFrame.h instead of Frame.h as needed.
614
615 2013-09-26  Eric Carlson  <eric.carlson@apple.com>
616
617         [MediaStream] make MediaStream testable
618         https://bugs.webkit.org/show_bug.cgi?id=121967
619
620         Reviewed by Dean Jackson.
621
622         * WebCoreSupport/WebUserMediaClient.h: Added.
623         * WebCoreSupport/WebUserMediaClient.mm: Added.
624
625         * WebView/WebUIDelegatePrivate.h: Declare decidePolicyForUserMediaRequestFromOrigin:listener:
626
627         * WebView/WebView.mm:
628         (-[WebView _commonInitializationWithFrameName:groupName:]): Register WebUserMediaClient.
629         (-[WebView _setUserMediaClient:]): New.
630         (-[WebView _userMediaClient]): New.
631         * WebView/WebViewData.h:
632         * WebView/WebViewPrivate.h:
633
634 2013-09-25  Sam Weinig  <sam@webkit.org>
635
636         Pass a JSC::VM& to JS bindings object creation functions, rather than a JSC::ExecState*
637         https://bugs.webkit.org/show_bug.cgi?id=121934
638
639         Reviewed by Geoffrey Garen.
640
641         * Plugins/Hosted/ProxyInstance.mm:
642         (WebKit::ProxyInstance::newRuntimeObject):
643         * Plugins/Hosted/ProxyRuntimeObject.h:
644         (WebKit::ProxyRuntimeObject::create):
645         * Plugins/Hosted/ProxyRuntimeObject.mm:
646         (WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
647         (WebKit::ProxyRuntimeObject::finishCreation):
648
649 2013-09-25  Brady Eidson  <beidson@apple.com>
650
651         Enable the IndexedDB build on Mac, but leave the feature non-functional
652         https://bugs.webkit.org/show_bug.cgi?id=121918
653
654         Reviewed by Alexey Proskuryakov.
655
656         * Configurations/FeatureDefines.xcconfig:
657
658 2013-09-25  Commit Queue  <commit-queue@webkit.org>
659
660         Unreviewed, rolling out r156432.
661         http://trac.webkit.org/changeset/156432
662         https://bugs.webkit.org/show_bug.cgi?id=121932
663
664         some integer conversion things that need brady to fix
665         (Requested by thorton on #webkit).
666
667         * Configurations/FeatureDefines.xcconfig:
668
669 2013-09-25  Brady Eidson  <beidson@apple.com>
670
671         Enable the IndexedDB build on Mac, but leave the feature non-functional
672         https://bugs.webkit.org/show_bug.cgi?id=121918
673
674         Reviewed by Alexey Proskuryakov.
675
676         * Configurations/FeatureDefines.xcconfig:
677
678 2013-09-25  Brent Fulgham  <bfulgham@apple.com>
679
680         Refactor RuntimeEnabledFeatures as a Singleton.
681         https://bugs.webkit.org/show_bug.cgi?id=121883.
682
683         Reviewed by Jer Noble.
684
685         * WebView/WebView.mm:
686         (-[WebView _preferencesChanged:]): Use singleton accessor.
687         (-[WebView _setDashboardBehavior:to:]): Ditto.
688
689 2013-09-25  Brady Eidson  <beidson@apple.com>
690
691         FeatureDefine.xcconfig cleanup (They should all be identical).
692         https://bugs.webkit.org/show_bug.cgi?id=121921
693
694         Reviewed by Mark Rowe.
695
696         * Configurations/FeatureDefines.xcconfig:
697
698 2013-09-24  Mark Lam  <mark.lam@apple.com>
699
700         Change JSC debug hooks to pass a CallFrame* instead of a DebuggerCallFrame.
701         https://bugs.webkit.org/show_bug.cgi?id=121867.
702
703         Reviewed by Geoffrey Garen.
704
705         * WebView/WebScriptDebugDelegate.mm:
706         (-[WebScriptCallFrame _initWithGlobalObject:debuggerCallFrame:exceptionValue:JSC::]):
707         (-[WebScriptCallFrame exception]):
708         * WebView/WebScriptDebugger.h:
709         * WebView/WebScriptDebugger.mm:
710         (WebScriptDebugger::exception):
711
712 2013-09-24  Enrica Casucci  <enrica@apple.com>
713
714         Upstream changes to Pasteboard implementation for iOS.
715         https://bugs.webkit.org/show_bug.cgi?id=121818
716
717         Reviewed by Darin Adler.
718
719         * WebCoreSupport/WebPlatformStrategies.h:
720         * WebCoreSupport/WebPlatformStrategies.mm:
721         (WebPlatformStrategies::writeToPasteboard):
722
723 2013-09-24  Mark Rowe  <mrowe@apple.com>
724
725         <rdar://problem/14971518> WebKit should build against the Xcode default toolchain when targeting OS X 10.8
726
727         Reviewed by Dan Bernstein.
728
729         * Configurations/Base.xcconfig:
730
731 2013-09-21  Mark Lam  <mark.lam@apple.com>
732
733         Remove unused code in WebKit/mac's WebScriptDebugDelegate.
734         https://bugs.webkit.org/show_bug.cgi?id=121706.
735
736         Reviewed by Timothy Hatcher.
737
738         WebScriptDebugDelegate's didEnterCallFrame, willExecuteStatement,
739         and willLeaveCallFrame are not in use. Removed them and all methods
740         and fields used for supporting them.
741
742         * WebView/WebDelegateImplementationCaching.h:
743         * WebView/WebScriptDebugDelegate.h:
744         * WebView/WebScriptDebugDelegate.mm:
745         (-[WebScriptCallFramePrivate dealloc]):
746         (-[WebScriptCallFrame _initWithGlobalObject:debuggerCallFrame:]):
747         * WebView/WebScriptDebugger.h:
748         (WebScriptDebugger::globalObject):
749         (WebScriptDebugger::callEvent):
750         (WebScriptDebugger::atStatement):
751         (WebScriptDebugger::returnEvent):
752         (WebScriptDebugger::willExecuteProgram):
753         (WebScriptDebugger::didExecuteProgram):
754         (WebScriptDebugger::didReachBreakpoint):
755         * WebView/WebScriptDebugger.mm:
756         (WebScriptDebugger::WebScriptDebugger):
757         (WebScriptDebugger::exception):
758         * WebView/WebView.mm:
759         (-[WebView _cacheScriptDebugDelegateImplementations]):
760
761 2013-09-18  Anders Carlsson  <andersca@apple.com>
762
763         RefPtrHashMap should work with move only types
764         https://bugs.webkit.org/show_bug.cgi?id=121564
765
766         Reviewed by Andreas Kling.
767
768         * Plugins/Hosted/ProxyInstance.mm:
769         (WebKit::ProxyInstance::methodNamed):
770         (WebKit::ProxyInstance::fieldNamed):
771
772 2013-09-16  Enrica Casucci  <enrica@apple.com>
773
774         Remove unused function didSetSelectionTypesForPasteboard from EditorClient.
775         https://bugs.webkit.org/show_bug.cgi?id=121464
776
777         Reviewed by Darin Adler.
778
779         This method was only implemented in WebEditorClient.mm for Mac where it was
780         calling a private delegate that is no longer in use.
781
782         * DefaultDelegates/WebDefaultEditingDelegate.m:
783         * WebCoreSupport/WebEditorClient.h:
784         * WebCoreSupport/WebEditorClient.mm:
785         * WebView/WebEditingDelegatePrivate.h:
786
787 2013-09-13  Anders Carlsson  <andersca@apple.com>
788
789         Use nullptr instead of 0 in calls to HashMap::add
790         https://bugs.webkit.org/show_bug.cgi?id=121322
791
792         Reviewed by Sam Weinig.
793
794         * Plugins/Hosted/NetscapePluginHostManager.mm:
795         (WebKit::NetscapePluginHostManager::hostForPlugin):
796
797 2013-09-13  Dan Bernstein  <mitz@apple.com>
798
799         [mac WK1] Introduce WebViewWillCloseNotification
800         https://bugs.webkit.org/show_bug.cgi?id=121321
801
802         Reviewed by Sam Weinig.
803
804         * WebKit.exp: Exported WebViewWillCloseNotification.
805         * WebView/WebView.mm:
806         (-[WebView _close]): Send WebViewWillCloseNotification before closing the WebView.
807         * WebView/WebViewPrivate.h: Declared WebViewWillCloseNotification.
808
809 2013-09-13  Tim Horton  <timothy_horton@apple.com>
810
811         REGRESSION (r155615): Lots of reftests fail with single line or single pixel differences
812         https://bugs.webkit.org/show_bug.cgi?id=121245
813
814         Reviewed by Darin Adler.
815
816         Similar to https://bugs.webkit.org/show_bug.cgi?id=120963,
817         we need to manually ensure that some pieces of persistent
818         CoreGraphics state are restored after PDFKit changes them.
819
820         In this case, we bookend our restoration around the various
821         _recursiveDisplay... functions that we also use in WebHTMLView.
822
823         * WebView/WebPDFView.mm:
824         (-[WebPDFView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
825         (-[WebPDFView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
826         (-[WebPDFView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
827         (-[WebPDFView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):
828
829 2013-09-12  Anders Carlsson  <andersca@apple.com>
830
831         SharedBuffer::createNSData should return a RetainPtr<NSData>
832         https://bugs.webkit.org/show_bug.cgi?id=121237
833
834         Reviewed by Darin Adler.
835
836         Update for WebCore changes. This also fixes a leak where we'd create an NSFileWrapper from NSData but never release the data.
837
838         * WebView/WebDataSource.mm:
839         (-[WebDataSource data]):
840         * WebView/WebHTMLRepresentation.mm:
841         (-[WebHTMLRepresentation documentSource]):
842         * WebView/WebHTMLView.mm:
843         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
844         * WebView/WebResource.mm:
845         (-[WebResource encodeWithCoder:]):
846         (-[WebResource data]):
847
848 2013-09-12  Mark Lam  <mark.lam@apple.com>
849
850         Change debug hooks to pass sourceID and position info via the DebuggerCallFrame.
851         https://bugs.webkit.org/show_bug.cgi?id=121214.
852
853         Reviewed by Geoffrey Garen.
854
855         * webview/WebScriptDebugger.h:
856         * WebView/WebScriptDebugger.mm:
857         (WebScriptDebugger::WebScriptDebugger):
858         (WebScriptDebugger::callEvent):
859         (WebScriptDebugger::atStatement):
860         (WebScriptDebugger::returnEvent):
861         (WebScriptDebugger::exception):
862         (WebScriptDebugger::willExecuteProgram):
863         (WebScriptDebugger::didExecuteProgram):
864         (WebScriptDebugger::didReachBreakpoint):
865
866 2013-09-11  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
867
868         Generate more HTML type checks and casting
869         https://bugs.webkit.org/show_bug.cgi?id=121080
870
871         Reviewed by Andreas Kling.
872
873         Clean-up remained functions of HTML elements using auto-generated isFooElement(),
874         and replace toFooElement() with ELEMENT_TYPE_CASTS() macro.
875
876         Besides this patch clean-up unnecessary checks which are being supported by
877         auto-generated isFooElement().
878
879         No new tests, no behavior change.
880
881         * Plugins/WebPluginController.mm:
882         * WebCoreSupport/WebChromeClient.mm:
883         (WebChromeClient::supportsFullscreenForNode):
884         * WebView/WebView.mm:
885         (-[WebView _enterFullscreenForNode:WebCore::]):
886
887 2013-09-10  Daniel Bates  <dabates@apple.com>
888
889         [iOS] Upstream text autosizing
890         https://bugs.webkit.org/show_bug.cgi?id=121111
891
892         Reviewed by Andy Estes and Sam Weinig.
893
894         * WebView/WebFrame.mm:
895         (-[WebFrame resetTextAutosizingBeforeLayout]): Added.
896         (-[WebFrame _setVisibleSize:]): Added.
897         (-[WebFrame _setTextAutosizingWidth:]): Added.
898         * WebView/WebFramePrivate.h:
899         * WebView/WebPreferenceKeysPrivate.h:
900         * WebView/WebPreferences.mm:
901         (+[WebPreferences initialize]):
902         (-[WebPreferences _setMinimumZoomFontSize:]): Added.
903         (-[WebPreferences _minimumZoomFontSize]): Added.
904
905 2013-09-09  Dean Jackson  <dino@apple.com>
906
907         [WebGL] Allow multithreaded OpenGL contexts
908         https://bugs.webkit.org/show_bug.cgi?id=121062
909
910         Reviewed by Simon Fraser.
911
912         Expose a new preference "multithreadedWebGLEnabled".
913
914         * WebView/WebPreferenceKeysPrivate.h:
915         * WebView/WebPreferences.mm:
916         (+[WebPreferences initialize]):
917         (-[WebPreferences multithreadedWebGLEnabled]):
918         (-[WebPreferences setMultithreadedWebGLEnabled:]):
919         * WebView/WebPreferencesPrivate.h:
920         * WebView/WebView.mm:
921         (-[WebView _preferencesChanged:]):
922
923 2013-09-09  Dean Jackson  <dino@apple.com>
924
925         Enable WebGL for OS X nightlies
926         https://bugs.webkit.org/show_bug.cgi?id=121040
927
928         Reviewed by Beth Dakin.
929
930         * WebView/WebPreferences.mm:
931         (+[WebPreferences initialize]): Set WebPreference to YES.
932
933 2013-09-06  Ryosuke Niwa  <rniwa@webkit.org>
934
935         Range::ownerDocument should return Document&
936         https://bugs.webkit.org/show_bug.cgi?id=120908
937
938         Reviewed by Andreas Kling.
939
940         * WebView/WebPDFView.mm:
941         (isFrameInRange):
942
943 2013-09-05  Andreas Kling  <akling@apple.com>
944
945         ScrollView::children() should return a reference.
946         <https://webkit.org/b/120795>
947
948         Reviewed by Anders Carlsson.
949
950         * WebView/WebView.mm:
951         (-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]):
952
953 2013-09-04  Mark Rowe  <mrowe@apple.com>
954
955         <https://webkit.org/b/120707> Make WebKit's localizable strings mechanism usable under ARC
956
957         WebKit's localizable strings mechanism is also used outside of WebKit so it needs to work
958         both with and without ARC.
959
960         Reviewed by Anders Carlsson.
961
962         * Misc/WebLocalizableStrings.h: Mark the bundle member as unretained. This matches how the
963         member is used within WebLocalizableStrings.mm.
964
965 2013-09-02  Darin Adler  <darin@apple.com>
966
967         [Mac] No need for HardAutorelease, which is same as CFBridgingRelease
968         https://bugs.webkit.org/show_bug.cgi?id=120569
969
970         Reviewed by Andy Estes.
971
972         * Misc/WebNSFileManagerExtras.mm:
973         (-[NSFileManager _webkit_startupVolumeName]): Removed some unneeded locals.
974         Got rid of the pointless ref/leakRef/HardAutorelease dance, and replaced it
975         with a [[x copy] autorelease].
976
977         * Misc/WebNSURLExtras.mm:
978         (-[NSURL _web_URLWithLowercasedScheme]): Use CFBridgingRelease, and got rid
979         of unneeded type casts.
980
981         * Plugins/WebBasePluginPackage.mm:
982         (+[WebBasePluginPackage preferredLocalizationName]): Use CFBridgingRelease.
983         * WebView/WebPDFRepresentation.mm:
984         (-[WebPDFRepresentation convertPostScriptDataSourceToPDF:]): Ditto.
985
986         * WebView/WebView.mm:
987         (+[WebView _setCacheModel:]): Use CFBridgingRelease and got rid of unneeded
988         type cast.
989
990 2013-08-30  Antti Koivisto  <antti@apple.com>
991
992         Remove code behind ENABLE(DIALOG_ELEMENT)
993         https://bugs.webkit.org/show_bug.cgi?id=120467
994
995         Reviewed by Darin Adler.
996
997         * Configurations/FeatureDefines.xcconfig:
998
999 2013-08-29  Sam Weinig  <sam@webkit.org>
1000
1001         Add ENABLE gaurds for Promises
1002         https://bugs.webkit.org/show_bug.cgi?id=120488
1003
1004         Reviewed by Andreas Kling.
1005
1006         * Configurations/FeatureDefines.xcconfig:
1007
1008 2013-08-29  Joseph Pecoraro  <pecoraro@apple.com>
1009
1010         Web Inspector: Download Web Archive of Inspected Page
1011         https://bugs.webkit.org/show_bug.cgi?id=119774
1012
1013         Reviewed by Timothy Hatcher.
1014
1015         Update to support InspectorFrontendHost.save's new base64Encoded
1016         parameter. It means the incoming content is binary data, not a string.
1017
1018         * WebCoreSupport/WebInspectorClient.h:
1019         * WebCoreSupport/WebInspectorClient.mm:
1020         (WebInspectorFrontendClient::save):
1021
1022 2013-08-28  Chris Curtis  <chris_curtis@apple.com>
1023
1024         https://bugs.webkit.org/show_bug.cgi?id=119548
1025         Refactoring Exception throws.
1026
1027         Reviewed by Geoffrey Garen.
1028         
1029         Moved setting an exception into the vm, These functions changed to use the new functionality.
1030
1031         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1032         (WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
1033         * Plugins/Hosted/ProxyInstance.mm:
1034         (WebKit::ProxyInstance::invokeMethod):
1035
1036 2013-08-27  Anders Carlsson  <andersca@apple.com>
1037
1038         Fix build.
1039
1040         * Plugins/Hosted/ProxyInstance.h:
1041         * Plugins/Hosted/ProxyInstance.mm:
1042         (WebKit::ProxyInstance::methodNamed):
1043         (WebKit::ProxyInstance::fieldNamed):
1044
1045 2013-08-23  Andy Estes  <aestes@apple.com>
1046
1047         Fix issues found by the Clang Static Analyzer
1048         https://bugs.webkit.org/show_bug.cgi?id=120230
1049
1050         Reviewed by Darin Adler.
1051
1052         * Misc/WebNSFileManagerExtras.mm:
1053         (-[NSFileManager _webkit_startupVolumeName]): Used HardAutorelease()
1054         instead of WebCFAutorelease().
1055         * Misc/WebNSObjectExtras.h: Removed definition of WebCFAutorelease().
1056         * Misc/WebNSURLExtras.mm:
1057         (-[NSURL _web_URLWithLowercasedScheme]): Used HardAutorelease()
1058         instead of WebCFAutorelease().
1059         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1060         (-[WebHostedNetscapePluginView createPluginLayer]): Stop leaking
1061         CGColors (CALayer retains its backgroundColor property despite the
1062         property attributes claiming otherwise).
1063         * Plugins/WebBasePluginPackage.mm:
1064         (+[WebBasePluginPackage preferredLocalizationName]): Used
1065         HardAutorelease() instead of WebCFAutorelease().
1066         * WebView/WebDeviceOrientationProviderMock.mm:
1067         (-[WebDeviceOrientationProviderMockInternal lastOrientation]): Stop
1068         leaking WebDeviceOrientations.
1069         * WebView/WebPDFRepresentation.mm:
1070         (-[WebPDFRepresentation convertPostScriptDataSourceToPDF:]): Used
1071         HardAutorelease() instead of WebCFAutorelease().
1072         * WebView/WebView.mm:
1073         (+[WebView _setCacheModel:]): Ditto.
1074         (-[WebView _removeObjectForIdentifier:]): Ditto.
1075
1076 2013-08-26  Alexey Proskuryakov  <ap@apple.com>
1077
1078         [Mac] can-read-in-dragstart-event.html and can-read-in-copy-and-cut-events.html fail
1079         https://bugs.webkit.org/show_bug.cgi?id=113094
1080
1081         Reviewed by Darin Adler.
1082
1083         Return new pasteboard change count from all functions that change it.
1084
1085         * WebCoreSupport/WebPlatformStrategies.h:
1086         * WebCoreSupport/WebPlatformStrategies.mm:
1087         (WebPlatformStrategies::copy):
1088         (WebPlatformStrategies::changeCount):
1089         (WebPlatformStrategies::addTypes):
1090         (WebPlatformStrategies::setTypes):
1091         (WebPlatformStrategies::setBufferForType):
1092         (WebPlatformStrategies::setPathnamesForType):
1093         (WebPlatformStrategies::setStringForType):
1094
1095 2013-08-26  Andreas Kling  <akling@apple.com>
1096
1097         Unreviewed build fix.
1098
1099         * WebView/WebFrame.mm:
1100         (+[WebFrame _createMainFrameWithPage:frameName:frameView:]):
1101
1102 2013-08-26  Andreas Kling  <akling@apple.com>
1103
1104         WebCore: Let Page create the main Frame.
1105         <https://webkit.org/b/119964>
1106
1107         Reviewed by Anders Carlsson.
1108
1109         * WebCoreSupport/WebFrameLoaderClient.h:
1110         (WebFrameLoaderClient::setWebFrame):
1111
1112             Make it possible to construct a WebFrameLoaderClient with a null WebFrame*.
1113             A WebFrame* is later hooked up with a call to setWebFrame().
1114
1115         * WebView/WebFrame.mm:
1116         (+[WebFrame _createMainFrameWithPage:frameName:frameView:]):
1117
1118             Customized this method to wrap the Page::mainFrame() instead of creating a
1119             new Frame.
1120
1121         * WebView/WebView.mm:
1122         (-[WebView _commonInitializationWithFrameName:groupName:]):
1123
1124             Add a WebFrameLoaderClient to the PageClients passed to Page().
1125
1126 2013-08-25  Darin Adler  <darin@apple.com>
1127
1128         Frame should not have a documentTypeString member function
1129         https://bugs.webkit.org/show_bug.cgi?id=120262
1130
1131         Reviewed by Andreas Kling.
1132
1133         * WebView/WebFrame.mm: Removed _stringWithDocumentTypeStringAndMarkupString:
1134         internal method, which was not used anywhere in WebKit. Internal methods are
1135         only for use within WebKit, as opposed to public and private methods that can
1136         be used outside.
1137         * WebView/WebFrameInternal.h: Ditto.
1138
1139 2013-08-24  Darin Adler  <darin@apple.com>
1140
1141         Frame::tree should return a reference instead of a pointer
1142         https://bugs.webkit.org/show_bug.cgi?id=120259
1143
1144         Reviewed by Andreas Kling.
1145
1146         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1147         (WebKit::NetscapePluginInstanceProxy::performRequest):
1148         * Plugins/WebBaseNetscapePluginView.mm:
1149         (-[WebBaseNetscapePluginView resolvedURLStringForURL:target:]):
1150         * Plugins/WebNetscapePluginView.mm:
1151         (-[WebNetscapePluginView loadPluginRequest:]):
1152         * WebCoreSupport/WebFrameLoaderClient.mm:
1153         (applyAppleDictionaryApplicationQuirkNonInlinePart):
1154         (WebFrameLoaderClient::prepareForDataSourceReplacement):
1155         (WebFrameLoaderClient::createFrame):
1156         * WebView/WebFrame.mm:
1157         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
1158         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
1159         (-[WebFrame _unmarkAllBadGrammar]):
1160         (-[WebFrame _unmarkAllMisspellings]):
1161         (-[WebFrame _atMostOneFrameHasSelection]):
1162         (-[WebFrame _findFrameWithSelection]):
1163         (-[WebFrame _drawRect:contentsOnly:]):
1164         (-[WebFrame _isDescendantOfFrame:]):
1165         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
1166         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
1167         (-[WebFrame name]):
1168         (-[WebFrame findFrameNamed:]):
1169         (-[WebFrame parentFrame]):
1170         (-[WebFrame childFrames]):
1171         * WebView/WebView.mm:
1172         (-[WebView _attachScriptDebuggerToAllFrames]):
1173         (-[WebView _detachScriptDebuggerFromAllFrames]):
1174         (-[WebView _clearMainFrameName]):
1175         (-[WebView _isUsingAcceleratedCompositing]):
1176         (-[WebView _isSoftwareRenderable]):
1177         (-[WebView setHostWindow:]):
1178         (incrementFrame):
1179         Use tree(). instead of tree()->.
1180
1181 2013-08-23  Beth Dakin  <bdakin@apple.com>
1182
1183         REGRESSION (r132545): Some PDFs generated by WebKit are blank when viewed in 
1184         Adobe Reader
1185         https://bugs.webkit.org/show_bug.cgi?id=120240
1186         -and corresponding-
1187         <rdar://problem/14634453>
1188
1189         Reviewed by Anders Carlsson.
1190
1191         Hook up new WebSystemInterface API to find out if the current context is the PDF 
1192         context.
1193
1194         * WebCoreSupport/WebSystemInterface.mm:
1195         (InitWebCoreSystemInterface):
1196
1197 2013-08-20  Pratik Solanki  <psolanki@apple.com>
1198
1199         <https://webkit.org/b/120029> Document::markers() should return a reference
1200
1201         Reviewed by Andreas Kling.
1202
1203         Document::m_markers is never NULL so return a reference from Document::markers(). Also mark
1204         m_markers as const and initialize it in member initialization.
1205
1206         * WebView/WebFrame.mm:
1207         (-[WebFrame _unmarkAllBadGrammar]):
1208         (-[WebFrame _unmarkAllMisspellings]):
1209         * WebView/WebHTMLView.mm:
1210         (-[WebHTMLView unmarkAllTextMatches]):
1211         (-[WebHTMLView rectsForTextMatches]):
1212
1213 2013-08-19  Ryosuke Niwa  <rniwa@webkit.org>
1214
1215         <https://webkit.org/b/120049> Delete code for Snow Leopard
1216
1217         Reviewed by Benjamin Poulain.
1218
1219         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
1220         (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
1221         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
1222         * Misc/WebNSControlExtras.m:
1223         (-[NSControl sizeToFitAndAdjustWindowHeight]):
1224         * Misc/WebNSFileManagerExtras.mm:
1225         * WebCoreSupport/WebEditorClient.mm:
1226         (WebEditorClient::shouldEraseMarkersAfterChangeSelection):
1227         (WebEditorClient::getGuessesForWord):
1228         * WebCoreSupport/WebFrameLoaderClient.mm:
1229         (WebFrameLoaderClient::dispatchDidLayout):
1230         (WebFrameLoaderClient::provisionalLoadStarted):
1231         * WebCoreSupport/WebSystemInterface.mm:
1232         (InitWebCoreSystemInterface):
1233         * WebKitPrefix.h:
1234         * WebView/WebDynamicScrollBarsView.mm:
1235         (-[WebDynamicScrollBarsView scrollWheel:]):
1236         * WebView/WebFullScreenController.mm:
1237         (convertRectToScreen):
1238         (-[WebFullScreenController finishedEnterFullScreenAnimation:]):
1239         (-[WebFullScreenController exitFullScreen]):
1240         * WebView/WebHTMLView.mm:
1241         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
1242         (-[WebHTMLView removeMouseMovedObserver]):
1243         (-[WebHTMLView windowDidBecomeKey:]):
1244         (-[WebHTMLView windowDidResignKey:]):
1245         * WebView/WebView.mm:
1246         (-[WebView _deviceScaleFactor]):
1247
1248 2013-08-19  Ryosuke Niwa  <rniwa@webkit.org>
1249
1250         <https://webkit.org/b/120051> Remove the Mail thread workaround
1251
1252         Reviewed by Sam Weinig.
1253
1254         Remove the workaround for a very old version of Mail added in r39455.
1255
1256         * WebView/WebArchive.mm:
1257         (-[WebArchive initWithMainResource:subresources:subframeArchives:]):
1258         (-[WebArchive mainResource]):
1259         (-[WebArchive subresources]):
1260         (-[WebArchive subframeArchives]):
1261         * WebView/WebFrameView.mm:
1262         (-[WebFrameView initWithFrame:]):
1263         * WebView/WebResource.mm:
1264         (-[WebResource data]):
1265         (-[WebResource URL]):
1266         (-[WebResource MIMEType]):
1267         (-[WebResource textEncodingName]):
1268         (-[WebResource frameName]):
1269         (-[WebResource _ignoreWhenUnarchiving]):
1270         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
1271         (-[WebResource _suggestedFilename]):
1272         (-[WebResource _response]):
1273         (-[WebResource _stringValue]):
1274
1275 2013-08-19  Pratik Solanki  <psolanki@apple.com>
1276
1277         <https://webkit.org/b/119918> Frame::selection() should return a reference
1278
1279         Reviewed by Darin Adler.
1280
1281         m_selection is never NULL so return a reference from Frame::selection(). Also removed some
1282         unnecessary null checks and assert diff ts exposed as a result.
1283
1284         * Plugins/WebPluginController.mm:
1285         * WebView/WebFrame.mm:
1286         (-[WebFrame _hasSelection]):
1287         (-[WebFrame _rangeByAlteringCurrentSelection:FrameSelection::direction:granularity:]):
1288         (-[WebFrame _selectionGranularity]):
1289         (-[WebFrame _convertToNSRange:]):
1290         (-[WebFrame _convertToDOMRange:]):
1291         (-[WebFrame _insertParagraphSeparatorInQuotedContent]):
1292         (-[WebFrame _typingStyle]):
1293         (-[WebFrame _selectedNSRange]):
1294         (-[WebFrame _selectNSRange:]):
1295         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
1296         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
1297         * WebView/WebHTMLRepresentation.mm:
1298         (-[WebHTMLRepresentation currentForm]):
1299         * WebView/WebHTMLView.mm:
1300         (-[WebHTMLView readSelectionFromPasteboard:]):
1301         (-[WebHTMLView _selectedRange]):
1302         (-[WebHTMLView _hasSelection]):
1303         (-[WebHTMLView _hasSelectionOrInsertionPoint]):
1304         (-[WebHTMLView _hasInsertionPoint]):
1305         (-[WebHTMLView _isEditable]):
1306         (-[WebHTMLView jumpToSelection:]):
1307         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
1308         (-[WebHTMLView maintainsInactiveSelection]):
1309         (isTextInput):
1310         (isInPasswordField):
1311         (-[WebHTMLView centerSelectionInVisibleArea:]):
1312         (-[WebHTMLView _canSmartCopyOrDelete]):
1313         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
1314         (-[WebHTMLView _updateSelectionForInputManager]):
1315         (-[WebHTMLView selectionRect]):
1316         (-[WebHTMLView selectionTextRects]):
1317         (-[WebHTMLView selectionImageRect]):
1318         (-[WebHTMLView selectAll]):
1319         (-[WebHTMLView deselectAll]):
1320         (-[WebHTMLView selectedAttributedString]):
1321         * WebView/WebTextCompletionController.mm:
1322         (-[WebTextCompletionController doCompletion]):
1323         * WebView/WebView.mm:
1324         (-[WebView setSelectedDOMRange:affinity:]):
1325         (-[WebView selectedDOMRange]):
1326         (-[WebView selectionAffinity]):
1327         (-[WebView setEditable:]):
1328         (-[WebView _selectionIsCaret]):
1329         (-[WebView _selectionIsAll]):
1330
1331 2013-08-17  Darin Adler  <darin@apple.com>
1332
1333         <https://webkit.org/b/119941> Make Page::dragController return a reference
1334
1335         Reviewed by Andreas Kling.
1336
1337         * WebView/WebFrameView.mm:
1338         (-[WebFrameView _setDocumentView:]):
1339         * WebView/WebHTMLView.mm:
1340         (-[WebHTMLView draggingSourceOperationMaskForLocal:]):
1341         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
1342         * WebView/WebView.mm:
1343         (-[WebView _setInitiatedDrag:]):
1344         (-[WebView draggingEntered:]):
1345         (-[WebView draggingUpdated:]):
1346         (-[WebView draggingExited:]):
1347         (-[WebView performDragOperation:]):
1348         (-[WebView moveDragCaretToPoint:]):
1349         (-[WebView removeDragCaret]):
1350         Updated call sites.
1351
1352 2013-08-16  Pratik Solanki  <psolanki@apple.com>
1353
1354         <https://webkit.org/b/119852> Frame::scriptController() should return a reference
1355
1356         Reviewed by Andreas Kling.
1357
1358         m_script is never NULL so we can just return a reference. Also remove some pointless null
1359         checks as a result of doing this.
1360
1361         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1362         (WebKit::NetscapePluginInstanceProxy::cleanup):
1363         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
1364         (WebKit::NetscapePluginInstanceProxy::getPluginElementNPObject):
1365         (WebKit::NetscapePluginInstanceProxy::evaluate):
1366         (WebKit::NetscapePluginInstanceProxy::invoke):
1367         (WebKit::NetscapePluginInstanceProxy::invokeDefault):
1368         (WebKit::NetscapePluginInstanceProxy::construct):
1369         (WebKit::NetscapePluginInstanceProxy::getProperty):
1370         (WebKit::NetscapePluginInstanceProxy::setProperty):
1371         (WebKit::NetscapePluginInstanceProxy::removeProperty):
1372         (WebKit::NetscapePluginInstanceProxy::hasProperty):
1373         (WebKit::NetscapePluginInstanceProxy::hasMethod):
1374         (WebKit::NetscapePluginInstanceProxy::enumerate):
1375         (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
1376         * Plugins/WebNetscapePluginView.mm:
1377         (-[WebNetscapePluginView getVariable:value:]):
1378         (-[WebNetscapePluginView _destroyPlugin]):
1379         * Plugins/WebPluginController.mm:
1380         * WebCoreSupport/WebFrameLoaderClient.mm:
1381         * WebCoreSupport/WebInspectorClient.mm:
1382         (WebInspectorFrontendClient::save):
1383         (WebInspectorFrontendClient::append):
1384         * WebView/WebFrame.mm:
1385         (-[WebFrame _attachScriptDebugger]):
1386         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1387         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
1388         (-[WebFrame _globalContextForScriptWorld:]):
1389         (-[WebFrame jsWrapperForNode:inScriptWorld:]):
1390         (-[WebFrame windowObject]):
1391         (-[WebFrame globalContext]):
1392         (-[WebFrame javaScriptContext]):
1393         * WebView/WebScriptDebugger.mm:
1394         (WebScriptDebugger::initGlobalCallFrame):
1395         (WebScriptDebugger::callEvent):
1396         * WebView/WebView.mm:
1397         (-[WebView windowScriptObject]):
1398         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
1399
1400 2013-08-15  Anders Carlsson  <andersca@apple.com>
1401
1402         <https://webkit.org/b/119859> Frame::loader() should return a reference
1403
1404         Reviewed by Andreas Kling.
1405
1406         * Plugins/Hosted/HostedNetscapePluginStream.mm:
1407         (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
1408         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1409         (WebKit::NetscapePluginInstanceProxy::performRequest):
1410         (WebKit::NetscapePluginInstanceProxy::loadRequest):
1411         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1412         (-[WebHostedNetscapePluginView pluginView:receivedResponse:]):
1413         * Plugins/WebBaseNetscapePluginView.mm:
1414         (-[WebBaseNetscapePluginView requestWithURLCString:]):
1415         * Plugins/WebNetscapePluginStream.mm:
1416         (WebNetscapePluginStream::WebNetscapePluginStream):
1417         * Plugins/WebNetscapePluginView.mm:
1418         (-[WebNetscapePluginView loadStream]):
1419         (-[WebNetscapePluginView pluginView:receivedResponse:]):
1420         (-[WebNetscapePluginView loadPluginRequest:]):
1421         (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
1422         * Plugins/WebPluginController.mm:
1423         * WebCoreSupport/WebFrameLoaderClient.mm:
1424         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1425         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1426         (WebFrameLoaderClient::dispatchWillSubmitForm):
1427         (WebFrameLoaderClient::updateGlobalHistory):
1428         (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
1429         (WebFrameLoaderClient::restoreViewState):
1430         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1431         (WebFrameLoaderClient::createFrame):
1432         * WebCoreSupport/WebFrameNetworkingContext.mm:
1433         (WebFrameNetworkingContext::blockedError):
1434         * WebCoreSupport/WebPlatformStrategies.mm:
1435         (WebPlatformStrategies::getPluginInfo):
1436         * WebView/WebFrame.mm:
1437         (kit):
1438         (-[WebFrame _dataSource]):
1439         (-[WebFrame _canProvideDocumentSource]):
1440         (-[WebFrame _commitData:]):
1441         (-[WebFrame _firstLayoutDone]):
1442         (-[WebFrame _loadType]):
1443         (-[WebFrame _cacheabilityDictionary]):
1444         (-[WebFrame _clearOpener]):
1445         (-[WebFrame provisionalDataSource]):
1446         (-[WebFrame dataSource]):
1447         (-[WebFrame loadRequest:]):
1448         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
1449         (-[WebFrame loadArchive:]):
1450         (-[WebFrame stopLoading]):
1451         (-[WebFrame reload]):
1452         (-[WebFrame reloadFromOrigin]):
1453         * WebView/WebHTMLRepresentation.mm:
1454         (-[WebHTMLRepresentation receivedData:withDataSource:]):
1455         * WebView/WebHTMLView.mm:
1456         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
1457         * WebView/WebPDFView.mm:
1458         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
1459         * WebView/WebRenderLayer.mm:
1460         (-[WebRenderLayer initWithWebFrame:]):
1461         * WebView/WebRenderNode.mm:
1462         (-[WebRenderNode _initWithCoreFrame:]):
1463         * WebView/WebView.mm:
1464         (-[WebView _close]):
1465         (-[WebView _loadBackForwardListFromOtherView:]):
1466         (-[WebView _cachedResponseForURL:]):
1467         (-[WebView setCustomTextEncodingName:]):
1468         (-[WebView shouldClose]):
1469
1470 2013-08-15  Anders Carlsson  <andersca@apple.com>
1471
1472         <https://webkit.org/b/119854> REGRESSION (r153379): Serious drawing issues with WebViews
1473         <rdar://problem/14698870>
1474
1475         Reviewed by Simon Fraser.
1476
1477         Don't set aside subviews if they have already been set aside.
1478
1479         * WebView/WebHTMLView.mm:
1480         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):
1481
1482 2013-08-15  Eric Carlson  <eric.carlson@apple.com>
1483
1484         [Mac] Remove "legacy" media UI
1485         https://bugs.webkit.org/show_bug.cgi?id=119752
1486
1487         Reviewed by Jer Noble.
1488
1489         * WebCoreSupport/WebSystemInterface.mm:
1490         (InitWebCoreSystemInterface): Remove MediaControllerThemeAvailable.
1491
1492 2013-08-14  Tim Horton  <timothy_horton@apple.com>
1493
1494         Remotely hosted plugins don’t work in window-server-hosted WebKit1 views
1495         https://bugs.webkit.org/show_bug.cgi?id=119709
1496         <rdar://problem/14717572>
1497
1498         Reviewed by Anders Carlsson.
1499
1500         * Plugins/Hosted/NetscapePluginHostManager.h:
1501         Add hostLayersInWindowServer argument to instantiatePlugin.
1502
1503         * Plugins/Hosted/NetscapePluginHostManager.mm:
1504         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1505         Add hostLayersInWindowServer argument to instantiatePlugin, and pass it through to WebKitPluginHost.
1506
1507         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1508         (WKPCLayerHostingModeChanged):
1509         Forward the notification that the plugin host changed its layer hosting mode
1510         to the instance proxy.
1511
1512         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1513         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1514         (WebKit::NetscapePluginInstanceProxy::setShouldHostLayersInWindowServer):
1515         Ask the plugin host to re-host its layers when the layer hosting mode changes.
1516
1517         (WebKit::NetscapePluginInstanceProxy::layerHostingModeChanged):
1518         Inform the WebHostedNetscapePluginView of the new layer hosting mode
1519         when it changes. Also, store the new CAContext ID.
1520
1521         * Plugins/Hosted/WebHostedNetscapePluginView.h:
1522         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1523         (-[WebHostedNetscapePluginView windowHostsLayersInWindowServer]):
1524         Determine whether the WebView's current window uses window-server hosting for its layers.
1525
1526         (-[WebHostedNetscapePluginView createPlugin]):
1527         Drive-by spelling fix.
1528         Factor _pluginLayer initialization out into createPluginLayer.
1529         Instantiate the plugin with the appropriate layer hosting mode.
1530
1531         (-[WebHostedNetscapePluginView createPluginLayer]):
1532
1533         (-[WebHostedNetscapePluginView setHostsLayersInWindowServer:]):
1534         Create a new _pluginLayer if the layer hosting mode changes.
1535         Attach the new _pluginLayer to our parent layer.
1536
1537         (-[WebHostedNetscapePluginView updateAndSetWindow]):
1538         Inform the NetscapePluginInstanceProxy if the layer hosting mode changes,
1539         so it can inform the plugin host. We will asynchronously receive a reply
1540         with the new hosting mode and renderContextID and switch to the new CAContext,
1541         in setHostsLayersInWindowServer:.
1542
1543         * Plugins/Hosted/WebKitPluginClient.defs:
1544         * Plugins/Hosted/WebKitPluginHost.defs:
1545
1546 2013-08-14  Tim Horton  <timothy_horton@apple.com>
1547
1548         REGRESSION (r153877): Plugin scanning slows creation of WebViews
1549         https://bugs.webkit.org/show_bug.cgi?id=119665
1550         <rdar://problem/14716549>
1551
1552         Reviewed by Darin Adler.
1553
1554         * Plugins/WebPluginDatabase.h:
1555         * Plugins/WebPluginDatabase.mm:
1556         (+[WebPluginDatabase sharedDatabaseIfExists]): Added.
1557
1558         * WebCoreSupport/WebPlatformStrategies.mm:
1559         (WebPlatformStrategies::refreshPlugins):
1560         Only refresh the plugin database if it's already been loaded.
1561
1562 2013-08-14  Jer Noble  <jer.noble@apple.com>
1563
1564         Revert r154019; causes >50 tests to fail on WebKit1 bots.
1565
1566         * Plugins/Hosted/NetscapePluginHostManager.h:
1567         * Plugins/Hosted/NetscapePluginHostManager.mm:
1568         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1569         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1570         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1571         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1572         * Plugins/Hosted/WebHostedNetscapePluginView.h:
1573         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1574         (-[WebHostedNetscapePluginView setAttributeKeys:andValues:]):
1575         (-[WebHostedNetscapePluginView createPlugin]):
1576         (-[WebHostedNetscapePluginView updateAndSetWindow]):
1577         * Plugins/Hosted/WebKitPluginClient.defs:
1578         * Plugins/Hosted/WebKitPluginHost.defs:
1579
1580 2013-08-13  Filip Pizlo  <fpizlo@apple.com>
1581
1582         Foo::s_info should be Foo::info(), so that you can change how the s_info is actually linked
1583         https://bugs.webkit.org/show_bug.cgi?id=119770
1584
1585         Reviewed by Mark Hahnenberg.
1586
1587         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1588         (WebKit::getObjectID):
1589         (WebKit::NetscapePluginInstanceProxy::retainLocalObject):
1590         (WebKit::NetscapePluginInstanceProxy::releaseLocalObject):
1591         * Plugins/Hosted/ProxyInstance.mm:
1592         (WebKit::ProxyRuntimeMethod::finishCreation):
1593         (WebKit::ProxyInstance::invokeMethod):
1594         * Plugins/Hosted/ProxyRuntimeObject.h:
1595         (WebKit::ProxyRuntimeObject::createStructure):
1596         * WebView/WebView.mm:
1597         (aeDescFromJSValue):
1598
1599 2013-08-13  Anders Carlsson  <andersca@apple.com>
1600
1601         <https://webkit.org/b/119777> Get rid of two gotos
1602
1603         Reviewed by Tim Horton.
1604
1605         * WebView/WebHTMLView.mm:
1606         (-[WebHTMLView mouseDown:]):
1607         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
1608
1609 2013-08-13  Tim Horton  <timothy_horton@apple.com>
1610
1611         Remotely hosted plugins don’t work in window-server-hosted WebKit1 views
1612         https://bugs.webkit.org/show_bug.cgi?id=119709
1613         <rdar://problem/14717572>
1614
1615         Reviewed by Anders Carlsson.
1616
1617         * Plugins/Hosted/NetscapePluginHostManager.h:
1618         Add hostLayersInWindowServer argument to instantiatePlugin.
1619
1620         * Plugins/Hosted/NetscapePluginHostManager.mm:
1621         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1622         Add hostLayersInWindowServer argument to instantiatePlugin, and pass it through to WebKitPluginHost.
1623
1624         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1625         (WKPCLayerHostingModeChanged):
1626         Forward the notification that the plugin host changed its layer hosting mode
1627         to the instance proxy.
1628
1629         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1630         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1631         (WebKit::NetscapePluginInstanceProxy::setShouldHostLayersInWindowServer):
1632         Ask the plugin host to re-host its layers when the layer hosting mode changes.
1633
1634         (WebKit::NetscapePluginInstanceProxy::layerHostingModeChanged):
1635         Inform the WebHostedNetscapePluginView of the new layer hosting mode
1636         when it changes. Also, store the new CAContext ID.
1637
1638         * Plugins/Hosted/WebHostedNetscapePluginView.h:
1639         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1640         (-[WebHostedNetscapePluginView windowHostsLayersInWindowServer]):
1641         Determine whether the WebView's current window uses window-server hosting for its layers.
1642
1643         (-[WebHostedNetscapePluginView createPlugin]):
1644         Drive-by spelling fix.
1645         Factor _pluginLayer initialization out into createPluginLayer.
1646         Instantiate the plugin with the appropriate layer hosting mode.
1647
1648         (-[WebHostedNetscapePluginView createPluginLayer]):
1649
1650         (-[WebHostedNetscapePluginView setHostsLayersInWindowServer:]):
1651         Create a new _pluginLayer if the layer hosting mode changes.
1652         Attach the new _pluginLayer to our parent layer.
1653
1654         (-[WebHostedNetscapePluginView updateAndSetWindow]):
1655         Inform the NetscapePluginInstanceProxy if the layer hosting mode changes,
1656         so it can inform the plugin host. We will asynchronously receive a reply
1657         with the new hosting mode and renderContextID and switch to the new CAContext,
1658         in setHostsLayersInWindowServer:.
1659
1660         * Plugins/Hosted/WebKitPluginClient.defs:
1661         * Plugins/Hosted/WebKitPluginHost.defs:
1662
1663 2013-08-08  Tim Horton  <timothy_horton@apple.com>
1664
1665         navigator.plugins has plugins in it when plugins are disabled
1666         https://bugs.webkit.org/show_bug.cgi?id=119607
1667         <rdar://problem/14678030>
1668
1669         Reviewed by Anders Carlsson.
1670
1671         * WebCoreSupport/WebPlatformStrategies.mm:
1672         (WebPlatformStrategies::getPluginInfo):
1673         If plugins are disabled for the given page, give WebCore an empty list of
1674         plugins. If WebKit1 had any application plugins, we'd return just them
1675         instead.
1676
1677 2013-08-06  Stephanie Lewis  <slewis@apple.com>
1678
1679         Update Order Files for Safari
1680         <rdar://problem/14517392>
1681
1682         Unreviewed.
1683
1684         * WebKit.order:
1685
1686 2013-08-04  Sam Weinig  <sam@webkit.org>
1687
1688         Remove support for HTML5 MicroData
1689         https://bugs.webkit.org/show_bug.cgi?id=119480
1690
1691         Reviewed by Anders Carlsson.
1692
1693         * Configurations/FeatureDefines.xcconfig:
1694
1695 2013-07-23  David Farler  <dfarler@apple.com>
1696
1697         Provide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building with ASAN
1698         https://bugs.webkit.org/show_bug.cgi?id=117762
1699
1700         Reviewed by Mark Rowe.
1701
1702         * Configurations/DebugRelease.xcconfig:
1703         Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
1704         * Configurations/WebKit.xcconfig:
1705         Add ASAN_OTHER_LDFLAGS.
1706
1707 2013-07-26  Mark Rowe  <mrowe@apple.com>
1708
1709         Logging should be configurable using human-readable channel names rather than crazy bitmasks
1710         <http://webkit.org/b/119031>
1711
1712         Implement shared logic for initializing logging channels based on human-readable channel names in WTF,
1713         and rework the WebCore, WebKit and WebKit2 logging initialization on top of it.
1714
1715         Logging channels may now be enabled by providing a comma-separated list of channel names, with the special
1716         "all" name enabling all channels. Channel names prefixed with a leading "-" will result in the named channel
1717         being disabled. For instance, specifying "all,-history,-loading" will result in all logging channels except
1718         for history and loading being enabled.
1719
1720         For OS X developers, this also changes the name of the user defaults used to enable logging. This is done to allow
1721         the old user defaults to remain set for those people that need to switch between version of WebKit before and
1722         after this change. Where the old user default keys were WebCoreLogLevel, WebKitLogLevel and WebKit2LogLevel,
1723         the new user default keys are WebCoreLogging, WebKitLogging and WebKit2Logging.
1724
1725         For GTK developers, this changes the separator used in the WEBKIT_DEBUG environment variable to a comma for
1726         consistency with the other platforms and to enable more code sharing.
1727
1728         While doing this work I've also taken the opportunity to eliminate the need to touch multiple files when
1729         adding a new logging channel. Now only the header in the relevant project needs to be updated.
1730
1731         Reviewed by Sam Weinig.
1732
1733         * Misc/WebKitLogging.h: Declare a WEBKIT_LOG_CHANNELS macro that can be used to apply a preprocessor macro
1734         across the set of all logging channels. Use this macro to declare the logging channels.
1735         * Misc/WebKitLogging.m: Use WEBKIT_LOG_CHANNELS to define all of the channels. Pass the channels and the
1736         preference value to the new WTF function that handles the initialization.
1737         * WebView/WebPreferenceKeysPrivate.h: Remove a key that does not need to be here.
1738         * WebView/WebView.mm: Switch from WebCore's InitializeLogging.h to Logging.h.
1739
1740 2013-08-01  Ruth Fong  <ruth_fong@apple.com>
1741
1742         [Forms: color] <input type='color'> popover color well implementation
1743         <rdar://problem/14411008> and https://bugs.webkit.org/show_bug.cgi?id=119356
1744
1745         Reviewed by Benjamin Poulain.
1746
1747         * Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.
1748
1749 2013-07-31  Tim Horton  <timothy_horton@apple.com>
1750
1751         Remove didFinishLoad order quirk
1752         https://bugs.webkit.org/show_bug.cgi?id=119354
1753         <rdar://problem/11510686>
1754
1755         Reviewed by Alexey Proskuryakov.
1756
1757         * Misc/WebKitVersionChecks.h:
1758         * WebView/WebView.mm:
1759         (-[WebView _preferencesChanged:]):
1760         Don't set the now-removed preference.
1761
1762 2013-07-31  Kwang Yul Seo  <skyul@company100.net>
1763
1764         Use emptyString instead of String("")
1765         https://bugs.webkit.org/show_bug.cgi?id=119335
1766
1767         Reviewed by Darin Adler.
1768
1769         Use emptyString() instead of String("") because it is better style and
1770         faster. This is a followup to r116908, removing all occurrences of
1771         String("") from WebKit.
1772
1773         * WebCoreSupport/WebFrameLoaderClient.mm:
1774         (WebFrameLoaderClient::userAgent):
1775
1776 2013-07-31  Ruth Fong  <ruth_fong@apple.com>
1777
1778         <input type=color> Mac UI behaviour
1779         <rdar://problem/10269922> and https://bugs.webkit.org/show_bug.cgi?id=61276
1780
1781         Reviewed by Brady Eidson.
1782
1783         * Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
1784         * WebCoreSupport/WebChromeClient.h:
1785         * WebCoreSupport/WebChromeClient.mm:
1786         (WebChromeClient::createColorPicker): Added stub implementation.
1787
1788 2013-07-26  Dean Jackson  <dino@apple.com>
1789
1790         Allow new transitions to run even when controller is suspended
1791         https://bugs.webkit.org/show_bug.cgi?id=119171
1792         <rdar://problem/14511404>
1793
1794         Reviewed by Simon Fraser.
1795
1796         Expose a new SPI on WebView that triggers the (buggy) old behaviour
1797         for animations, such that any newly created animations will start even
1798         when the document is supposedly suspended. It turns out that client content was
1799         unknowingly relying on this behaviour - e.g. suspending a view, loading a
1800         bunch of new content, bringing the view on screen and then unsuspending. In this
1801         situation, we were not running CSS transitions, because the page was suspended.
1802         However, JS was still triggering them, and content was expecting a transitionEnd event.
1803
1804         * WebView/WebView.mm:
1805         (-[WebView allowsNewCSSAnimationsWhileSuspended]): Calls into AnimationController.
1806         (-[WebView setAllowsNewCSSAnimationsWhileSuspended:]): Ditto.
1807         * WebView/WebViewPrivate.h: New methods listed above.
1808
1809 2013-07-26  Anders Carlsson  <andersca@apple.com>
1810
1811         Add another method that we need to set aside subviews for
1812         https://bugs.webkit.org/show_bug.cgi?id=119157
1813         <rdar://problem/14554723>
1814
1815         Reviewed by Beth Dakin.
1816
1817         * WebView/WebHTMLView.mm:
1818         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
1819         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):
1820
1821 2013-07-25  Andreas Kling  <akling@apple.com>
1822
1823         ChromeClient::focusedNodeChanged() should be focusedElementChanged().
1824         <http://webkit.org/b/119110>
1825
1826         Reviewed by Anders Carlsson.
1827
1828         * WebCoreSupport/WebChromeClient.h:
1829         * WebCoreSupport/WebChromeClient.mm:
1830         (WebChromeClient::focusedElementChanged):
1831
1832 2013-05-05  Geoffrey Garen  <ggaren@apple.com>
1833
1834         Rolled back in r149527 with crash fixed.
1835
1836         Reviewed by Oliver Hunt.
1837
1838             Rationalized 'this' value conversion
1839             https://bugs.webkit.org/show_bug.cgi?id=115542
1840
1841 2013-07-17  Commit Queue  <commit-queue@webkit.org>
1842
1843         Unreviewed, rolling out r152701, r152703, r152739, r152754,
1844         and r152756.
1845         http://trac.webkit.org/changeset/152701
1846         http://trac.webkit.org/changeset/152703
1847         http://trac.webkit.org/changeset/152739
1848         http://trac.webkit.org/changeset/152754
1849         http://trac.webkit.org/changeset/152756
1850         https://bugs.webkit.org/show_bug.cgi?id=118821
1851
1852         this was a buggy fix and we're going to try something
1853         different (Requested by thorton on #webkit).
1854
1855         * WebCoreSupport/WebChromeClient.h:
1856         * WebCoreSupport/WebChromeClient.mm:
1857         (WebChromeClient::shouldUnavailablePluginMessageBeButton):
1858
1859 2013-07-17  Kangil Han  <kangil.han@samsung.com>
1860
1861         Use toHTMLMediaElement
1862         https://bugs.webkit.org/show_bug.cgi?id=118727
1863
1864         Reviewed by Ryosuke Niwa.
1865
1866         To avoid direct use of static_cast, this patch uses toHTMLMediaElement for code cleanup.
1867
1868         * WebView/WebView.mm:
1869         (-[WebView _enterFullscreenForNode:WebCore::]):
1870
1871 2013-07-16  Simon Fraser  <simon.fraser@apple.com>
1872
1873         Protect against the LayerFlushController being deleted inside its flushLayers() callback
1874         https://bugs.webkit.org/show_bug.cgi?id=118741
1875         <rdar://problem/14402651>
1876
1877         Reviewed by Tim Horton.
1878         
1879         It's possible (especially on iOS) for the LayerFlushController to be destroyed
1880         inside its callback, via -[WebView _close]. Protect against this by making
1881         it refcounted, and holding a ref across the callback.
1882         
1883         Due to the odd relationship in which LayerFlushController owns its LayerFlushScheduler
1884         by value, we achieve this by allowing subclasses of LayerFlushScheduler
1885         to override runLoopObserverCallback(). WebViewLayerFlushScheduler uses the
1886         override to protect the owner of the LayerFlushScheduler, which is the
1887         LayerFlushController, when the callback is firing.
1888
1889         * WebView/WebView.mm:
1890         (-[WebView _close]):
1891         * WebView/WebViewData.h:
1892         (WebViewLayerFlushScheduler::~WebViewLayerFlushScheduler):
1893         (LayerFlushController::create):
1894         * WebView/WebViewData.mm:
1895         (LayerFlushController::invalidate):
1896         (WebViewLayerFlushScheduler::WebViewLayerFlushScheduler):
1897
1898 2013-07-16  Jessie Berlin  <jberlin@apple.com>
1899
1900         Fix some NSDictionary misuse pointed out by the clang static analyzer
1901         https://bugs.webkit.org/show_bug.cgi?id=118736
1902
1903         Reviewed by Anders Carlsson.
1904
1905         * Plugins/Hosted/NetscapePluginHostManager.mm:
1906         (WebKit::NetscapePluginHostManager::spawnPluginHost):
1907         Explicitly cast the CFStringRef to an NSString *.
1908         * WebCoreSupport/WebEditorClient.mm:
1909         (WebEditorClient::documentFragmentFromAttributedString):
1910         Do not put a key with a nil value pair into the NSDictionary.
1911
1912 2013-07-15  Tim Horton  <timothy_horton@apple.com>
1913
1914         Update blocked/missing plug-in UI
1915         https://bugs.webkit.org/show_bug.cgi?id=118347
1916         <rdar://problem/14209318>
1917
1918         Reviewed by Sam Weinig.
1919         Patch by Antoine Quint, Anders Carlsson, Sam Weinig, and myself.
1920
1921         * WebCoreSupport/WebChromeClient.h:
1922         * WebCoreSupport/WebChromeClient.mm:
1923         (WebChromeClient::shouldUnavailablePluginMessageIncludeButton):
1924         Rename from shouldUnavailablePluginMessageBeButton to
1925         shouldUnavailablePluginMessageIncludeButton for accuracy.
1926
1927 2013-07-14  Jon Lee  <jonlee@apple.com>
1928
1929         [WK2] Calling Notification.requestPermission() without a callback crashes
1930         https://bugs.webkit.org/show_bug.cgi?id=118654
1931         <rdar://problem/14293352>
1932
1933         Reviewed by Alexey Proskuryakov.
1934
1935         * WebCoreSupport/WebNotificationClient.mm:
1936         (-[WebNotificationPolicyListener initWithCallback:]): The callback can be NULL, so remove the ASSERT.
1937         (-[WebNotificationPolicyListener allow]): Check for the callback before asking it to handle the event.
1938         (-[WebNotificationPolicyListener deny]): Ditto.
1939
1940 2013-07-12  Jessie Berlin  <jberlin@apple.com>
1941
1942         Remove some dead stores pointed out by the clang static analyzer.
1943         https://bugs.webkit.org/show_bug.cgi?id=118608
1944
1945         Reviewed by Anders Carlsson.
1946
1947         * Plugins/Hosted/NetscapePluginHostManager.mm:
1948         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1949         kr is never read after this point, so there is no reason to assign to it.
1950
1951         * Plugins/WebBasePluginPackage.mm:
1952         (-[WebBasePluginPackage getPluginInfoFromPLists]):
1953         The extensions array is only used in the while loop. Move the declaration to the first place
1954         it is used in the while loop. Since it is always reassigned at that location, and since it
1955         is never read after the subsequent for loop, the assignment to an array containing the empty
1956         string is never used. Remove it.
1957         Similarly, the value of the description is always overwritten before used to assign to
1958         mimeClassInfo.desc or to pluginInfo.desc, so the code to assign it to the empty string is
1959         never used. Remove it.
1960
1961         * WebView/WebTextCompletionController.mm:
1962         (-[WebTextCompletionController _placePopupWindow:]):
1963         maxWidth is never read (and never was since it was added in r7311) after it is used on the
1964         line above to set windowFrame.size.width.
1965
1966 2013-07-11  Dan Bernstein  <mitz@apple.com>
1967
1968         [mac] No API for getting the page visibility state of a WebView
1969         https://bugs.webkit.org/show_bug.cgi?id=118578
1970
1971         Reviewed by Simon Fraser.
1972
1973         * WebView/WebView.mm:
1974         (kit): Added. Converts from WebCore::PageVisibilityState to WebPageVisibilityState.
1975         (-[WebView _visibilityState]): Added.
1976         * WebView/WebViewPrivate.h: Declared -_visibilityState.
1977
1978 2013-07-11  Timothy Hatcher  <timothy@apple.com>
1979
1980         Revert r152267 and soft link WebInspectorUI.framework again.
1981
1982         https://bugs.webkit.org/show_bug.cgi?id=118544
1983
1984         Reviewed by David Kilzer.
1985
1986         * Configurations/WebKit.xcconfig:
1987         * WebCoreSupport/WebInspectorClient.mm:
1988         (useWebKitWebInspector):
1989
1990 2013-07-10  Jessie Berlin  <jberlin@apple.com>
1991
1992         Remove some dead code from WebNSURLExtras _web_hostString
1993         https://bugs.webkit.org/show_bug.cgi?id=118519
1994
1995         Reviewed by Anders Carlsson.
1996
1997         * Misc/WebNSURLExtras.mm:
1998         (-[NSURL _web_hostString]):
1999         NSString initWithData:encoding: does not throw an exception when passing nil for the data, so
2000         just delete the code that wasn't being run.
2001
2002 2013-07-09  Jeremy Noble  <jer.noble@apple.com>
2003
2004         Reviewed by Simon Fraser.
2005
2006         Remember the scroll position and restore after exiting full-screen mode.
2007         https://bugs.webkit.org/show_bug.cgi?id=61956
2008         <rdar://problem/9544461>
2009
2010         Call into the main FrameView to save the scroll position before swapping the
2011         WebView into the full-screen window, and restore the scroll position after 
2012         swapping the WebView back into the browser window.
2013
2014         * WebView/WebFullScreenController.h:
2015         * WebView/WebFullScreenController.mm:
2016         (-[WebFullScreenController windowDidEnterFullscreen:]): Save the scroll position.
2017         (-[WebFullScreenController exitFullscreen]): Restore the scroll position.
2018
2019 2013-07-04  Yongjun Zhang  <yongjun_zhang@apple.com>
2020
2021         Add a method to get unreachable URL from WebFrame.
2022         https://bugs.webkit.org/show_bug.cgi?id=118399
2023
2024         Normally we could use [[WebFrame dataSource] unreachableURL] to get the failed URL.  However, if the frame has not
2025         loaded (FrameLoader::frameHasLoaded() is false), we will get a nil dataSource and we won't be able to get unreachableURL.
2026         We can add a method to always return the unreachableURL regardless if the frame has loaded or not.
2027
2028         Reviewed by Dan Bernstein.
2029
2030         * WebView/WebFrame.mm:
2031         (-[WebFrame _unreachableURL]):
2032         * WebView/WebFramePrivate.h:
2033
2034 2013-07-03  Zalan Bujtas  <zalan@apple.com>
2035
2036         H&R Block 2010 Help window can not be reopened.
2037         https://bugs.webkit.org/show_bug.cgi?id=118342
2038
2039         Reviewed by Antti Koivisto.
2040
2041         http://trac.webkit.org/changeset/118916 changed the window.focus() behaviour so that
2042         only the opener can (re)focus() a particular window.
2043         H&R Block app relies on the relaxed window.focus() rules.
2044
2045         * WebView/WebView.mm:
2046         (shouldRestrictWindowFocus):
2047         (-[WebView _preferencesChanged:]):
2048
2049 2013-07-01  Timothy Hatcher  <timothy@apple.com>
2050
2051         Link to WebInspectorUI.framework at build time instead of soft linking.
2052
2053         https://bugs.webkit.org/show_bug.cgi?id=118261
2054
2055         Reviewed by Joseph Pecoraro.
2056
2057         * Configurations/WebKit.xcconfig:
2058         * WebCoreSupport/WebInspectorClient.mm:
2059         (useWebKitWebInspector):
2060
2061 2013-07-01  Jochen Eisinger  <jochen@chromium.org>
2062
2063         Remove support for consumable user gestures
2064         https://bugs.webkit.org/show_bug.cgi?id=118247
2065
2066         Reviewed by Geoffrey Garen.
2067
2068         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2069         (WebKit::NetscapePluginInstanceProxy::evaluate):
2070         * Plugins/WebNetscapePluginView.mm:
2071         (-[WebNetscapePluginView sendEvent:isDrawRect:]):
2072
2073 2013-06-27  Jer Noble  <jer.noble@apple.com>
2074
2075         Audio in apps which embed WebViews is corrupted.
2076         https://bugs.webkit.org/show_bug.cgi?id=118163
2077
2078         Reviewed by Maciej Stachowiak.
2079
2080         Expose the WebCore lowPowerVideoAudioBufferSizeEnabled setting to WebKit clients.
2081
2082         * WebView/WebPreferenceKeysPrivate.h:
2083         * WebView/WebPreferences.mm:
2084         (+[WebPreferences initialize]):
2085         (-[WebPreferences lowPowerVideoAudioBufferSizeEnabled]):
2086         (-[WebPreferences setLowPowerVideoAudioBufferSizeEnabled:]):
2087         * WebView/WebPreferencesPrivate.h:
2088         * WebView/WebView.mm:
2089         (-[WebView _preferencesChanged:]):
2090
2091 2013-07-01  Kangil Han  <kangil.han@samsung.com>
2092
2093         Adopt toHTMLTextAreaElement for code cleanup
2094         https://bugs.webkit.org/show_bug.cgi?id=118226
2095
2096         Reviewed by Andreas Kling.
2097
2098         To enhance readability, this patch adopts toHTMLTextAreaElement.
2099         This also helps out to reduce duplicated use of static_cast.
2100
2101         * WebCoreSupport/WebEditorClient.mm:
2102         (WebEditorClient::textDidChangeInTextArea):
2103
2104 2013-06-27  Kangil Han  <kangil.han@samsung.com>
2105
2106         Adopt is/toHTMLInputElement for code cleanup
2107         https://bugs.webkit.org/show_bug.cgi?id=118130
2108
2109         Reviewed by Antti Koivisto.
2110
2111         To enhance readability, this patch adopts is/toHTMLInputElement.
2112         This also helps out to reduce duplicated use of static_cast.
2113
2114         * DOM/WebDOMOperations.mm:
2115         (-[DOMHTMLInputElement _setAutofilled:]):
2116         * WebCoreSupport/WebChromeClient.mm:
2117         (WebChromeClient::focusedNodeChanged):
2118         * WebCoreSupport/WebEditorClient.mm:
2119         (WebEditorClient::textFieldDidBeginEditing):
2120         (WebEditorClient::textFieldDidEndEditing):
2121         (WebEditorClient::textDidChangeInTextField):
2122         (WebEditorClient::doTextFieldCommandFromEvent):
2123         (WebEditorClient::textWillBeDeletedInTextField):
2124         * WebView/WebHTMLRepresentation.mm:
2125         (inputElementFromDOMElement):
2126
2127 2013-06-26  Kangil Han  <kangil.han@samsung.com>
2128
2129         Adopt is/toHTMLAudioElement for code cleanup
2130         https://bugs.webkit.org/show_bug.cgi?id=117985
2131
2132         Reviewed by Jer Noble.
2133
2134         To enhance readibility, this patch adopts is/toHTMLAudioElement.
2135         This also helps out to reduce duplicated use of static_cast.
2136
2137         * Plugins/WebPluginController.mm:
2138
2139 2013-06-24  Simon Fraser  <simon.fraser@apple.com>
2140
2141         Move displayID stuff from Widget to Chrome
2142         https://bugs.webkit.org/show_bug.cgi?id=117944
2143
2144         Reviewed by Anders Carlsson.
2145
2146         In r151877 I polluted Widget with displayID-related stuff. This would
2147         be better on HostWindow, so move it there. This is a net code reduction,
2148         and eliminates PlatformScreenMac.h, and the NSScreen category.
2149
2150         * WebView/WebView.mm:
2151         (-[WebView doWindowDidChangeScreen]): Go via chrome().
2152
2153 2013-06-21  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2154
2155         REGRESSION (r150663): Using webkitAudioContext in Inspector makes it undefined everywhere
2156         https://bugs.webkit.org/show_bug.cgi?id=117825
2157
2158         Reviewed by Kentaro Hara.
2159
2160         Use Settings to enable Web Audio instead of RuntimeEnabledFeatures.
2161
2162         * WebView/WebView.mm:
2163         (-[WebView _preferencesChanged:]):
2164
2165 2013-06-20  Simon Fraser  <simon.fraser@apple.com>
2166
2167         FrameView needs to initialize paintsEntireContents on creation
2168         https://bugs.webkit.org/show_bug.cgi?id=117844
2169
2170         Reviewed by Anders Carlsson.
2171         
2172         In WebKit1, if the WebView is layer-backed, WebHTMLView gets a layer.
2173         In this mode, FrameView::paintsEntireContents() is true. However,
2174         we would only call setPaintsEntireContents(true) on the FrameView
2175         when the view's layer-backed status changes. FrameView also needs
2176         to fetch this state when it is initialized, because we may be creating
2177         a new FrameView for an already layer-backed WebHTMLView.
2178
2179         * WebCoreSupport/WebChromeClient.h:
2180         * WebCoreSupport/WebChromeClient.mm:
2181         (WebChromeClient::shouldPaintEntireContents):
2182
2183 2013-06-19  Benjamin Poulain  <bpoulain@apple.com>
2184
2185         Use the PlatformEvent timestamp when creating a DOM Event
2186         https://bugs.webkit.org/show_bug.cgi?id=117179
2187
2188         Reviewed by Darin Adler.
2189
2190         * WebView/WebPDFView.mm:
2191         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2192
2193 2013-06-18  Roger Fong  <roger_fong@apple.com>
2194
2195         Unreviewed. Build fix for Mac.
2196
2197         * WebCoreSupport/WebFrameNetworkingContext.h:
2198         (WebFrameNetworkingContext::create):
2199         (WebFrameNetworkingContext::WebFrameNetworkingContext):
2200
2201 2013-06-18  Roger Fong  <roger_fong@apple.com>
2202
2203         Re-implement WebFrameNetworkingContext.
2204         <rdar://problem/13174821>.
2205
2206         Reviewed by Alexey Proskuryakov.
2207
2208         * WebCoreSupport/WebFrameNetworkingContext.h: Added.
2209         (WebFrameNetworkingContext::create):
2210         (WebFrameNetworkingContext::WebFrameNetworkingContext):
2211         (WebFrameNetworkingContext::userAgent):
2212         * WebCoreSupport/WebFrameNetworkingContext.mm: Added.
2213         (WebFrameNetworkingContext::ensurePrivateBrowsingSession):
2214         (WebFrameNetworkingContext::destroyPrivateBrowsingSession):
2215         (WebFrameNetworkingContext::needsSiteSpecificQuirks):
2216         (WebFrameNetworkingContext::localFileContentSniffingEnabled):
2217         (WebFrameNetworkingContext::scheduledRunLoopPairs):
2218         (WebFrameNetworkingContext::sourceApplicationAuditData):
2219         (WebFrameNetworkingContext::blockedError):
2220         (WebFrameNetworkingContext::storageSession):
2221
2222 2013-06-18  Alexey Proskuryakov  <ap@apple.com>
2223
2224         <rdar://problem/13174821> Remove files with an incorrect license.
2225
2226         Rubber-stamped by Maciej Stachowiak.
2227
2228         This will break the build, stay tuned for a fix coming soon.
2229
2230         * WebCoreSupport/WebFrameNetworkingContext.h: Removed.
2231         * WebCoreSupport/WebFrameNetworkingContext.mm: Removed.
2232
2233 2013-06-17  Michael Brüning  <michael.bruning@digia.com>
2234
2235         [Qt] Remove Qt specific QTKIT flagged code.
2236         https://bugs.webkit.org/show_bug.cgi?id=117635
2237
2238         Reviewed by Simon Hausmann.
2239
2240         Due to disabling QTKIT for Qt in r151546, the
2241         code the flags that are not taken into account
2242         anymore and the code that has been rendered
2243         unreachable by this are removed.
2244
2245         * WebView/WebView.mm:
2246         (-[WebView _preferencesChanged:]):
2247
2248 2013-06-17  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2249
2250         Unreviewed, rolling out r151632.
2251         http://trac.webkit.org/changeset/151632
2252         https://bugs.webkit.org/show_bug.cgi?id=117585
2253
2254         Debug build error ASSERT(WTF_USE_GRAMMAR_CHECKING) for non MAC
2255         platforms
2256
2257         * WebCoreSupport/WebContextMenuClient.mm:
2258         (fixMenusReceivedFromOldClients):
2259
2260 2013-06-14  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2261
2262         Context menu grammar checking items are available when GRAMMAR_CHECKING macro is off
2263         https://bugs.webkit.org/show_bug.cgi?id=117585
2264
2265         Reviewed by Anders Carlsson.
2266
2267         Add GRAMMAR_CHECKING guard to the context menu grammar items.
2268
2269         * WebCoreSupport/WebContextMenuClient.mm:
2270         (fixMenusReceivedFromOldClients):
2271
2272 2013-06-13  Jer Noble  <jer.noble@apple.com>
2273
2274         Add support for AVFoundation-backed HTMLMediaElements in the WebVideoFullScreenController.
2275         https://bugs.webkit.org/show_bug.cgi?id=117597
2276
2277         Reviewed by Eric Carlson.
2278
2279         Allow AVFoundation to be enabled even when the FullScreen API is disabled.
2280
2281         * WebView/WebView.mm:
2282         (-[WebView _preferencesChanged:]): 
2283
2284 2013-06-12  Anders Carlsson  <andersca@apple.com>
2285
2286         Remove the notion of inactive plug-ins
2287         https://bugs.webkit.org/show_bug.cgi?id=117570
2288         <rdar://problem/13484213>
2289
2290         Reviewed by Tim Horton.
2291
2292         Remove code that deals with inactive plug-ins.
2293
2294         * WebCoreSupport/WebChromeClient.mm:
2295         (WebChromeClient::shouldUnavailablePluginMessageBeButton):
2296         (WebChromeClient::unavailablePluginButtonClicked):
2297         * WebCoreSupport/WebFrameLoaderClient.mm:
2298         (WebFrameLoaderClient::createPlugin):
2299
2300 2013-06-12  Zan Dobersek  <zdobersek@igalia.com>
2301
2302         Remove memoryInfoEnabled, quantizedMemoryInfoEnabled settings
2303         https://bugs.webkit.org/show_bug.cgi?id=117512
2304
2305         Reviewed by Darin Adler.
2306
2307         * WebKit.order: Remove the memoryInfoEnabled entry.
2308         * WebView/WebPreferenceKeysPrivate.h: Remove WebKitMemoryInfoEnabledPreferenceKey.
2309         * WebView/WebPreferences.mm: Remove memoryInfoEnabled, setMemoryInfoEnabled methods.
2310         (+[WebPreferences initialize]): Don't set the default value for the WebKitMemoryInfoEnabledPreferenceKey, the preference is being removed.
2311         * WebView/WebPreferencesPrivate.h: Remove memoryInfoEnabled, setMemoryInfoEnabled method declarations.
2312         * WebView/WebView.mm:
2313         (-[WebView _preferencesChanged:]): Remove the call to Settings::setMemoryInfoEnabled, the setting is being removed.
2314
2315 2013-06-06  Timothy Hatcher  <timothy@apple.com>
2316
2317         Update the framework bundle identifier for the Web Inspector.
2318
2319         Reviewed by Mark Rowe.
2320
2321         * WebCoreSupport/WebInspectorClient.mm:
2322         (useWebKitWebInspector):
2323         (WebInspectorFrontendClient::localizedStringsURL):
2324         (-[WebInspectorWindowController inspectorPagePath]):
2325
2326 2013-06-05  Bear Travis  <betravis@adobe.com>
2327
2328         [CSS Exclusions][CSS Shapes] Split CSS Exclusions & Shapes compile & runtime flags
2329         https://bugs.webkit.org/show_bug.cgi?id=117172
2330
2331         Reviewed by Alexandru Chiculita.
2332
2333         Adding the CSS_SHAPES compile flag.
2334
2335         * Configurations/FeatureDefines.xcconfig:
2336
2337 2013-06-01  Andreas Kling  <akling@apple.com>
2338
2339         Remove unnused WebDOMNodeOperationsInternal category.
2340         <http://webkit.org/b/117105>
2341
2342         Reviewed by Ryosuke Niwa.
2343
2344         _subresourceURLs had no clients.
2345
2346         * DOM/WebDOMOperations.mm:
2347
2348 2013-06-01  Andreas Kling  <akling@apple.com>
2349
2350         Move Node::hasID() and hasClass() to Element.
2351         <http://webkit.org/b/117104>
2352
2353         Reviewed by Ryosuke Niwa.
2354
2355         * WebView/WebRenderLayer.mm:
2356         (+[WebRenderLayer nameForLayer:]):
2357
2358 2013-05-31  Stephanie Lewis  <slewis@apple.com>
2359
2360         Update low memory handler to use new memory pressure notifications on new OS versions.
2361         <rdar://problem/14027095> 
2362
2363         Reviewed by Mark Rowe.
2364
2365         * WebCoreSupport/WebSystemInterface.mm:
2366         (InitWebCoreSystemInterface):
2367
2368 2013-05-29  Jeffrey Pfau  <jpfau@apple.com>
2369
2370         [Mac] Enable cache partitioning and the public suffix list on 10.8
2371         <rdar://problem/13679019>
2372
2373         Rubber-stamped by David Kilzer.
2374
2375         * Configurations/FeatureDefines.xcconfig:
2376
2377 2013-05-29  Joseph Pecoraro  <pecoraro@apple.com>
2378
2379         Web Inspector: get rid of obsolete InspectorFrontendHost.hiddenPanels()
2380         https://bugs.webkit.org/show_bug.cgi?id=60152
2381
2382         Reviewed by Andreas Kling.
2383
2384         * WebCoreSupport/WebInspectorClient.mm:
2385
2386 2013-05-28  Joseph Pecoraro  <pecoraro@apple.com>
2387
2388         Drag to move DOM nodes does not work
2389         https://bugs.webkit.org/show_bug.cgi?id=116865
2390
2391         Do not block drag events on the WebKit 1 Web Inspector WebView.
2392
2393         Reviewed by Timothy Hatcher.
2394
2395         * WebCoreSupport/WebInspectorClient.mm:
2396
2397 2013-05-28  Andreas Kling  <akling@apple.com>
2398
2399         Document::setFocusedNode() should be setFocusedElement().
2400         <http://webkit.org/b/116857>
2401
2402         Reviewed by Antti Koivisto.
2403
2404         * WebView/WebHTMLView.mm:
2405         (-[WebHTMLView clearFocus]):
2406         (-[WebHTMLView becomeFirstResponder]):
2407
2408 2013-05-25  Andreas Kling  <akling@apple.com>
2409
2410         Remove Document::getFocusableNodes().
2411         <http://webkit.org/b/116773>
2412
2413         Reviewed by Joseph Pecoraro.
2414
2415         Remove the private _focusableNodes API on DOMDocument, it has no clients.
2416
2417         * DOM/WebDOMOperations.mm:
2418         * DOM/WebDOMOperationsPrivate.h:
2419
2420 2013-05-25  Simon Fraser  <simon.fraser@apple.com>
2421
2422         Unprefix Page Visibility API
2423         https://bugs.webkit.org/show_bug.cgi?id=102340
2424
2425         Reviewed by Tim Horton.
2426
2427         Renaming of the "preview" state to "unloaded".
2428
2429         * WebView/WebView.mm:
2430         * WebView/WebViewPrivate.h:
2431
2432 2013-05-25  Dan Bernstein  <mitz@apple.com>
2433
2434         <rdar://problem/13924889> -webView:didPerformClientRedirectFromURL:toURL:inFrame: should be given the redirecting URL as the “from” URL
2435         https://bugs.webkit.org/show_bug.cgi?id=116733
2436
2437         Reviewed by Adele Peterson.
2438
2439         By the time the history controller calls updateGlobalHistoryRedirectLinks(), the document
2440         loader already reflects the destination URL. In order to be able to provide the immediate
2441         source URL to the delegate, we make WebFrame track a URL and provisional URL, updating them
2442         in response to FrameLoader callbacks in exactly the same way WebFrameProxy maintains its
2443         m_url and m_provisionalURL member variables.
2444
2445         * WebCoreSupport/WebFrameLoaderClient.mm:
2446         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Update
2447         provisionalURL.
2448         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): Update url.
2449         (WebFrameLoaderClient::dispatchDidPushStateWithinPage): Ditto.
2450         (WebFrameLoaderClient::dispatchDidReplaceStateWithinPage): Ditto.
2451         (WebFrameLoaderClient::dispatchDidPopStateWithinPage): Ditto.
2452         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): Update provisionalURL.
2453         (WebFrameLoaderClient::dispatchDidCommitLoad): Update URL and provisionalURL.
2454         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): Clear provisionalURL.
2455         (WebFrameLoaderClient::dispatchDidFailLoad): Added an assertion.
2456         (WebFrameLoaderClient::dispatchDidFinishLoad): Ditto.
2457         (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): Pass the last committed URL as the
2458         source, rather than clientRedirectSourceForHistory().
2459         * WebView/WebFrameInternal.h: Added url and provisionalURL ivars to WebFramePrivate.
2460
2461 2013-05-24  Anders Carlsson  <andersca@apple.com>
2462
2463         Remove using namespace std from Mac WebKit1
2464         https://bugs.webkit.org/show_bug.cgi?id=116747
2465
2466         Reviewed by Sam Weinig.
2467
2468         Use explicit std:: qualifiers instead.
2469
2470         * History/BinaryPropertyList.cpp:
2471         (IntegerArray::deletedValueSize):
2472         (BinaryPropertyListPlan::invalidObjectReference):
2473         (bytesNeeded):
2474         * History/WebHistory.mm:
2475         (-[WebHistoryPrivate orderedLastVisitedDays]):
2476         (WebHistoryWriter::WebHistoryWriter):
2477         * History/WebHistoryItem.mm:
2478         (-[WebHistoryItem initFromDictionaryRepresentation:]):
2479         * Plugins/Hosted/NetscapePluginHostManager.mm:
2480         (WebKit::NetscapePluginHostManager::instantiatePlugin):
2481         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2482         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2483         (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
2484         (WebKit::NetscapePluginInstanceProxy::wheelEvent):
2485         (WebKit::NetscapePluginInstanceProxy::print):
2486         (WebKit::NetscapePluginInstanceProxy::snapshot):
2487         (WebKit::NetscapePluginInstanceProxy::loadURL):
2488         (WebKit::NetscapePluginInstanceProxy::createBindingsInstance):
2489         * Plugins/Hosted/ProxyInstance.mm:
2490         (WebKit::ProxyInstance::invoke):
2491         (WebKit::ProxyInstance::supportsInvokeDefaultMethod):
2492         (WebKit::ProxyInstance::supportsConstruct):
2493         (WebKit::ProxyInstance::getPropertyNames):
2494         (WebKit::ProxyInstance::methodNamed):
2495         (WebKit::ProxyInstance::fieldNamed):
2496         (WebKit::ProxyInstance::fieldValue):
2497         (WebKit::ProxyInstance::setFieldValue):
2498         * Plugins/WebBasePluginPackage.mm:
2499         (-[WebBasePluginPackage supportsExtension:]):
2500         (-[WebBasePluginPackage MIMETypeForExtension:]):
2501         * Plugins/WebNetscapePluginStream.mm:
2502         (WebNetscapePluginStream::deliverData):
2503         * Plugins/WebNetscapePluginView.mm:
2504         (PluginTimer::start):
2505         (-[WebNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]):
2506         * WebCoreSupport/WebFrameLoaderClient.mm:
2507         * WebView/WebFrame.mm:
2508         * WebView/WebHTMLView.mm:
2509         (-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]):
2510         * WebView/WebTextCompletionController.mm:
2511         (-[WebTextCompletionController _placePopupWindow:]):
2512
2513 2013-05-24  Anders Carlsson  <andersca@apple.com>
2514
2515         Move history property list writer to WebKit
2516         https://bugs.webkit.org/show_bug.cgi?id=116746
2517
2518         Reviewed by Tim Horton.
2519
2520         Move WebCore history files to WebKit since they're only used by WebKit now.
2521
2522         * History/BinaryPropertyList.cpp: Renamed from Source/WebCore/platform/cf/BinaryPropertyList.cpp.
2523         * History/BinaryPropertyList.h: Renamed from Source/WebCore/platform/cf/BinaryPropertyList.h.
2524         * History/HistoryPropertyList.cpp: Renamed from Source/WebCore/history/cf/HistoryPropertyList.cpp.
2525         * History/HistoryPropertyList.h: Renamed from Source/WebCore/history/cf/HistoryPropertyList.h.
2526         * History/WebHistory.mm:
2527
2528 2013-05-24  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2529
2530         Remove custom code for webkitAudioContext global constructor getter
2531         https://bugs.webkit.org/show_bug.cgi?id=116530
2532
2533         Reviewed by Geoffrey Garen.
2534
2535         Use RuntimeEnabledFeatures instead of Settings to toggle Web Audio support.
2536
2537         * WebView/WebView.mm:
2538         (-[WebView _preferencesChanged:]):
2539
2540 2013-05-23  Anders Carlsson  <andersca@apple.com>
2541
2542         Crash in convertMainResourceLoadToDownload when downloading file by option-return
2543         https://bugs.webkit.org/show_bug.cgi?id=116451
2544
2545         Reviewed by Andreas Kling.
2546
2547         If the main resource loader is null, create a new download instead since there's no existing loader to convert.
2548
2549         * WebCoreSupport/WebFrameLoaderClient.mm:
2550         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
2551
2552 2013-05-22  Simon Fraser  <simon.fraser@apple.com>
2553
2554         Fix issues with focus rings on search fields
2555         https://bugs.webkit.org/show_bug.cgi?id=116591
2556
2557         Reviewed by Darin Adler.
2558         
2559         In WebKit1, focus rings didn't render correctly on some OSes until
2560         some other control drew a focus ring, which changes internal AppKit state
2561         on the focused view. Fix by overriding an internal AppKit method to always
2562         disable AppKit's "automatic" focus ring drawing.
2563
2564         * WebView/WebHTMLView.mm:
2565         (-[WebHTMLView _automaticFocusRingDisabled]):
2566
2567 2013-05-20  David Kilzer  <ddkilzer@apple.com>
2568
2569         Synchronize FeatureDefines.xcconfig
2570
2571         * Configurations/FeatureDefines.xcconfig: Add a newline to the
2572         end of the file.
2573
2574 2013-05-19  Anders Carlsson  <andersca@apple.com>
2575
2576         Remove link prerendering code
2577         https://bugs.webkit.org/show_bug.cgi?id=116415
2578
2579         Reviewed by Darin Adler.
2580
2581         This code was only used by Chromium and is dead now.
2582
2583         * Configurations/FeatureDefines.xcconfig:
2584
2585 2013-05-19  Anders Carlsson  <andersca@apple.com>
2586
2587         Remove ChromeClient::webView()
2588         https://bugs.webkit.org/show_bug.cgi?id=116054
2589
2590         Reviewed by Darin Adler.
2591
2592         This blatantly horrible layer violation was only used to know if a ChromeClient is an empty
2593         client or not. We already have a (slightly less horrible) way to do that.
2594
2595         * WebCoreSupport/WebChromeClient.h:
2596         (WebChromeClient):
2597
2598 2013-05-17  Anders Carlsson  <andersca@apple.com>
2599
2600         Accessing null function pointers is bad.
2601
2602         * WebCoreSupport/WebFrameLoaderClient.mm:
2603
2604 2013-05-17  Anders Carlsson  <andersca@apple.com>
2605
2606         Make kit(Frame*) more robust
2607         https://bugs.webkit.org/show_bug.cgi?id=116324
2608
2609         Reviewed by Darin Adler.
2610
2611         Check that the frame loader's client isn't the EmptyFrameLoaderClient (or a subclass thereof)
2612         before casting to WebFrameLoaderClient.
2613
2614         * WebView/WebFrame.mm:
2615         (kit):
2616
2617 2013-05-17  Anders Carlsson  <andersca@apple.com>
2618
2619         Move the policy function to WebFramePolicyListener
2620         https://bugs.webkit.org/show_bug.cgi?id=116323
2621
2622         Reviewed by Darin Adler.
2623
2624         There's no need for the WebFrameLoaaderClient to hold on to the policy function,
2625         so move it to WebFramePolicyListener. This gets rid of another WebFrameLoaderClient cast.
2626
2627         * WebCoreSupport/WebFrameLoaderClient.mm:
2628         (WebFrameLoaderClient::setUpPolicyListener):
2629         Pass the policy function when creating the WebFramePolicyListener object.
2630
2631 2013-05-17  Anders Carlsson  <andersca@apple.com>
2632
2633         WebFramePolicyListener should keep its Frame in a RefPtr
2634         https://bugs.webkit.org/show_bug.cgi?id=116322
2635
2636         Reviewed by Darin Adler.
2637
2638         * WebCoreSupport/WebFrameLoaderClient.mm:
2639         (-[WebFramePolicyListener initWithWebCoreFrame:]):
2640         No need to ref the frame, the RefPtr does that for us.
2641
2642         (-[WebFramePolicyListener invalidate]):
2643         Just set the frame to null.
2644
2645         (-[WebFramePolicyListener dealloc]):
2646         Remove call to deref, that's done automatically now.
2647
2648         (-[WebFramePolicyListener finalize]):
2649         Remove this method. (We could have kept it just for the assertion but I didn't think that was necessary).
2650
2651         (-[WebFramePolicyListener receivedPolicyDecision:):
2652         Use release() to transfer ownership.
2653
2654 2013-05-17  Anders Carlsson  <andersca@apple.com>
2655
2656         Reduce number of WebFrameLoaderClient static casts in WebKit
2657         https://bugs.webkit.org/show_bug.cgi?id=116320
2658
2659         Reviewed by Antti Koivisto.
2660
2661         We already have a function to return a WebFrame from a WebCore::Frame, use it.
2662
2663         * DOM/WebDOMOperations.mm:
2664         (WebFrameFilter::shouldIncludeSubframe):
2665         * WebView/WebDataSource.mm:
2666         (-[WebDataSource webFrame]):
2667
2668 2013-05-16  Commit Queue  <commit-queue@webkit.org>
2669
2670         Unreviewed, rolling out r150034.
2671         http://trac.webkit.org/changeset/150034
2672         https://bugs.webkit.org/show_bug.cgi?id=116257
2673
2674         This work around doesn't work due to another bug NSUndoManager
2675         has (Requested by rniwa on #webkit).
2676
2677         * WebCoreSupport/WebEditorClient.mm:
2678         (WebEditorClient::registerUndoOrRedoStep):
2679
2680 2013-05-16  Tim Horton  <timothy_horton@apple.com>
2681
2682         PDFPlugins don't load when plugins are disabled, but they should
2683         https://bugs.webkit.org/show_bug.cgi?id=75790
2684         <rdar://problem/11650197>
2685
2686         Reviewed by Anders Carlsson.
2687
2688         * Plugins/WebBasePluginPackage.mm:
2689         (-[WebBasePluginPackage getPluginInfoFromPLists]):
2690         * Plugins/WebNetscapePluginPackage.mm:
2691         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
2692         Nothing loaded via WebBasePluginPackage or WebNetscapePluginPackage
2693         is an application plugin.
2694
2695         * WebView/WebFrame.mm:
2696         (-[WebFrame _canProvideDocumentSource]):
2697         Previously, this caller depended on pluginData() returning null if
2698         plug-ins were disabled. Since that is no longer the case, we have to
2699         check if we can use plug-ins, and otherwise ignore non-application-plug-ins.
2700
2701 2013-05-16  Andreas Kling  <akling@apple.com>
2702
2703         Page::chrome() should return a reference.
2704         <http://webkit.org/b/116185>
2705
2706         Reviewed by Anders Carlsson.
2707
2708 2013-05-16  Dan Bernstein  <mitz@apple.com>
2709
2710         -webView:updateHistoryTitle:forURL: does not pass a frame to the delegate
2711         https://bugs.webkit.org/show_bug.cgi?id=116243
2712
2713         Reviewed by Anders Carlsson.
2714
2715         Added a WebFrame parameter to the delegate method.
2716
2717         * WebCoreSupport/WebFrameLoaderClient.mm:
2718         (WebFrameLoaderClient::setTitle): Pass the frame to the delegate. Maintain
2719         compatibility with clients that implement the old delegate method that
2720         doesn’t take a frame.
2721         * WebView/WebDelegateImplementationCaching.h:
2722         (WebHistoryDelegateImplementationCache): Added a field to cache the
2723         implementation of the old delegate method.
2724         * WebView/WebHistoryDelegate.h: Changed the signature of the delegate method.
2725         * WebView/WebView.mm:
2726         (-[WebView _cacheHistoryDelegateImplementations]): Cache the implementation
2727         of the new delegate method, but also check for the old one.
2728
2729 2013-05-16  Simon Fraser  <simon.fraser@apple.com>
2730
2731         Re-land r150168 with some OS version guards.
2732
2733         * WebView/WebFrameView.mm:
2734         (-[WebFrameView drawRect:]):
2735         (-[WebFrameView wantsUpdateLayer]):
2736         (-[WebFrameView updateLayer]):
2737
2738 2013-05-16  Commit Queue  <commit-queue@webkit.org>
2739
2740         Unreviewed, rolling out r150168.
2741         http://trac.webkit.org/changeset/150168
2742         https://bugs.webkit.org/show_bug.cgi?id=116214
2743
2744         broke the world on Mountain Lion (Requested by thorton on
2745         #webkit).
2746
2747         * WebView/WebFrameView.mm:
2748         (-[WebFrameView drawRect:]):
2749
2750 2013-05-15  Simon Fraser  <simon.fraser@apple.com>
2751
2752         Avoid backing store for the WebFrameView's layer when the WebView is layer-backed
2753         https://bugs.webkit.org/show_bug.cgi?id=116172
2754
2755         Reviewed by Tim Horton.
2756
2757         When the WebView is layer-backed, AppKit will create a layer with backing store for
2758         the WebFrameView because it implements drawRect:. However, this method only paints
2759         when there is no documentView, so this layer’s backing store is wasteful.
2760
2761         We can avoid allocation of this backing store by implementing -wantsUpdateLayer
2762         and -updateLayer, and setting the view’s backgroundColor.
2763
2764         * WebView/WebFrameView.mm:
2765         (-[WebFrameView wantsUpdateLayer]):
2766         (-[WebFrameView updateLayer]):
2767
2768 2013-05-13  Anders Carlsson  <andersca@apple.com>
2769
2770         Frame::editor() should return a reference
2771         https://bugs.webkit.org/show_bug.cgi?id=116037
2772
2773         Reviewed by Darin Adler.
2774
2775         * WebView/WebFrame.mm:
2776         (-[WebFrame _selectedString]):
2777         (-[WebFrame _firstRectForDOMRange:]):
2778         (-[WebFrame _markDOMRange]):
2779         (-[WebFrame _insertParagraphSeparatorInQuotedContent]):
2780         (-[WebFrame _setTypingStyle:withUndoAction:]):
2781         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
2782         * WebView/WebHTMLRepresentation.mm:
2783         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
2784         * WebView/WebHTMLView.mm:
2785         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
2786         (-[WebHTMLView _shouldDeleteRange:]):
2787         (-[WebHTMLView _canEdit]):
2788         (-[WebHTMLView _canEditRichly]):
2789         (-[WebHTMLView _insertOrderedList]):
2790         (-[WebHTMLView _insertUnorderedList]):
2791         (-[WebHTMLView _canIncreaseSelectionListLevel]):
2792         (-[WebHTMLView _canDecreaseSelectionListLevel]):
2793         (-[WebHTMLView _increaseSelectionListLevel]):
2794         (-[WebHTMLView _increaseSelectionListLevelOrdered]):
2795         (-[WebHTMLView _increaseSelectionListLevelUnordered]):
2796         (-[WebHTMLView _decreaseSelectionListLevel]):
2797         (-[WebHTMLView Editor::coreCommandBySelector:]):
2798         (-[WebHTMLView Editor::coreCommandByName:]):
2799         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
2800         (-[WebHTMLView becomeFirstResponder]):
2801         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
2802         (-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
2803         (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
2804         (-[WebHTMLView checkSpelling:]):
2805         (-[WebHTMLView showGuessPanel:]):
2806         (-[WebHTMLView toggleBaseWritingDirection:]):
2807         (-[WebHTMLView changeBaseWritingDirection:]):
2808         (-[WebHTMLView _changeBaseWritingDirectionTo:]):
2809         (-[WebHTMLView _updateFontPanel]):
2810         (-[WebHTMLView markedRange]):
2811         (-[WebHTMLView hasMarkedText]):
2812         (-[WebHTMLView unmarkText]):
2813         (-[WebHTMLView setMarkedText:selectedRange:]):
2814         (-[WebHTMLView doCommandBySelector:]):
2815         (-[WebHTMLView insertText:]):
2816         (-[WebHTMLView _updateSelectionForInputManager]):
2817         (-[WebHTMLView countMatchesForText:inDOMRange:options:limit:markMatches:]):
2818         (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]):
2819         (-[WebHTMLView markedTextMatchesAreHighlighted]):
2820         (-[WebHTMLView _findString:options:]):
2821         * WebView/WebView.mm:
2822         (-[WebView _executeCoreCommandByName:value:]):
2823         (-[WebView editableDOMRangeForPoint:]):
2824         (-[WebView setEditable:]):
2825         (-[WebView deleteSelection]):
2826         (-[WebView applyStyle:]):
2827         (-[WebView typingAttributes]):
2828         (-[WebView _simplifyMarkup:endNode:]):
2829         (-[WebView handleAcceptedAlternativeText:]):
2830
2831 2013-05-15  Darin Adler  <darin@apple.com>
2832
2833         [Mac] Remove the ClipboardMac class and header file
2834         https://bugs.webkit.org/show_bug.cgi?id=116165
2835
2836         Reviewed by Anders Carlsson.
2837
2838         * WebCoreSupport/WebDragClient.mm: Import Clipboard.h instead of ClipboardMac.h.
2839
2840 2013-05-15  Darin Adler  <darin@apple.com>
2841
2842         [Mac] Thin out the ClipboardMac class and header file to prepare for deleting them
2843         https://bugs.webkit.org/show_bug.cgi?id=116159
2844
2845         Reviewed by Andreas Kling.
2846
2847         * WebCoreSupport/WebDragClient.mm:
2848         (WebDragClient::willPerformDragSourceAction): Changed to get the pasteboard name
2849         without going through the ClipboardMac class.
2850         (WebDragClient::startDrag): Ditto.
2851
2852 2013-05-14  Beth Dakin  <bdakin@apple.com>
2853
2854         Printing in 1Password app is broken with screen fonts disabled
2855         https://bugs.webkit.org/show_bug.cgi?id=116133
2856         -and corresponding-
2857         <rdar://problem/13162981>
2858
2859         Reviewed by Anders Carlsson.
2860
2861         Return YES from [WebPreferences screenFontSubstitutionEnabled] for versions of the 
2862         1Password app that were linked on or before MountainLion.
2863
2864         * WebView/WebPreferences.mm:
2865         (needsScreenFontsEnabledQuirk):
2866         (-[WebPreferences screenFontSubstitutionEnabled]):
2867
2868 2013-05-13  Dan Bernstein  <mitz@apple.com>
2869
2870         Make -[WebNavigationData url] the destination of the navigation
2871         https://bugs.webkit.org/show_bug.cgi?id=114904
2872
2873         Reviewed by Dave Kilzer.
2874
2875         * WebCoreSupport/WebFrameLoaderClient.mm:
2876         (WebFrameLoaderClient::updateGlobalHistory): Initialize the WebNavigationData with the
2877         current URL, not the original request URL.
2878
2879 2013-05-13  Anders Carlsson  <andersca@apple.com>
2880
2881         Remove ChromeClient::willPopupMenu
2882         https://bugs.webkit.org/show_bug.cgi?id=116063
2883
2884         Reviewed by Andreas Kling.
2885
2886         ChromeClient::willPopupMenu is only called in one place from WebKit, so just move the function to the call site.
2887
2888         * WebCoreSupport/PopupMenuMac.mm:
2889         (PopupMenuMac::show):
2890         * WebCoreSupport/WebChromeClient.h:
2891         * WebCoreSupport/WebChromeClient.mm:
2892
2893 2013-05-12  Timothy Hatcher  <timothy@apple.com>
2894
2895         Add support for updating the Web Inspector toolbar height.
2896
2897         https://bugs.webkit.org/show_bug.cgi?id=115996
2898
2899         Reviewed by Joseph Pecoraro and Benjamin Poulain.
2900
2901         * WebCoreSupport/WebInspectorClient.h:
2902         * WebCoreSupport/WebInspectorClient.mm:
2903         (WebInspectorFrontendClient::setToolbarHeight):
2904
2905 2013-05-13  Ryosuke Niwa  <rniwa@webkit.org>
2906
2907         Sometimes NSUndoManager can get into an inconsistent state
2908         https://bugs.webkit.org/show_bug.cgi?id=116050
2909
2910         Reviewed by Enrica Casucci.
2911
2912         Always group undo items to work around a bug in NSUndoManager that manifests
2913         when we call removeAllActionsWithTarget.
2914
2915         * WebCoreSupport/WebEditorClient.mm:
2916         (WebEditorClient::registerUndoOrRedoStep):
2917
2918 2013-05-13  Zalan Bujtas  <zalan@apple.com>
2919
2920         WebProcess consuming very high CPU on linkedin.com
2921         https://bugs.webkit.org/show_bug.cgi?id=115601
2922
2923         Reviewed by Andreas Kling.
2924
2925         Disable WEB_TIMING_MINIMAL.
2926         Turn off window.performance and performance.now(). Some JS frameworks expect
2927         additional Web Timing APIs, when performance.now() is available.
2928
2929         * Configurations/FeatureDefines.xcconfig:
2930
2931 2013-05-13  Darin Adler  <darin@apple.com>
2932
2933         [Mac] Layer-backed WebViews draw their background color even when setDrawsBackground:NO was called
2934         https://bugs.webkit.org/show_bug.cgi?id=116014
2935         <rdar://problem/12781227>
2936
2937         Reviewed by Dan Bernstein.
2938
2939         * WebView/WebFrame.mm:
2940         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): Remove calls to setBackgroundColor: and
2941         setDrawsBackground: on the document view. These were added to support a hypothetical document view
2942         that wanted to draw its background like WebHTMLView does, but this was never communicated as a
2943         document view protocol, formal or informal, and it's unlikely that it was ever used. The bug was
2944         caused because there is an -[NSView setDrawsBackground:] method, probably an internal one, and we
2945         were calling it unintentionally on a WebHTMLView.
2946
2947 2013-05-12  Anders Carlsson  <andersca@apple.com>
2948
2949         Stop including UnusedParam.h
2950         https://bugs.webkit.org/show_bug.cgi?id=116003
2951
2952         Reviewed by Sam Weinig.
2953
2954         UnusedParam.h is empty now so there's no need to include it anymore.
2955
2956         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
2957         * WebView/WebDashboardRegion.mm:
2958         * WebView/WebFullScreenController.mm:
2959
2960 2013-05-12  Andreas Kling  <akling@apple.com>
2961
2962         Unload event listeners should prevent Safari from insta-killing the web process on last tab close.
2963         <http://webkit.org/b/115988>
2964         <rdar://problem/13870943>
2965
2966         Reviewed by Anders Carlsson.
2967
2968         * WebCoreSupport/WebChromeClient.h:
2969         * WebCoreSupport/WebChromeClient.mm:
2970         (WebChromeClient::enableSuddenTermination):
2971         (WebChromeClient::disableSuddenTermination):
2972
2973 2013-05-10  Brian J. Burg  <burg@cs.washington.edu>
2974
2975         Web Inspector: Implement WK2 version of WebInspectorFrontendClient::save
2976         https://bugs.webkit.org/show_bug.cgi?id=115564
2977
2978         Reviewed by Benjamin Poulain.
2979
2980         Clean up save() and append() implementations.
2981
2982         * WebCoreSupport/WebInspectorClient.h:
2983         * WebCoreSupport/WebInspectorClient.mm:
2984         (WebInspectorFrontendClient::save):
2985         (WebInspectorFrontendClient::append):
2986
2987 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
2988
2989         Remove Mac OS X Leopard (10.5) support
2990         https://bugs.webkit.org/show_bug.cgi?id=107964
2991
2992         Reviewed by Ryosuke Niwa.
2993
2994         Removed the code for 10.5 and removed if-def for 10.6.
2995
2996         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
2997         * Misc/WebKitErrors.m:
2998         (-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]):
2999         * WebCoreSupport/WebSystemInterface.mm:
3000         (InitWebCoreSystemInterface):
3001         * WebView/WebClipView.mm:
3002         (-[WebClipView _immediateScrollToPoint:]):
3003         * WebView/WebFrameView.mm:
3004         (-[WebFrameView initWithFrame:]):
3005         * WebView/WebView.mm:
3006
3007 2013-05-07  Mark Rowe  <mrowe@apple.com>
3008
3009         <rdar://problem/13633007> WebKit and others fail to build headers due to build root dependency
3010
3011         Reviewed by Sam Weinig.
3012
3013         * Configurations/WebKit.xcconfig: Look for WebCore's headers within the SDK if we're building against one.
3014
3015 2013-05-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3016
3017         HashTraits<RefPtr<P> >::PeekType should be raw pointer for better performance
3018         https://bugs.webkit.org/show_bug.cgi?id=115646
3019
3020         Reviewed by Darin Adler.
3021
3022         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3023         (WebKit::NetscapePluginHostProxy::pluginInstance):
3024         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3025         (WebKit::NetscapePluginInstanceProxy::cancelStreamLoad):
3026             Updated accordingly to new HashMap<.., RefPtr>::get() semantics.
3027
3028 2013-05-04  Dean Jackson  <dino@apple.com>
3029
3030         Animations and Transitions should not start when globally suspended
3031         https://bugs.webkit.org/show_bug.cgi?id=114915
3032
3033         Reviewed by Sam Weinig.
3034
3035         The WebView private API cssAnimationsSuspended did not necessarily
3036         reflect the reality of the Frame's AnimationController value because it
3037         was caching rather than asking directly. While the WebCore part of this
3038         patch ensured loading the Document wouldn't resume all animations, it
3039         is still better to ask directly.
3040
3041         * WebView/WebView.mm:
3042         (-[WebView cssAnimationsSuspended]): Call into AnimationController.
3043         (-[WebView setCSSAnimationsSuspended:]): Ditto.
3044         * WebView/WebViewData.h: Remove cssAnimationsSuspended boolean.
3045         * WebView/WebViewData.mm: Ditto.
3046         (-[WebViewPrivate init]):
3047
3048 2013-05-04  Sam Weinig  <sam@webkit.org>
3049
3050         Move PopupMenuMac and SearchPopupMenuMac to Source/WebKit/mac
3051         matching where they are in WebKit2.
3052
3053         Reviewed by Anders Carlsson.
3054
3055         * WebCoreSupport/PopupMenuMac.h: Copied from WebCore/platform/mac/PopupMenuMac.h.
3056         * WebCoreSupport/PopupMenuMac.mm: Copied from WebCore/platform/mac/PopupMenuMac.mm.
3057         * WebCoreSupport/SearchPopupMenuMac.h: Copied from WebCore/platform/mac/SearchPopupMenuMac.h.
3058         * WebCoreSupport/SearchPopupMenuMac.mm: Copied from WebCore/platform/mac/SearchPopupMenuMac.mm.
3059         * WebCoreSupport/WebChromeClient.mm:
3060
3061 2013-05-04  Anders Carlsson  <andersca@apple.com>
3062
3063         Get rid of -[NSMutableDictionary _webkit_setObject:forUncopiedKey:]
3064         https://bugs.webkit.org/show_bug.cgi?id=115592
3065
3066         Reviewed by Beth Dakin.
3067
3068         Using CFDictionarySetValue to set a key without having to copy it is not supported. Use NSMapTable with strong pointers instead.
3069
3070         * Misc/WebNSDictionaryExtras.h:
3071         * Misc/WebNSDictionaryExtras.m:
3072         * Panels/WebPanelAuthenticationHandler.h:
3073         (NSURLAuthenticationChallenge):
3074         * Panels/WebPanelAuthenticationHandler.m:
3075         (-[WebPanelAuthenticationHandler init]):
3076         (-[WebPanelAuthenticationHandler enqueueChallenge:forWindow:]):
3077         (-[WebPanelAuthenticationHandler tryNextChallengeForWindow:]):
3078         (-[WebPanelAuthenticationHandler startAuthentication:window:]):
3079         (-[WebPanelAuthenticationHandler cancelAuthentication:]):
3080         * Plugins/WebNetscapePluginView.h:
3081         * Plugins/WebNetscapePluginView.mm:
3082         (-[WebNetscapePluginView destroyPlugin]):
3083         (-[WebNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
3084         (-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]):
3085         (-[WebNetscapePluginView loadPluginRequest:]):
3086
3087 2011-05-01  Ryosuke Niwa  <rniwa@webkit.org>
3088
3089         [Mac] WebKit doesn't enable or disable autocorrections when system preferences are changed
3090         https://bugs.webkit.org/show_bug.cgi?id=115463
3091
3092         Reviewed by Darin Adler.
3093
3094         Observe the default notification center for changes to autocorrection preferences.
3095         Note system preferences may also update WebAutomatic* defaults.
3096
3097         * WebView/WebView.mm:
3098         (+[WebView initialize]):
3099         (+[WebView _shouldAutomaticTextReplacementBeEnabled]):
3100         (+[WebView _didChangeAutomaticTextReplacementEnabled:]):
3101         (+[WebView _shouldAutomaticSpellingCorrectionBeEnabled]):
3102         (+[WebView _didChangeAutomaticSpellingCorrectionEnabled:]):
3103         (+[WebView _shouldAutomaticQuoteSubstitutionBeEnabled]):
3104         (+[WebView _shouldAutomaticDashSubstitutionBeEnabled]):
3105         (+[WebView _didChangeAutomaticQuoteSubstitutionEnabled:]):
3106         (+[WebView _didChangeAutomaticDashSubstitutionEnabled:]):
3107
3108 2013-05-01  Benjamin Poulain  <bpoulain@apple.com>
3109
3110         Fix the function names of r149453
3111
3112         Unreviewed.
3113
3114         I forgot to follow one of Darin's review comment. This patch
3115         fixes the function names to follow CF naming conventions.
3116
3117         * WebView/WebHTMLRepresentation.mm:
3118         (newArrayWithStrings):
3119         (newArrayByConcatenatingArrays):
3120         (+[WebHTMLRepresentation supportedMIMETypes]):
3121         (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
3122         (+[WebHTMLRepresentation supportedImageMIMETypes]):
3123         (+[WebHTMLRepresentation unsupportedTextMIMETypes]):
3124
3125 2013-05-01  Benjamin Poulain  <benjamin@webkit.org>
3126
3127         Simplify WebHTMLRepresentation supportedMIMETypes methods
3128         https://bugs.webkit.org/show_bug.cgi?id=115314
3129
3130         Reviewed by Darin Adler.
3131
3132         The initialization was surprisingly complex because of DEFINE_STATIC_LOCAL.
3133         First, a new pointer was allocated on the heap with fast malloc (for RetainPtr<NSArray>).
3134         Then a new NSMutableArray was allocated but immediately put on the autorelease pool.
3135         Finally, that array was retained by the RetainPtr.
3136
3137         This patch changes the code to only leak the NSMutableArray memory. There
3138         is no fastMalloc, nor any use of the autorelease pool.
3139
3140         * WebView/WebHTMLRepresentation.mm:
3141         (createArrayWithStrings):
3142         (createArrayByConcatenatingArrays):
3143         (+[WebHTMLRepresentation supportedMIMETypes]):
3144         (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
3145         (+[WebHTMLRepresentation supportedImageMIMETypes]):
3146         (+[WebHTMLRepresentation unsupportedTextMIMETypes]):
3147
3148 2013-04-30  Darin Adler  <darin@apple.com>
3149
3150         [Mac] Remove adoptNS/retain pairs, since the two cancel each other out
3151         https://bugs.webkit.org/show_bug.cgi?id=115426
3152
3153         Reviewed by Anders Carlsson.
3154
3155         * Plugins/WebNetscapePluginStream.mm:
3156         (WebNetscapePluginStream::deliverDataToFile): Remove adoptNS and release.
3157
3158 2013-04-30  Geoffrey Garen  <ggaren@apple.com>
3159
3160         Objective-C JavaScriptCore API should publicly support bridging to C
3161         https://bugs.webkit.org/show_bug.cgi?id=115447
3162
3163         Reviewed by Mark Hahnenberg.
3164
3165         * WebView/WebFrame.mm:
3166         (-[WebFrame _javaScriptContextForScriptWorld:]):
3167         * WebView/WebScriptWorld.mm:
3168         (+[WebScriptWorld scriptWorldForJavaScriptContext:]):
3169
3170 2013-04-30  Anders Carlsson  <andersca@apple.com>
3171
3172         More StorageTracker cleanup
3173         https://bugs.webkit.org/show_bug.cgi?id=115429
3174
3175         Reviewed by Andreas Kling.
3176
3177         Call PageGroup::syncLocalStorage directly.
3178
3179         * Storage/WebStorageManager.mm:
3180         (-[WebStorageManager syncLocalStorage]):
3181
3182 2013-04-30  Zalan Bujtas  <zalan@apple.com>
3183
3184         Animations fail to start on http://www.google.com/insidesearch/howsearchworks/thestory/
3185         https://bugs.webkit.org/show_bug.cgi?id=111244
3186
3187         Reviewed by David Kilzer.
3188         
3189         Enable performance.now() as a minimal subset of Web Timing API. 
3190         It returns DOMHighResTimeStamp, a monotonically increasing value representing the 
3191         number of milliseconds from the start of the navigation of the current document.
3192         JS libraries use this API to check against the requestAnimationFrame() timestamp.
3193
3194         * Configurations/FeatureDefines.xcconfig:
3195
3196 2013-04-29  Chris Fleizach  <cfleizach@apple.com>
3197
3198         WEB SPEECH: need to identify the default voice per language
3199         https://bugs.webkit.org/show_bug.cgi?id=115366
3200
3201         Reviewed by Tim Horton.
3202
3203         * WebCoreSupport/WebSystemInterface.mm:
3204         (InitWebCoreSystemInterface):
3205
3206 2013-04-28  Dean Jackson  <dino@apple.com>
3207
3208         [Mac] Disable canvas backing store scaling (HIGH_DPI_CANVAS)
3209         https://bugs.webkit.org/show_bug.cgi?id=115310
3210
3211         Reviewed by Simon Fraser.
3212
3213         Remove ENABLE_HIGH_DPI_CANVAS_macosx.
3214
3215         * Configurations/FeatureDefines.xcconfig:
3216
3217 2013-04-27  Darin Adler  <darin@apple.com>
3218
3219         Move from constructor and member function adoptCF/NS to free function adoptCF/NS.
3220         https://bugs.webkit.org/show_bug.cgi?id=115307
3221
3222         Reviewed by Geoffrey Garen.
3223
3224         This change was done by a global replace followed by compiling and inspecting for
3225         cases that needed to be tweaked by hand.
3226
3227         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
3228         (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
3229         * Misc/WebNSFileManagerExtras.mm:
3230         (-[NSFileManager _webkit_startupVolumeName]):
3231         * Plugins/Hosted/HostedNetscapePluginStream.mm:
3232         (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
3233         * Plugins/Hosted/NetscapePluginHostManager.mm:
3234         (WebKit::NetscapePluginHostManager::spawnPluginHost):
3235         (WebKit::NetscapePluginHostManager::instantiatePlugin):
3236         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3237         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
3238         (WebKit::NetscapePluginHostProxy::beginModal):
3239         (WKPCBooleanAndDataReply):
3240         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3241         (WebKit::NetscapePluginInstanceProxy::print):
3242         (WebKit::NetscapePluginInstanceProxy::snapshot):
3243         (WebKit::NetscapePluginInstanceProxy::status):
3244         (WebKit::NetscapePluginInstanceProxy::loadURL):
3245         (WebKit::NetscapePluginInstanceProxy::evaluateJavaScript):
3246         (WebKit::NetscapePluginInstanceProxy::enumerate):
3247         (WebKit::NetscapePluginInstanceProxy::marshalValue):
3248         (WebKit::NetscapePluginInstanceProxy::marshalValues):
3249         (WebKit::NetscapePluginInstanceProxy::demarshalValue):
3250         (WebKit::NetscapePluginInstanceProxy::demarshalValues):
3251         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3252         (-[WebHostedNetscapePluginView setAttributeKeys:andValues:]):
3253         (-[WebHostedNetscapePluginView createPlugin]):
3254         * Plugins/WebBaseNetscapePluginView.mm:
3255         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
3256         (-[WebBaseNetscapePluginView cacheSnapshot]):
3257         (WebKit::getAuthenticationInfo):
3258         * Plugins/WebBasePluginPackage.mm:
3259         (-[WebBasePluginPackage initWithPath:]):
3260         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
3261         (WebNetscapePluginEventHandlerCarbon::startTimers):
3262         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3263         (WebNetscapePluginEventHandlerCocoa::syntheticKeyDownWithCommandModifier):
3264         (WebNetscapePluginEventHandlerCocoa::handleTSMEvent):
3265         * Plugins/WebNetscapePluginPackage.mm:
3266         (-[WebNetscapePluginPackage _initWithPath:]):
3267         * Plugins/WebNetscapePluginStream.mm:
3268         (WebNetscapePluginStream::WebNetscapePluginStream):
3269         (WebNetscapePluginStream::deliverData):
3270         (WebNetscapePluginStream::deliverDataToFile):
3271         (WebNetscapePluginStream::didReceiveData):
3272         * Plugins/WebNetscapePluginView.mm:
3273         (-[WebNetscapePluginView createPlugin]):
3274         (-[WebNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
3275         (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
3276         * Storage/WebDatabaseManagerClient.mm:
3277         (WebDatabaseManagerClient::dispatchDidModifyOrigin):
3278         (WebDatabaseManagerClient::dispatchDidModifyDatabase):
3279         * Storage/WebStorageTrackerClient.mm:
3280         (WebStorageTrackerClient::dispatchDidModifyOrigin):
3281         * WebCoreSupport/CorrectionPanel.mm:
3282         (CorrectionPanel::handleAcceptedReplacement):
3283         * WebCoreSupport/WebApplicationCache.mm:
3284         (+[WebApplicationCache originsWithCache]):
3285         * WebCoreSupport/WebFrameLoaderClient.mm:
3286         (WebFrameLoaderClient::didRunInsecureContent):
3287         * WebCoreSupport/WebInspectorClient.mm:
3288         (WebInspectorClient::WebInspectorClient):
3289         (WebInspectorClient::openInspectorFrontend):
3290         * WebView/WebFullScreenController.mm:
3291         (-[WebFullScreenController enterFullScreen:]):
3292         * WebView/WebPDFDocumentExtras.mm:
3293         (allScriptsInPDFDocument):
3294         * WebView/WebPreferences.mm:
3295         (-[WebPreferences initWithIdentifier:]):
3296         (-[WebPreferences initWithCoder:]):
3297         * WebView/WebScriptDebugger.mm:
3298         (WebScriptDebugger::initGlobalCallFrame):
3299         (WebScriptDebugger::callEvent):
3300         * WebView/WebView.mm:
3301         (-[WebView previousValidKeyView]):
3302         Use adoptNS and adoptCF free functions.
3303
3304 2013-04-25  Roger Fong  <roger_fong@apple.com>
3305
3306         Disable sub-pixel layout on mac.
3307         https://bugs.webkit.org/show_bug.cgi?id=114999.
3308
3309         Reviewed by Simon Fraser.
3310
3311         * Configurations/FeatureDefines.xcconfig:
3312
3313 2013-04-26  Simon Fraser  <simon.fraser@apple.com>
3314
3315         Layer-backed WebViews don't repaint content outside the visible area
3316         https://bugs.webkit.org/show_bug.cgi?id=115275
3317
3318         Reviewed by Beth Dakin.
3319
3320         When a client of WebView makes the WebView be layer-backed, then
3321         AppKit propagaes the layer-backing down to the WebHTMLView (but
3322         no further).
3323         
3324         In this situation, we had a bug where content that was not
3325         in the visible content rect would not get repainted, because
3326         WebCore clips repaints to the visible rect.
3327         
3328         Fix by calling ScrollView::setPaintsEntireContents(bool) from
3329         -[WebHTMLView setLayer:], saying that we need
3330         to paint the entire contents if we have a layer.
3331
3332         * WebView/WebHTMLView.mm:
3333         (-[WebHTMLView setLayer:]):
3334
3335 2013-04-25  Chris Fleizach  <cfleizach@apple.com>
3336
3337         WEB SPEECH: language support does not work as expected
3338         https://bugs.webkit.org/show_bug.cgi?id=115119
3339
3340         Reviewed by Alexey Proskuryakov.
3341
3342         * WebCoreSupport/WebSystemInterface.mm:
3343         (InitWebCoreSystemInterface):
3344
3345 2013-04-25  Simon Fraser  <simon.fraser@apple.com>
3346
3347         Build fix for smart compliers.
3348
3349         Reviewed by Tim Horton.
3350         
3351         [NSDictionary dictionaryWithObjectsAndKeys:] returns an NSDictionary,
3352         not a NSMutableDictionary.
3353
3354         * WebCoreSupport/WebEditorClient.mm:
3355         (WebEditorClient::updateSpellingUIWithGrammarString):
3356
3357 2013-04-25  Joseph Pecoraro  <pecoraro@apple.com>
3358
3359         Web Inspector: ConsoleMessage should include line and column number where possible
3360         https://bugs.webkit.org/show_bug.cgi?id=114929
3361
3362         Reviewed by Timothy Hatcher.
3363
3364         * WebCoreSupport/WebChromeClient.h:
3365         * WebCoreSupport/WebChromeClient.mm:
3366         (WebChromeClient::addMessageToConsole):
3367
3368 2013-04-24  Jessie Berlin  <jberlin@apple.com>
3369
3370         Assertion failure (crash in release) attempting to delete database storage in WK1 without
3371         creating a WebView first
3372         https://bugs.webkit.org/show_bug.cgi?id=115065
3373
3374         Reviewed by Brady Eidson.
3375
3376         Make sure the WebPlatformStrategies is initialized before using the WebDatabaseManager.
3377
3378         * Storage/WebDatabaseManager.mm:
3379         (-[WebDatabaseManager init]):
3380         Move the logic from WebKitInitializeDatabasesIfNecessary here, and add a call to
3381         WebPlatformStrategies::initializeIfNecessary.
3382
3383         * Storage/WebDatabaseManagerInternal.h: Removed.
3384
3385         * WebCoreSupport/WebPlatformStrategies.h:
3386         (WebPlatformStrategies):
3387         Change "initialize" to "initalizeIfNecessary".
3388         * WebCoreSupport/WebPlatformStrategies.mm:
3389         (WebPlatformStrategies::initializeIfNecessary):
3390         Only call setPlatformStrategies once.
3391
3392         * WebView/WebView.mm:
3393         (-[WebView _commonInitializationWithFrameName:groupName:]):
3394         Updated for the name change from initialize to initializeIfNecessary.
3395         Instead of calling WebKitInitializeDatabasesIfNecessary, call [WebDatabaseManager
3396         sharedWebDatabaseManager].
3397         (+[WebView _setLoadResourcesSerially:]):
3398         Updated for the name change from initialize to initializeIfNecessary.
3399
3400 2013-04-23  Antoine Quint  <graouts@apple.com>
3401
3402         Initial advance of text runs should be taken into account
3403         https://bugs.webkit.org/show_bug.cgi?id=114949
3404
3405         Reviewed by Darin Adler.
3406
3407         Adding support for new method CTRunGetInitialAdvance in WebKitSystemInterface.
3408
3409         * WebCoreSupport/WebSystemInterface.mm:
3410         (InitWebCoreSystemInterface):
3411
3412 2013-04-22  Benjamin Poulain  <benjamin@webkit.org>
3413
3414         Remove the memory instrumentation code
3415         https://bugs.webkit.org/show_bug.cgi?id=114931
3416
3417         Reviewed by Andreas Kling.
3418
3419         * WebView/WebRenderLayer.mm:
3420
3421 2013-04-18  Andy Estes  <aestes@apple.com>
3422
3423         REGRESSION (r116645): Versions app's UI is munged in HiDPI due to background-size being reset to 'auto' when background short-hand is also specified
3424         https://bugs.webkit.org/show_bug.cgi?id=114833
3425
3426         Reviewed by David Kilzer.
3427
3428         The Versions app specifies both a background-size and a background
3429         shorthand CSS property, and its UI is broken after r116645 which resets
3430         background-size to 'auto' if the background shorthand property is
3431         specified.
3432
3433         This patch enables the useLegacyBackgroundSizeShorthandBehavior setting
3434         added in r147034 to restore the expected behavior if the embedder is
3435         Versions.app and it was linked against a version of WebKit that had the
3436         legacy behavior.
3437
3438         * Misc/WebKitVersionChecks.h:
3439         * WebView/WebView.mm:
3440         (shouldUseLegacyBackgroundSizeShorthandBehavior):
3441         (-[WebView _commonInitializationWithFrameName:groupName:]):
3442
3443 2013-04-18  Sam Weinig  <sam@webkit.org>
3444
3445         Network Process crashing trying to read in IDNScriptWhiteList.txt
3446         https://bugs.webkit.org/show_bug.cgi?id=114827
3447
3448         Reviewed by Anders Carlsson.
3449
3450         Move IDNScriptWhiteList.txt from WebKit to WebCore, so that the NetworkProcess does not have to link against
3451         WebKit. It was a layering violation for WebCore to be trying to access WebKit resources anyway.
3452
3453         * Resources/IDNScriptWhiteList.txt: Removed.
3454
3455 2013-04-17  Geoffrey Garen  <ggaren@apple.com>
3456
3457         Renamed JSGlobalData to VM
3458         https://bugs.webkit.org/show_bug.cgi?id=114777
3459
3460         Reviewed by Phil Pizlo.
3461
3462         * Misc/WebCoreStatistics.mm:
3463         (+[WebCoreStatistics javaScriptObjectsCount]):
3464         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
3465         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
3466         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
3467         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
3468         (+[WebCoreStatistics javaScriptObjectTypeCounts]):
3469         (+[WebCoreStatistics shouldPrintExceptions]):
3470         (+[WebCoreStatistics setShouldPrintExceptions:]):
3471         (+[WebCoreStatistics memoryStatistics]):
3472         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
3473         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3474         (identifierFromIdentifierRep):
3475         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
3476         (LocalObjectMap):
3477         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3478         (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
3479         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
3480         (WebKit::NetscapePluginInstanceProxy::getPluginElementNPObject):
3481         (WebKit::NetscapePluginInstanceProxy::evaluate):
3482         (WebKit::NetscapePluginInstanceProxy::addValueToArray):
3483         * Plugins/Hosted/ProxyInstance.mm:
3484         (WebKit::ProxyRuntimeMethod::create):
3485         (WebKit::ProxyRuntimeMethod::createStructure):
3486         (WebKit::ProxyRuntimeMethod::finishCreation):
3487         (WebKit::ProxyInstance::getPropertyNames):
3488         * Plugins/Hosted/ProxyRuntimeObject.h:
3489         (WebKit::ProxyRuntimeObject::create):
3490         (WebKit::ProxyRuntimeObject::createStructure):
3491         * Plugins/WebNetscapePluginStream.mm:
3492         (WebNetscapePluginStream::wantsAllStreams):
3493         * Plugins/WebNetscapePluginView.mm:
3494         (-[WebNetscapePluginView sendEvent:isDrawRect:]):
3495         (-[WebNetscapePluginView privateBrowsingModeDidChange]):
3496         (-[WebNetscapePluginView setWindowIfNecessary]):
3497         (-[WebNetscapePluginView createPluginScriptableObject]):
3498         (-[WebNetscapePluginView getFormValue:]):
3499         (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
3500         (-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]):
3501         (-[WebNetscapePluginView loadPluginRequest:]):
3502         (-[WebNetscapePluginView _printedPluginBitmap]):
3503         * Plugins/WebPluginController.mm:
3504         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
3505         (-[WebPluginController stopOnePlugin:]):
3506         (-[WebPluginController destroyOnePlugin:]):
3507         (-[WebPluginController startAllPlugins]):
3508         (-[WebPluginController addPlugin:]):
3509         * WebKit.order:
3510         * WebView/WebScriptDebugDelegate.mm:
3511         (-[WebScriptCallFrame scopeChain]):
3512         (-[WebScriptCallFrame evaluateWebScript:]):
3513         * WebView/WebScriptDebugger.mm:
3514         (WebScriptDebugger::WebScriptDebugger):
3515
3516 2013-04-16  Beth Dakin  <bdakin@apple.com>
3517
3518         Re-name Page::layoutMilestones() to Page::requestedLayoutMilestones()
3519         https://bugs.webkit.org/show_bug.cgi?id=114713
3520
3521         Reviewed by Simon Fraser.
3522
3523         * WebView/WebView.mm:
3524         (-[WebView _layoutMilestones]):
3525
3526 2013-04-15  Sam Weinig  <sam@webkit.org>
3527
3528         Remove more #includes from Frame.h
3529         https://bugs.webkit.org/show_bug.cgi?id=114642
3530
3531         Reviewed by Anders Carlsson.
3532
3533         * WebView/WebFrame.mm:
3534         * WebView/WebHTMLRepresentation.mm:
3535         * WebView/WebView.mm:
3536
3537 2013-04-16  Alexey Proskuryakov  <ap@apple.com>
3538
3539         Remove unused AlternativeTextClient::dismissDictationAlternativeUI
3540         https://bugs.webkit.org/show_bug.cgi?id=114598
3541
3542         Reviewed by Ryosuke Niwa.
3543
3544         * WebCoreSupport/WebAlternativeTextClient.h:
3545         * WebCoreSupport/WebAlternativeTextClient.mm:
3546         * WebView/WebView.mm:
3547         * WebView/WebViewInternal.h:
3548
3549 2013-04-15  Ryosuke Niwa  <rniwa@webkit.org>
3550
3551         REGRESSION(r146025): WebKit applications can't apply underline or strike through
3552         https://bugs.webkit.org/show_bug.cgi?id=114662
3553
3554         Reviewed by Enrica Casucci.
3555
3556         Use -webkit- prefixes to apply underline. There should be no further compatibility issues
3557         since -khtml- was used only internally to pass the information down to WebCore.
3558
3559         Unfortunately, we can't test this code like any other font panel bug.
3560
3561         In the long run, we need to add some abstraction layer around font panel to make this testable
3562         or else we'll keep regressing this feature.
3563
3564         * WebView/WebHTMLView.mm:
3565         (-[WebHTMLView _styleFromFontAttributes:]):
3566         (-[WebHTMLView _styleForAttributeChange:]):
3567
3568 2013-04-15  Anders Carlsson  <andersca@apple.com>
3569
3570         plugins/get-url-beforeunload-destroys-plugin.html crashes in WebKit1
3571         https://bugs.webkit.org/show_bug.cgi?id=114653
3572         <rdar://problem/13659541>
3573
3574         Reviewed by Sam Weinig.
3575
3576         Protect the NetscapePluginInstanceProxy since it can otherwise go away.
3577
3578         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3579         (WebKit::NetscapePluginInstanceProxy::performRequest):
3580
3581 2013-04-14  Sam Weinig  <sam@webkit.org>
3582
3583         Move Mac specific snapshotting code into its own file
3584         https://bugs.webkit.org/show_bug.cgi?id=114597
3585
3586         Reviewed by Andreas Kling.
3587
3588         * WebView/WebHTMLView.mm:
3589         (-[WebHTMLView _selectionDraggingImage]):
3590         (-[WebHTMLView selectionImageForcingBlackText:]):
3591
3592 2013-04-14  Andreas Kling  <akling@apple.com>
3593
3594         Move CSSOM classes to using MutableStylePropertySet over StylePropertySet.
3595         <http://webkit.org/b/114581>
3596
3597         Reviewed by Anders Carlsson.
3598
3599         * WebCoreSupport/WebEditorClient.mm:
3600         (WebEditorClient::shouldApplyStyle):
3601         * WebView/WebFrame.mm:
3602         (-[WebFrame _typingStyle]):
3603
3604 2013-04-10  Sam Weinig  <sam@webkit.org>
3605
3606         Make Frame's ScriptController an OwnPtr and remove the #include
3607         https://bugs.webkit.org/show_bug.cgi?id=114105
3608
3609         Reviewed by Dean Jackson.
3610
3611         * Plugins/Hosted/HostedNetscapePluginStream.mm:
3612         * Plugins/WebNetscapePluginStream.mm:
3613         * Plugins/WebPluginContainerCheck.mm:
3614         * WebCoreSupport/WebGeolocationClient.mm:
3615         * WebCoreSupport/WebInspectorClient.mm:
3616         * WebView/WebFrame.mm:
3617
3618 2013-04-13  Anders Carlsson  <andersca@apple.com>
3619
3620         Add form delegate method that's invoked right before sending a submit event to a form element
3621         https://bugs.webkit.org/show_bug.cgi?id=114575
3622
3623         Reviewed by Dan Bernstein.
3624
3625         * MigrateHeaders.make:
3626         Copy DOMHTMLFormElementInternal.h over to WebKit.
3627
3628         * WebCoreSupport/WebFrameLoaderClient.mm:
3629         (makeFormFieldValuesDictionary):
3630         New helper function that returns the values of a form in dictionary form.
3631
3632         (WebFrameLoaderClient::dispatchWillSendSubmitEvent):
3633         Call the right delegate method.
3634
3635         (WebFrameLoaderClient::dispatchWillSubmitForm):
3636         Use the helper function.
3637
3638         * WebView/WebDelegateImplementationCaching.h:
3639         * WebView/WebDelegateImplementationCaching.mm:
3640         (CallFormDelegate):
3641         Add another overload.
3642
3643         * WebView/WebFormDelegate.h:
3644         * WebView/WebFormDelegate.m:
3645         (-[WebFormDelegate willSendSubmitEventToForm:inFrame:withValues:]):
3646         Add a default implementation.
3647
3648 2013-04-10  Benjamin Poulain  <bpoulain@apple.com>
3649
3650         Mass remove all the empty directories
3651
3652         Rubberstamped by Ryosuke Niwa.
3653
3654         * ForwardingHeaders/wtf/unicode/icu: Removed.
3655
3656 2013-04-08  Anders Carlsson  <andersca@apple.com>
3657
3658         Remove unneeded headers from FrameLoader.h
3659         https://bugs.webkit.org/show_bug.cgi?id=114223
3660
3661         Reviewed by Geoffrey Garen.
3662
3663         Include HistoryController.h from WebCore.
3664
3665         * WebCoreSupport/WebFrameLoaderClient.mm:
3666         * WebView/WebView.mm:
3667
3668 2013-04-09  Geoffrey Garen  <ggaren@apple.com>
3669
3670         Removed bitrotted TimeoutChecker code
3671         https://bugs.webkit.org/show_bug.cgi?id=114336
3672
3673         Reviewed by Alexey Proskuryakov.
3674
3675         This mechanism hasn't worked for a while.
3676
3677         MarkL is working on a new version of this feature with a distinct
3678         implementation.
3679
3680         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3681         (WebKit::NetscapePluginInstanceProxy::evaluate):
3682
3683 2013-04-08  Benjamin Poulain  <benjamin@webkit.org>
3684
3685         Remove HTML Notification
3686         https://bugs.webkit.org/show_bug.cgi?id=114231
3687
3688         Reviewed by Ryosuke Niwa.
3689
3690         * Configurations/FeatureDefines.xcconfig:
3691
3692 2013-04-05  Anders Carlsson  <andersca@apple.com>
3693
3694         Stop building Objective-C bindings for the SVG DOM
3695         https://bugs.webkit.org/show_bug.cgi?id=114076
3696
3697         Reviewed by Geoffrey Garen.
3698
3699         The DOM SVG Objective-C bindings have never been exposed as API, and not building them cuts WebCore build by 10%.
3700
3701         * Configurations/FeatureDefines.xcconfig:
3702         * MigrateHeaders.make:
3703
3704 2013-04-05  Timothy Hatcher  <timothy@apple.com>
3705
3706         Allow the Web Inspector to use WebSQL.
3707
3708         This fixes an exception on load in the Safari Web Inspector.
3709
3710         https://webkit.org/b/114040
3711         rdar://problem/13581422
3712
3713         Reviewed by Anders Carlsson.
3714
3715         * WebCoreSupport/WebInspectorClient.mm:
3716         (-[WebInspectorWindowController webView:frame:exceededDatabaseQuotaForSecurityOrigin:database:]): Added.
3717
3718 2013-04-02  Timothy Hatcher  <timothy@apple.com>
3719
3720         Provide a user default that can be used to disable docking of the Web Inspector.
3721
3722         The user default is "WebKit Web Inspector Setting - inspectorAttachDisabled".
3723
3724         https://webkit.org/b/113779
3725         rdar://problem/13446021
3726
3727         Reviewed by Joseph Pecoraro.
3728
3729         * WebCoreSupport/WebInspectorClient.h:
3730         (WebInspectorClient::inspectorAttachDisabled): Added.
3731         (WebInspectorClient::setInspectorAttachDisabled): Added.
3732
3733         * WebCoreSupport/WebInspectorClient.mm:
3734         (WebInspectorClient::didResizeMainFrame):
3735         (-[WebInspectorWindowController window]):
3736         (-[WebInspectorWindowController showWindow:]):
3737         Check inspectorAttachDisabled() in places where we attach or update the dock button.
3738
3739 2013-04-02  Alexey Proskuryakov  <ap@apple.com>
3740
3741         [Mac] Remove WKCreateNSURLConnectionDelegateProxy
3742         https://bugs.webkit.org/show_bug.cgi?id=113810
3743
3744         Reviewed by Anders Carlsson.
3745
3746         * WebCoreSupport/WebSystemInterface.mm:
3747         (InitWebCoreSystemInterface):
3748
3749 2013-04-02  Alexey Proskuryakov  <ap@apple.com>
3750
3751         <rdar://problem/13551119> [WK2] Crashes in NetworkProcess when canceling loads
3752         https://bugs.webkit.org/show_bug.cgi?id=113803
3753
3754         Reviewed by Darin Adler.
3755
3756         * WebCoreSupport/WebFrameLoaderClient.mm:
3757         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
3758         Just pass nil instead of proxy.
3759
3760 2013-04-01  Ryosuke Niwa  <rniwa@webkit.org>
3761
3762         WebKit/mac shouldn't have code for Mac 10.5 and earlier
3763         https://bugs.webkit.org/show_bug.cgi?id=113746
3764
3765         Reviewed by Darin Adler.
3766
3767         Deleted the code for 10.5 and removed if-defs for 10.6.
3768
3769         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3770         (-[WebHostedNetscapePluginView createPlugin]):
3771         * Plugins/WebBaseNetscapePluginView.mm:
3772         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
3773         * Plugins/WebNetscapePluginView.mm:
3774         (-[WebNetscapePluginView createPlugin]):
3775         (-[WebNetscapePluginView getVariable:forURL:value:length:]):
3776         (-[WebNetscapePluginView _workaroundSilverlightFullscreenBug:]):
3777         * WebCoreSupport/WebChromeClient.mm:
3778         (WebChromeClient::selectItemWritingDirectionIsNatural):
3779         (WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection):
3780         * WebCoreSupport/WebEditorClient.mm:
3781         (core):
3782         (WebEditorClient::checkTextOfParagraph):
3783         (WebEditorClient::requestCheckingOfString):
3784         * WebView/WebDynamicScrollBarsView.mm:
3785         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
3786         * WebView/WebFullScreenController.mm:
3787         (-[WebFullScreenController _updateMenuAndDockForFullScreen]):
3788         * WebView/WebHTMLView.mm:
3789         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]):
3790         (-[WebHTMLView _frameOrBoundsChanged]):
3791         (+[WebHTMLView _insertablePasteboardTypes]):
3792         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
3793         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
3794         (writingDirectionKeyBindingsEnabled):
3795         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
3796         (-[WebHTMLView attachRootLayer:]):
3797         * WebView/WebHTMLViewInternal.h:
3798         * WebView/WebPDFDocumentExtras.mm:
3799         * WebView/WebPreferences.mm:
3800         (+[WebPreferences initialize]):
3801         * WebView/WebResourceInternal.h:
3802         * WebView/WebScriptDebugDelegate.h:
3803         * WebView/WebView.mm:
3804         (-[WebView _commonInitializationWithFrameName:groupName:]):
3805         (-[WebView _preferencesChanged:]):
3806         (+[WebView initialize]):
3807         (clientNeedsWebViewInitThreadWorkaround):
3808         (-[WebView validateUserInterfaceItemWithoutDelegate:]):
3809         (-[WebView setGrammarCheckingEnabled:]):
3810         (-[WebView isAutomaticQuoteSubstitutionEnabled]):
3811         (-[WebView isAutomaticLinkDetectionEnabled]):
3812         (-[WebView isAutomaticDashSubstitutionEnabled]):
3813         (-[WebView isAutomaticTextReplacementEnabled]):
3814         (-[WebView isAutomaticSpellingCorrectionEnabled]):
3815         (-[WebView _searchWithSpotlightFromMenu:]):
3816         (WebInstallMemoryPressureHandler):
3817         * WebView/WebViewPrivate.h:
3818
3819 2013-04-01  Tim Horton  <timothy_horton@apple.com>
3820
3821         WebCache should do the normal initialization dance
3822         https://bugs.webkit.org/show_bug.cgi?id=113722
3823         <rdar://problem/13424530>
3824
3825         Reviewed by Anders Carlsson.
3826
3827         In case a WebKit1 client uses WebCache before creating a WebView (or any of the other
3828         initialization-ready classes), we should do the initialization work in WebCache as well.
3829
3830         * Misc/WebCache.mm:
3831         (+[WebCache initialize]):
3832
3833 2013-03-26  Timothy Hatcher  <timothy@apple.com>
3834
3835         Add support for dock-to-right of the Web Inspector in the Mac port.
3836
3837         Unfortunately this requires Safari changes, so it is disabled in the nightly builds.
3838
3839         https://webkit.org/b/113341
3840         rdar://problem/10368152
3841
3842         Reviewed by Joseph Pecoraro.
3843
3844         * Resources/Dock.pdf: Updated.
3845         * WebCoreSupport/WebInspectorClient.h:
3846         (WebInspectorFrontendClient):
3847         * WebCoreSupport/WebInspectorClient.mm:
3848         (WebInspectorFrontendClient::frontendLoaded):
3849         (WebInspectorFrontendClient::attachWindow):
3850         (WebInspectorFrontendClient::setAttachedWindowWidth):
3851         (-[WebInspectorWindowController attachWindow:]):
3852         (-[WebInspectorWindowController attach]):
3853         (-[WebInspectorWindowController detach]):
3854         * WebInspector/WebInspectorFrontend.mm:
3855         (-[WebInspectorFrontend attach]):
3856
3857 2013-03-26  Tim Horton  <timothy_horton@apple.com>
3858
3859         Unreviewed attempted cr-mac build fix.
3860
3861         * WebCoreSupport/WebSystemInterface.mm:
3862         (InitWebCoreSystemInterface):
3863
3864 2013-03-26  Hayato Ito  <hayato@chromium.org>
3865
3866         Allow ShadowContents in HitTests by default.
3867         https://bugs.webkit.org/show_bug.cgi?id=113171
3868
3869         Reviewed by Dimitri Glazkov.
3870
3871         * WebView/WebFrame.mm:
3872         (-[WebFrame elementAtPoint:]):
3873         * WebView/WebHTMLView.mm:
3874         (-[WebHTMLView elementAtPoint:allowShadowContent:]):
3875
3876 2013-03-26  Tim Horton  <timothy_horton@apple.com>
3877
3878         [ca] Tell CA to clean up unused resources if a given WebProcess won't be drawing
3879         https://bugs.webkit.org/show_bug.cgi?id=107539
3880         <rdar://problem/13032692>
3881
3882         Reviewed by Simon Fraser.
3883
3884         Update WebSystemInterface.
3885
3886         * WebCoreSupport/WebSystemInterface.mm:
3887         (InitWebCoreSystemInterface):
3888
3889 2013-03-26  Sergio Villar Senin  <svillar@igalia.com>
3890
3891         Implement overtype mode for editable content
3892         https://bugs.webkit.org/show_bug.cgi?id=112126
3893
3894         Reviewed by Ryosuke Niwa.
3895
3896         Added the OverWrite editing command to the WebCore editing
3897         commands lists.
3898
3899         * WebView/WebHTMLView.mm:
3900         * WebView/WebView.h:
3901         * WebView/WebView.mm:
3902
3903 2013-03-25  Kent Tamura  <tkent@chromium.org>
3904
3905         Rename ENABLE_INPUT_TYPE_DATETIME
3906         https://bugs.webkit.org/show_bug.cgi?id=113254
3907
3908         Reviewed by Kentaro Hara.
3909
3910         Rename ENABLE_INPUT_TYPE_DATETIME to ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE.
3911         Actually I'd like to remove the code, but we shouldn't remove it yet
3912         because we shipped products with it on some platforms.
3913
3914         * Configurations/FeatureDefines.xcconfig:
3915
3916 2013-03-21  Kiran Muppala  <cmuppala@apple.com>
3917
3918         Add runtime setting for hidden page DOM timer throttling and CSS animation suspension
3919         https://bugs.webkit.org/show_bug.cgi?id=112308
3920
3921         Reviewed by Gavin Barraclough.
3922
3923         Add private preference for enabling/disabling hidden page DOM timer
3924         throttling and CSS animation suspension.  The preference should be
3925         disabled by default to avoid compatibility issues.
3926
3927         * WebView/WebPreferenceKeysPrivate.h:
3928         * WebView/WebPreferences.mm:
3929         (+[WebPreferences initialize]):
3930         (-[WebPreferences hiddenPageDOMTimerThrottlingEnabled]):
3931         (-[WebPreferences setHiddenPageDOMTimerThrottlingEnabled:]):
3932         (-[WebPreferences hiddenPageCSSAnimationSuspensionEnabled]):
3933         (-[WebPreferences setHiddenPageCSSAnimationSuspensionEnabled:]):
3934         * WebView/WebPreferencesPrivate.h:
3935         * WebView/WebView.mm:
3936         (-[WebView _preferencesChanged:]):
3937
3938 2013-03-19  Ryosuke Niwa  <rniwa@webkit.org>
3939
3940         Another Mac build fix attempt after r146239.
3941
3942         * WebCoreSupport/WebFrameNetworkingContext.h:
3943         (WebFrameNetworkingContext):
3944
3945 2013-03-19  Ryosuke Niwa  <rniwa@webkit.org>
3946
3947         Mac build fix attempt after r146239.
3948
3949         * WebCoreSupport/WebFrameNetworkingContext.h:
3950
3951 2013-03-19  Sergey Ryazanov  <serya@chromium.org>
3952
3953         Web Inspector: split Console into two entities, a web-facing bound object and page console.
3954         https://bugs.webkit.org/show_bug.cgi?id=111578
3955
3956         Reviewed by Vsevolod Vlasov.
3957
3958         Otherwise, a lot of logging in WebCore needs to go through the DOMWindow which is unnecessary.
3959
3960         * Misc/WebCoreStatistics.mm:
3961         (+[WebCoreStatistics shouldPrintExceptions]):
3962         (+[WebCoreStatistics setShouldPrintExceptions:]):
3963
3964 2013-03-17  Adam Barth  <abarth@webkit.org>
3965
3966         Legacy CSS vendor prefixes should only work for Dashboard
3967         https://bugs.webkit.org/show_bug.cgi?id=111890
3968
3969         Reviewed by Eric Seidel.
3970
3971         Enable legacy CSS vendor prefixes when we've been asked to turn on
3972         Dashboard compatibility mode.
3973
3974         * WebView/WebView.mm:
3975         (-[WebView _setDashboardBehavior:to:]):
3976
3977 2013-03-16  Pratik Solanki  <psolanki@apple.com>
3978
3979         Disable High DPI Canvas on iOS
3980         https://bugs.webkit.org/show_bug.cgi?id=112511
3981
3982         Reviewed by Joseph Pecoraro.
3983
3984         * Configurations/FeatureDefines.xcconfig:
3985
3986 2013-03-15  Timothy Hatcher  <timothy@apple.com>
3987
3988         Disable suppressesIncrementalRendering for the Web Inspector.
3989
3990         This ends up causing the Inspector to show blank for a couple seconds before
3991         it does its first paint. During that time the bare window chrome is showing
3992         when the Inspector's background and other simple elements count be painting.
3993         This causes the Inspector to look like it is loading slower than reality.
3994
3995         https://bugs.webkit.org/show_bug.cgi?id=112300
3996         rdar://problem/13412219
3997  
3998         Reviewed by Geoff Garen.
3999
4000         * WebCoreSupport/WebInspectorClient.mm:
4001         (-[WebInspectorWindowController init]): Disable suppressesIncrementalRendering.
4002
4003 2013-03-15  Nate Chapin  <japhet@chromium.org>
4004
4005         Hide MainResourceLoader from the outside world
4006         https://bugs.webkit.org/show_bug.cgi?id=109971
4007
4008         Reviewed by Adam Barth.
4009
4010         * WebCoreSupport/WebFrameLoaderClient.h:
4011         (WebFrameLoaderClient):
4012         * WebCoreSupport/WebFrameLoaderClient.mm:
4013         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
4014
4015 2013-03-15  Abhishek Arya  <inferno@chromium.org>
4016
4017         Replace static_casts with to* helper functions.
4018         https://bugs.webkit.org/show_bug.cgi?id=112401
4019
4020         Reviewed by Stephen Chenney.
4021
4022         to* helper functions are preferred over static_cast calls since they
4023         help to catch bad casts easily on the testing infrastructure.
4024
4025         * WebView/WebRenderNode.mm:
4026         (copyRenderNode):
4027         * WebView/WebView.mm:
4028         (-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]):
4029
4030 2013-03-14  Manuel Rego Casasnovas  <rego@igalia.com>
4031
4032         Add selectTrailingWhitespaceEnabled setting to WebCore::Page
4033         https://bugs.webkit.org/show_bug.cgi?id=109404
4034
4035         Reviewed by Tony Chang.
4036
4037         Use new settings for smartInsertDeleteEnabled and
4038         selectTrailingWhitespaceEnabled.
4039
4040         * WebCoreSupport/WebEditorClient.mm:
4041         (WebEditorClient::smartInsertDeleteEnabled):
4042         (WebEditorClient::isSelectTrailingWhitespaceEnabled):
4043         * WebView/WebView.mm:
4044         (-[WebView _commonInitializationWithFrameName:groupName:]): Initialize
4045         settings from NSUserDefaults.
4046         (-[WebView setSelectTrailingWhitespaceEnabled:]):
4047         (-[WebView isSelectTrailingWhitespaceEnabled]):
4048         (-[WebView setSmartInsertDeleteEnabled:]):
4049         (-[WebView smartInsertDeleteEnabled]):
4050         * WebView/WebViewData.h:
4051         * WebView/WebViewData.mm:
4052         (-[WebViewPrivate init]):
4053
4054 2013-03-14  Abhishek Arya  <inferno@chromium.org>
4055
4056         Replace static_casts with to* helper functions.
4057         https://bugs.webkit.org/show_bug.cgi?id=112296
4058
4059         Reviewed by Kentaro Hara.
4060
4061         to* helper functions are preferred over static_cast calls since they
4062         help to catch bad casts easily on the testing infrastructure.
4063
4064         * WebCoreSupport/WebFrameLoaderClient.mm:
4065         (applyAppleDictionaryApplicationQuirkNonInlinePart):
4066         * WebView/WebHTMLRepresentation.mm:
4067         (searchForLabelsBeforeElement):
4068
4069 2013-03-14  Alice Liu  <alice.liu@apple.com>
4070
4071         Add to HistoryItem a way to know if its underlying CachedPage has expired.
4072         https://bugs.webkit.org/show_bug.cgi?id=110652
4073
4074         Reviewed by Brady Eidson.
4075
4076         * History/WebHistoryItem.mm:
4077         (-[WebHistoryItem _isInPageCache]): Added. Just calls and returns core imple's function. 
4078         (-[WebHistoryItem _hasCachedPageExpired]): Same thing. 
4079         * History/WebHistoryItemPrivate.h:
4080         * WebView/WebPreferences.mm:
4081         (-[WebPreferences _backForwardCacheExpirationInterval]): Address fixme, now that WebCore::Settings
4082         has getters and setters with default value.
4083         * WebView/WebView.mm:
4084         (-[WebView _preferencesChanged:]): call setBackForwardCacheExpirationInterval similar to other settings.
4085
4086 2013-03-13  Rik Cabanier  <cabanier@adobe.com>
4087
4088         create runtime flags for CSS Compositing
4089         https://bugs.webkit.org/show_bug.cgi?id=111818
4090
4091         Reviewed by Ryosuke Niwa.
4092
4093         Added a preference to enable CSS compositing.
4094
4095         * WebView/WebPreferenceKeysPrivate.h:
4096         * WebView/WebPreferences.mm:
4097         (+[WebPreferences initialize]):
4098         (-[WebPreferences cssCompositingEnabled]):
4099         (-[WebPreferences setCSSCompositingEnabled:]):
4100         * WebView/WebPreferencesPrivate.h:
4101         * WebView/WebView.mm:
4102         (-[WebView _preferencesChanged:]):
4103
4104 2013-03-13  Ryosuke Niwa  <rniwa@webkit.org>
4105
4106         Threaded HTML Parser is missing feature define flags in all but Chromium port's build files
4107         https://bugs.webkit.org/show_bug.cgi?id=112277
4108
4109         Reviewed by Adam Barth.
4110
4111         * Configurations/FeatureDefines.xcconfig:
4112
4113 2013-03-13  Pavel Feldman  <pfeldman@chromium.org>
4114
4115         Web Inspector: get rid of hiddenPanels filter
4116         https://bugs.webkit.org/show_bug.cgi?id=112252
4117
4118         Reviewed by Vsevolod Vlasov.
4119
4120         * WebCoreSupport/WebInspectorClient.h:
4121         (WebInspectorFrontendClient):
4122         * WebCoreSupport/WebInspectorClient.mm:
4123         * WebKit.order:
4124
4125 2013-03-12  Geoffrey Garen  <ggaren@apple.com>
4126
4127         Moved RunLoopTimer and SchedulePair to WTF
4128         https://bugs.webkit.org/show_bug.cgi?id=112171
4129
4130         Reviewed by Oliver Hunt.
4131
4132         This will allow us to use timers in lower level primitives without
4133         duplicating all the code.
4134
4135         * WebCoreSupport/WebFrameNetworkingContext.h:
4136         (WebFrameNetworkingContext):
4137
4138 2013-03-12  Abhishek Arya  <inferno@chromium.org>
4139
4140         Replace static_casts with to* functions.
4141         https://bugs.webkit.org/show_bug.cgi?id=112072
4142
4143         Reviewed by Philip Rogers.
4144
4145         to* functions are preferred over static_cast calls since they
4146         help to catch bad casts easily on the testing infrastructure.
4147
4148         * WebView/WebView.mm: