1f4e3c443d31f628f47f52da4949ad086c95120c
[WebKit-https.git] / Source / WebKit / mac / ChangeLog
1 2011-01-25  Darin Adler  <darin@apple.com>
2
3         Reviewed by Anders Carlsson.
4
5         WebKit is using CSBackupSetItemExcluded incorrectly
6         https://bugs.webkit.org/show_bug.cgi?id=53095
7         rdar://problem/8790540
8
9         * Misc/WebIconDatabase.mm:
10         (importToWebCoreFormat): Removed code that was calling CSBackupSetItemExcluded.
11         It was incorrect, and this responsibility has been moved to WebCore.
12
13 2011-01-24  Chris Marrin  <cmarrin@apple.com>
14
15         Reviewed by Eric Seidel.
16
17         Change ENABLE_3D_CANVAS to ENABLE_WEBGL
18         https://bugs.webkit.org/show_bug.cgi?id=53041
19
20         * Configurations/FeatureDefines.xcconfig:
21
22 2011-01-25  Yury Semikhatsky  <yurys@chromium.org>
23
24         Reviewed by Pavel Feldman.
25
26         Web Inspector: remove "attached" state related methods from InspectorAgent
27         https://bugs.webkit.org/show_bug.cgi?id=53086
28
29         * WebCoreSupport/WebInspectorClient.h:
30         * WebCoreSupport/WebInspectorClient.mm:
31         (-[WebInspectorWindowController showWindow:]):
32         (-[WebInspectorWindowController attach]):
33         (-[WebInspectorWindowController detach]):
34
35 2011-01-23  Dan Bernstein  <mitz@apple.com>
36
37         Reviewed by John Sullivan.
38
39         <rdar://problem/6097826> Mail's cursor does not become a resize cursor when moving mouse from scrolled email to the horizontal splitter
40
41         * WebCoreSupport/WebChromeClient.mm:
42         (WebChromeClient::setCursor): If the current cursor comes from a cursor rect, do not override it.
43
44 2011-01-22  Alexey Proskuryakov  <ap@apple.com>
45
46         Reviewed by Darin Adler.
47
48         https://bugs.webkit.org/show_bug.cgi?id=52473
49         Auto-scaling to avoid orphans is broken, remove dysfunctional code
50
51         * WebView/WebHTMLView.mm:
52         (-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
53         (-[WebHTMLView _scaleFactorForPrintOperation:]):
54         (-[WebHTMLView knowsPageRange:]):
55
56 2011-01-21  Mark Rowe  <mrowe@apple.com>
57
58         Rubber-stamped by Jon Honeycutt.
59
60         Fix the build when using Clang by removing some unused variables.
61
62         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
63         (-[WebHostedNetscapePluginView updateAndSetWindow]):
64         * WebView/WebFullScreenController.mm:
65         (-[WebFullScreenController enterFullscreen:]):
66         (-[WebFullScreenController exitFullscreen]):
67
68 2011-01-21  Chris Rogers  <crogers@google.com>
69
70         Reviewed by Darin Fisher.
71
72         Add run-time enable support for the web audio API
73         https://bugs.webkit.org/show_bug.cgi?id=52741
74
75         * WebView/WebPreferenceKeysPrivate.h:
76         * WebView/WebPreferences.mm:
77         (-[WebPreferences webAudioEnabled]):
78         (-[WebPreferences setWebAudioEnabled:]):
79         * WebView/WebPreferencesPrivate.h:
80         * WebView/WebView.mm:
81         (-[WebView _preferencesChangedNotification:]):
82
83 2011-01-20  John Sullivan  <sullivan@apple.com>
84
85         Reviewed by Mark Rowe.
86
87         Shift-tab doesn't cycle through fields in http authentication panel
88         https://bugs.webkit.org/show_bug.cgi?id=52850
89
90         * Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib:
91         * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib:
92         Re-wired the key loop so that there aren't two views with the same nextKeyView.
93
94 2011-01-20  Beth Dakin  <bdakin@apple.com>
95
96         Reviewed by Geoffrey Garen.
97
98         Fix for <rdar://problem/8890255>
99
100         Allow WebKitSystemInterface to draw scrollbars 
101         when appropriate.
102         * WebCoreSupport/WebSystemInterface.mm:
103         (InitWebCoreSystemInterface):
104
105 2011-01-19  Simon Fraser  <simon.fraser@apple.com>
106
107         Reviewed by Sam Weinig.
108
109         GraphicsLayers in subframes can get sync'd multiple times
110         https://bugs.webkit.org/show_bug.cgi?id=52489
111
112         * WebView/WebView.mm:
113         (-[WebView _syncCompositingChanges]): syncCompositingStateRecursive()
114         was renamed to syncCompositingStateIncludingSubframes().
115
116 2011-01-19  Darin Adler  <darin@apple.com>
117
118         Reviewed by Sam Weinig.
119
120         Would like script debugging protocol method to differentiate between caught and uncaught exceptions
121         https://bugs.webkit.org/show_bug.cgi?id=52104
122         rdar://problem/8704226
123
124         * WebView/WebDelegateImplementationCaching.h:
125         Fix type of second integer in CallScriptDebugDelegate function overload
126         to be int to match the actual Objective-C method. Added a new overload
127         that includes a BOOL in the right place. Added a boolean named
128         exceptionWasRaisedExpectsHasHandlerFlag.
129
130         * WebView/WebDelegateImplementationCaching.mm:
131         (CallDelegate): Added overloads as above.
132         (CallScriptDebugDelegate): Ditto.
133
134         * WebView/WebScriptDebugDelegate.h: Added new method with the additional
135         boolean argument. Marked the old method informally deprecated.
136
137         * WebView/WebScriptDebugger.mm:
138         (WebScriptDebugger::exception): Added code to call with or without the
139         boolean depending on exceptionWasRaisedExpectsHasHandlerFlag.
140
141         * WebView/WebView.mm:
142         (-[WebView _cacheScriptDebugDelegateImplementations]): Set up the
143         exceptionWasRaisedExpectsHasHandlerFlag. Also fixed old code that was not
144         guaranteed to set didParseSourceExpectsBaseLineNumber to NO.
145
146 2011-01-19  Tony Gentilcore  <tonyg@chromium.org>
147
148         Reviewed by Mihai Parparita.
149
150         Perform some forward declaration
151         https://bugs.webkit.org/show_bug.cgi?id=52522
152
153         * Misc/WebKitNSStringExtras.mm:
154
155 2011-01-19  Pavel Podivilov  <podivilov@chromium.org>
156
157         Reviewed by Yury Semikhatsky.
158
159         Web Inspector: [JSC] scripts have incorrect starting line (always 1).
160         https://bugs.webkit.org/show_bug.cgi?id=52721
161
162         * WebView/WebScriptDebugger.h:
163         * WebView/WebScriptDebugger.mm:
164         (toNSString):
165         (WebScriptDebugger::sourceParsed):
166
167 2011-01-19  Levi Weintraub  <leviw@google.com>
168
169         Reviewed by Ryosuke Niwa.
170
171         Updating to use Position::parentAnchoredEquivalent instead of
172         the old htmlediting rangeCompliantEquivalent.
173
174         remove rangeCompliantEquivalent and replace it with Position methods
175         https://bugs.webkit.org/show_bug.cgi?id=25057
176
177         * WebView/WebFrame.mm:
178         (-[WebFrame _smartDeleteRangeForProposedRange:]):
179
180 2011-01-18  Chris Fleizach  <cfleizach@apple.com>
181
182         Reviewed by Darin Adler.
183
184         REGRESSION: A problem with Voiceover and finding links
185         https://bugs.webkit.org/show_bug.cgi?id=52324
186
187         * WebView/WebDynamicScrollBarsView.mm:
188         (-[WebDynamicScrollBarsView accessibilityIsIgnored]):
189
190 2011-01-17  David Kilzer  <ddkilzer@apple.com>
191
192         <http://webkit.org/b/52596> Add missing DOMDocument/DOMDocumentFragment headers to Xcode project
193
194         Reviewed by Dan Bernstein.
195
196         * MigrateHeaders.make: Copy DOMDocumentFragmentPrivate.h and
197         DOMDocumentPrivate.h to the PrivateHeaders directory.
198
199 2011-01-17  Enrica Casucci  <enrica@apple.com>
200
201         Reviewed by Alexey Proskuryakov.
202
203         Drag and drop support: refactoring of image from link and image from selection
204         https://bugs.webkit.org/show_bug.cgi?id=52496
205
206         This work cleans up the Mac code and makes it more similar to the Windows implementation,
207         avoiding the use of an NSView when the FrameView can be used.
208         The refactoring is a necessary step towards the complete support of drag and drop
209         in WebKit2.
210
211         * WebCoreSupport/WebDragClient.mm:
212         (WebDragClient::createDragImageForLink): Added.
213         * WebView/WebHTMLView.mm: Removed dragImageFromLink and dragImageFromURL.
214         * WebView/WebHTMLViewPrivate.h: Removed dragImageFromLink and dragImageFromURL.
215
216 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
217
218         Reviewed by Yury Semikhatsky.
219
220         Web Inspector: simplify debugger enabling routine.
221         https://bugs.webkit.org/show_bug.cgi?id=52472
222
223         * WebInspector/WebInspector.mm:
224         (-[WebInspector startDebuggingJavaScript:]):
225
226 2011-01-16  Dan Bernstein  <mitz@apple.com>
227
228         Reviewed by Simon Fraser.
229
230         Assertion failure (!inSetWindow) with in-process plug-in in plugins/destroy-on-setwindow.html
231         https://bugs.webkit.org/show_bug.cgi?id=52550
232
233         * Plugins/WebNetscapePluginView.mm:
234         (-[WebNetscapePluginView setWindowIfNecessary]): Removed the assertion, making sure
235         that inSetWindow remains YES until we exit the top-level setWindowIfNecessary.
236
237 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
238
239         Reviewed by Dan Bernstein.
240
241         Issues with iframes and plugins when the WebView is scaled.
242         <rdar://problem/6213380>
243         
244         When _scaleWebView has been called on a WebView, iframes
245         in WebKit1 render and hit-test incorrectly, and plug-ins don't scale up.
246         This is caused by AppKit NSViews not playing nicely with the scale
247         applied through style.
248         
249         Work around most of these issues by adjusting the bounds size
250         of widgets to allow iframe contents to paint with the correct scale,
251         and fix various places in the code where we relied on coordinate
252         transforms via NSViews (which ignore CSS transforms).
253
254         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
255         (-[WebHostedNetscapePluginView updateAndSetWindow]):
256         * WebView/WebFrameView.mm:
257         (-[WebFrameView setBoundsSize:]):
258
259 2011-01-16  Beth Dakin  <bdakin@apple.com>
260
261         Reviewed by Kevin Decker.
262
263         Fix for <rdar://problem/8871204>
264
265         Don't try to save elasticity state. Just rely on
266         NSScrollElasticityAutomatic to restore the correct state.
267         * WebCoreSupport/WebFrameLoaderClient.h:
268         * WebCoreSupport/WebFrameLoaderClient.mm:
269         (WebFrameLoaderClient::WebFrameLoaderClient):
270         (WebFrameLoaderClient::dispatchDidFirstLayout):
271         (WebFrameLoaderClient::provisionalLoadStarted):
272
273 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
274
275         Reviewed by Dan Bernstein.
276
277         Plugins render incorrectly with transformed ancestors
278         https://bugs.webkit.org/show_bug.cgi?id=52507
279         
280         -[NSView visibleRect] gives the wrong answer if there are CSS transforms
281         in the ancestor chain of a plugin.
282         
283         So use of this method with calls to -actualVisibleRectInWindow, which
284         maps rects through the render tree to compute the correct rect,
285         clipping via windowClipRect() if necessary.
286         
287         Not testable, because doing so relies on the behavior of some
288         plugins, which stop rendering if setWindow passes an empty rect.
289
290         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
291         (-[WebHostedNetscapePluginView updateAndSetWindow]):
292         * Plugins/WebBaseNetscapePluginView.h:
293         * Plugins/WebBaseNetscapePluginView.mm:
294         (-[WebBaseNetscapePluginView actualVisibleRectInWindow]):
295         * Plugins/WebNetscapePluginView.mm:
296         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
297
298 2011-01-14  Yuzo Fujishima  <yuzo@google.com>
299
300         Reviewed by Antti Koivisto.
301
302         Rename cache() to memoryCache()
303         https://bugs.webkit.org/show_bug.cgi?id=52433
304
305         * Misc/WebCache.mm:
306         (+[WebCache statistics]):
307         (+[WebCache setDisabled:]):
308         (+[WebCache isDisabled]):
309         * WebView/WebView.mm:
310         (+[WebView _setCacheModel:]):
311
312 2011-01-13  Geoffrey Garen  <ggaren@apple.com>
313
314         Reviewed by Oliver Hunt.
315
316         Split out a MarkedSpace strategy object from Heap.
317         https://bugs.webkit.org/show_bug.cgi?id=52421
318
319         * Misc/WebCoreStatistics.mm:
320         (+[WebCoreStatistics memoryStatistics]): Updated for class move.
321
322 2011-01-14  Dan Bernstein  <mitz@apple.com>
323
324         Reviewed by Simon Fraser.
325
326         WebKit/mac part of <rdar://problem/8441312> Crash in -[NSView _invalidateGStatesForTree]
327
328         * WebView/WebHTMLView.mm:
329         (-[WebHTMLView _invalidateGStatesForTree]): Override this NSView method, and bracket the call
330         to the superclass implementation with suspending WebCore Widget hierarchy updates. This ensures
331         that the NSView tree doesn’t change from under AppKit as it traverses it.
332
333 2011-01-14  Beth Dakin  <bdakin@apple.com>
334
335         Reviewed by Mark Rowe.
336
337         Fix for <rdar://problem/7793902> Artifacts when scrolling
338         page in Safari while page is loading
339
340         Call setDrawsBackground:YES on the scrollView in 
341         dispatchDidFirstLayout() rather than waiting until
342         frameLoadCompleted(). Also suspend scrolling elasticity
343         between provisionalLoadStarted() and dispatchDidFirstLayout()
344         * WebCoreSupport/WebFrameLoaderClient.h:
345         * WebCoreSupport/WebFrameLoaderClient.mm:
346         (WebFrameLoaderClient::WebFrameLoaderClient):
347         (WebFrameLoaderClient::dispatchDidFirstLayout):
348         (WebFrameLoaderClient::provisionalLoadStarted):
349
350 2011-01-12  Enrica Casucci  <enrica@apple.com>
351
352         Reviewed by Darin Adler.
353
354         WebKit2: Add support for drag and drop
355         https://bugs.webkit.org/show_bug.cgi?id=52343
356         <rdar://problem/7660558>
357         
358         The DragData class has been extended to provide
359         additional context from the application (keyboard state, modal windows, etc.)
360         as well as information of the drag pasteboard being used.
361         These are the changes to align the behavior for WebKit.
362
363         * WebView/WebView.mm:
364         (-[WebView applicationFlags:]): Added.
365         (-[WebView draggingEntered:]): Added parameter to the DragData constructor.
366         (-[WebView draggingUpdated:]): Added parameter to the DragData constructor.
367         (-[WebView draggingExited:]): Added parameter to the DragData constructor.
368         (-[WebView performDragOperation:]): Added parameter to the DragData constructor.
369
370 2011-01-12  Beth Dakin  <bdakin@apple.com>
371
372         Reviewed by Anders Carlsson.
373
374         Add-on for https://bugs.webkit.org/show_bug.cgi?id=52309 
375         Expose fixed layout through WebKit SPI
376         -and corresponding-
377         <rdar://problem/8844464>
378
379         And now with getters!
380         * WebView/WebView.mm:
381         (-[WebView _useFixedLayout]):
382         (-[WebView _fixedLayoutSize]):
383         * WebView/WebViewPrivate.h:
384
385 2011-01-12  Beth Dakin  <bdakin@apple.com>
386
387         Reviewed by Anders Carlsson.
388
389         Fix for https://bugs.webkit.org/show_bug.cgi?id=52309 Expose
390         fixed layout through WebKit SPI
391         -and corresponding-
392         <rdar://problem/8844464>
393
394         * WebView/WebView.mm:
395         (-[WebView _setUseFixedLayout:]):
396         (-[WebView _setFixedLayoutSize:]):
397         * WebView/WebViewPrivate.h:
398
399 2011-01-07  Enrica Casucci  <enrica@apple.com>
400
401         Reviewed by Alexey Proskuryakov.
402
403         Paste and drag and drop use different code paths to interact with the pasteboard.
404         https://bugs.webkit.org/show_bug.cgi?id=52093
405         The change consists in a refactoring of the code to have only one class that
406         deals with the pasteboard on Mac.
407
408         * WebCoreSupport/WebEditorClient.h:
409         * WebCoreSupport/WebEditorClient.mm: Added two methods to provide to WebCore functionality
410         exposed by NSURLExtras.
411         (WebEditorClient::canonicalizeURL):
412         (WebEditorClient::canonicalizeURLString):
413         * WebCoreSupport/WebPasteboardHelper.h: Removed.
414         * WebCoreSupport/WebPasteboardHelper.mm: Removed.
415         * WebView/WebHTMLView.mm: Removed comment.
416         * WebView/WebView.mm: The following methods have been changed to use the new DragData
417         constructor that doesn't use the WebPasteboardHelper reference.
418         (-[WebView draggingEntered:]):
419         (-[WebView draggingUpdated:]):
420         (-[WebView draggingExited:]):
421         (-[WebView performDragOperation:]):
422
423 2011-01-09  Tony Gentilcore  <tonyg@chromium.org>
424
425         Reviewed by Alexey Proskuryakov.
426
427         Forward declare some headers where possible
428         https://bugs.webkit.org/show_bug.cgi?id=52133
429
430         * WebView/WebFrame.mm:
431
432 2011-01-09  Xianzhu Wang <phnixwxz@gmail.com>
433
434         Reviewed by Darin Fisher.
435
436         https://bugs.webkit.org/show_bug.cgi?id=41441
437         createWindow method should only do window-creating without URL navigation
438
439         * WebCoreSupport/WebChromeClient.mm:
440         (WebChromeClient::createWindow):
441
442 2011-01-08  Dan Bernstein  <mitz@apple.com>
443
444         Try to fix the Leopard build.
445
446         * WebView/WebFullScreenController.mm:
447
448 2011-01-07  Jer Noble  <jer.noble@apple.com>
449
450         Yet another Leopard build fix: NSRect and CGRect are not inter-
451         changable in 32-bit.  
452         
453         * WebView/WebFullScreenController.mm:
454         (-[WebFullScreenController exitFullscreen]):
455
456 2011-01-07  Jer Noble  <jer.noble@apple.com>
457
458         Fix the Leopard build: Replace CoreAnimation SL-only functions
459         with Leopard equivalents.
460
461         * WebView/WebFullScreenController.mm:
462         (+[CATransaction setDisableActions:]):
463         (+[CATransaction setAnimationDuration:]):
464         (-[WebFullScreenController _animationDuration]):
465         (-[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:]):
466
467 2010-12-21  Jer Noble  <jer.noble@apple.com>
468
469         Reviewed by Simon Fraser.
470
471         Implement WebKit Full Screen support.
472         https://bugs.webkit.org/show_bug.cgi?id=49481
473         rdar://problem/8247444
474
475         Support the new fullscreen Chrome client requests.  WebView will pass
476         through these requests to a WebFullscreenController.
477
478         * WebCoreSupport/WebChromeClient.h: Add fullScreenRendererChanged().
479         * WebView/WebView.mm:
480         (-[WebView _supportsFullScreenForElement:WebCore::]): Check to see if the fullscreen pref has been enabled.
481         (-[WebView _enterFullScreenForElement:WebCore::]): Create a WebFullScreenController.
482         (-[WebView _exitFullScreenForElement:WebCore::]): Request that the WebFullScreenController exit fullscreen.
483         (-[WebView _fullScreenRendererChanged:WebCore::]): Notify the WebFullScreenController that its renderer has changed.
484         * WebView/WebViewData.h: Add ivar newFullscreenController.
485
486 2010-12-17  Jer Noble  <jer@kokode.apple.com>
487
488         Reviewed by Simon Fraser.
489
490         Implement WebKit Full Screen support.
491         https://bugs.webkit.org/show_bug.cgi?id=49481
492         rdar://problem/8247444
493         
494         This patch implements the FullScreen APIs using the new RenderFullScreen renderer and the new
495         Document client APIs. The RenderFullScreen renderer's CALayer is hosted in a new, fullscreen
496         window, and a custom CAAnimation animates that layer between the initial screen rect of the
497         full screen element, to its final value. WebFullscreenController will swap the WebView out of
498         its original window, and into the fullscreen window. The controller will replace the WebView
499         with a placeholder view, so that if the placeholder moves or resized while the WebView is
500         absent, the WebView will move back to the correct location when exiting fullscreen.
501
502         * WebView/WebFullscreenController.h: Added.
503         * WebView/WebFullscreenController.mm: Added.
504         (-[WebFullscreenController windowDidExitFullscreen:]):  Close the fullscreen window.
505         (-[WebFullscreenController windowDidEnterFullscreen:]): Swap the webView back into the fullscreen window. 
506         (-[WebFullscreenController animationDidStop:finished:]): Call windowDid{Exit|Enter}FullScreen as appropriate.
507         (-[WebFullscreenController applicationDidResignActive:]):
508         (-[WebFullscreenController applicationDidChangeScreenParameters:]): Resize the fullscreen window to match
509             the new screen parameters.
510         (-[WebFullscreenController enterFullscreen:]):  Set up the animation that will take the fullscreen element
511             from its original screen rect into fullscreen.
512         (-[WebFullscreenController exitFullscreen]): Swap the webView back into its original window.
513             Set up the animation that will take the fullscreen element back into its original screen
514             rect.
515         (-[WebFullscreenController _updatePowerAssertions]): Now checks _isAnyMoviePlaying to determine 
516             whether to disable screensaver and sleep.
517         (-[WebFullscreenController _isAnyMoviePlaying]): Walks through the sub-tree starting at the fullscreen element
518             looking for HTMLVideoElements; returns whether any are found to be playing.
519         (-[WebFullscreenController _animationDuration]): Returns the current animation duration, affected by control
520             and shift keys.
521         (-[WebFullscreenWindow canBecomeKeyWindow]): Allow the window to become key.
522         (-[WebFullscreenWindow keyDown:]): Handle the 'Esc' key.
523         (-[WebFullscreenWindow cancelOperation:]): Request to exit fullscreen.
524         (-[WebFullscreenWindow rendererLayer]): Convenience accessor.
525         (-[WebFullscreenWindow setRendererLayer:]): Ditto.
526         (-[WebFullscreenWindow backgroundLayer]): Ditto.
527         (-[WebFullscreenWindow animationView]): Ditto.
528         (MediaEventListener::MediaEventListener): Implements the EventListener protocol.
529         (MediaEventListener::handleEvent): Tells its delegate to _updatePowerAssertions.
530         
531 2011-01-07  James Robinson  <jamesr@chromium.org>
532
533         Revert "Implement mozilla's animationTime property"
534         https://bugs.webkit.org/show_bug.cgi?id=51952
535
536         This approach isn't quite right.
537
538         * WebView/WebHTMLView.mm:
539         (-[WebHTMLView drawRect:]):
540         * WebView/WebView.mm:
541         (layerSyncRunLoopObserverCallBack):
542
543 2011-01-06  Gavin Barraclough  <barraclough@apple.com>
544
545         Reviewed by Geoff Garen.
546
547         Bug 52035 - Unregistering DOMWrapperWorlds is unsafe
548
549         The method DOMWrapperWorld::unregisterWorld() effectively calls the DOMWrapperWorld's
550         destructor early, in order to release wrappers once we know we no longer intend to use them.
551         Whilst it is okay to have a method to throw away wrappers (assuming we know we're willing to
552         lose any state stored on them) it is not okay to deregister the world from the JSGlobalData.
553         A sequence of events that triggers the bug would look like this:
554
555         (1) Create a DOMWrapperWorld.
556         (2) Register a timer in the world.
557         (3) Call unregisterWorld() on the world.
558         (4) Timer goes off, code is executed in the world, creates a Node not attached to a Document.
559         (5) We attempt to lookup a wrapper map for the world on the JSGlobalData, but because we've
560             called forgetWorld() none exists.
561         (6) Attempt to add a wrapper to a NULL map.
562
563         Fix the problem by not removing the JSGlobalData's wrapper map until the world really goes away.
564
565         * WebView/WebScriptWorld.mm:
566         (-[WebScriptWorld unregisterWorld]):
567
568 2011-01-04  Chris Fleizach  <cfleizach@apple.com>
569
570         Reviewed by Sam Weinig.
571
572         WK2: Support Accessibility
573         https://bugs.webkit.org/show_bug.cgi?id=51859
574
575         Use rootObject() method to get top of AX tree.
576
577         * WebCoreSupport/WebFrameLoaderClient.h:
578         (WebFrameLoaderClient::accessibilityRemoteObject):
579         * WebView/WebFrame.mm:
580         (-[WebFrame setAccessibleName:]):
581         (-[WebFrame accessibilityRoot]):
582         * WebView/WebFrameInternal.h:
583         * WebView/WebFramePrivate.h:
584         * WebView/WebHTMLView.mm:
585         (-[WebHTMLView accessibilityAttributeValue:]):
586         (-[WebHTMLView accessibilityFocusedUIElement]):
587         (-[WebHTMLView accessibilityHitTest:]):
588         (-[WebHTMLView _accessibilityParentForSubview:]):
589
590 2011-01-04  David Kilzer  <ddkilzer@apple.com>
591
592         <http://webkit.org/b/51889> WebFrameLoaderClient::createMediaPlayerProxyPlugin() should use WebCore::PluginInfo.name
593
594         Reviewed by Eric Carlson.
595
596         This originally broke in r61581.  It is inside an
597         ENABLE(PLUGIN_PROXY_FOR_VIDEO) macro, so it didn't break the Mac
598         build then.
599
600         * WebCoreSupport/WebFrameLoaderClient.mm: Call
601         (WebFrameLoaderClient::createMediaPlayerProxyPlugin): Updated to
602         use WebCore::PluginInfo.name instead of
603         -[WebBasePluginPackage name].
604
605 2011-01-02  Dan Bernstein  <mitz@apple.com>
606
607         Rubber-stamped by Simon Fraser.
608
609         <rdar://problem/8812159> Update copyright strings
610
611         * Info.plist:
612
613 2010-12-29  Dan Bernstein  <mitz@apple.com>
614
615         Reviewed by Ada Chan.
616
617         <rdar://problem/8758191> REGRESSION (r72887): Mail crashes when doing searches in a message due to method name conflict
618         https://bugs.webkit.org/show_bug.cgi?id=51717
619
620         Renamed -findString:options: to -_findString:options: in the WebDocumentOptionsSearching
621         protocol to avoid conflict with -[WebHTMLView(MailExtras) findString:options:] which Mail defines.
622
623         * WebView/WebDocumentInternal.h:
624         * WebView/WebHTMLView.mm:
625         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
626         (-[WebHTMLView _findString:options:]):
627         * WebView/WebView.mm:
628         (findString):
629
630 2010-12-28  Daniel Bates  <dbates@rim.com>
631
632         Reviewed by Sam Weinig.
633
634         Substitute // MARK: for compiler-specific #pragma mark
635         https://bugs.webkit.org/show_bug.cgi?id=51657
636
637         For consistency, we should substitute "// MARK:" for compiler-
638         specific "#pragma mark" in the source files for the Mac port.
639
640         * History/WebHistory.mm:
641         * Plugins/WebBaseNetscapePluginView.mm:
642         * Plugins/WebNetscapePluginView.mm:
643         * WebCoreSupport/WebInspectorClient.mm:
644         * WebCoreSupport/WebSecurityOrigin.mm:
645         * WebView/WebPDFView.mm:
646         * WebView/WebVideoFullscreenController.mm:
647         * WebView/WebVideoFullscreenHUDWindowController.mm:
648
649 2010-12-23  Yongjun Zhang  <yongjun_zhang@apple.com>
650
651         Reviewed by Darin Adler.
652
653         WebKit crashes at DebuggerCallFrame::functionName() if m_callFrame is the top global callframe.
654         https://bugs.webkit.org/show_bug.cgi?id=38535
655
656         WebScriptDebugger in WebKit has empty implementations for willExecuteProgram and didExecuteProgram.  As a result,
657         if the top call frame is from a program, WebKitScriptDebugger doesn't record that callframe as the top frame, and
658         WebScriptDebugger's callframe stack is wrong from this point.  That could cause crash if we trying to access the top
659         call frame from this stack when an exception throws because the saved top frame could be invalid.
660
661         To fix that, we need to maintain the call frame stack in willExecuteProgram and didExecuteProgram, as we did in
662         callEvent and returnEvent.
663
664         * WebView/WebScriptDebugger.mm:
665         (WebScriptDebugger::willExecuteProgram):
666         (WebScriptDebugger::didExecuteProgram):
667
668 2010-12-22  Sam Weinig  <sam@webkit.org>
669
670         Reviewed by Darin Adler.
671
672         WebKit2 needs to mirror the frame tree in the UIProcess
673         https://bugs.webkit.org/show_bug.cgi?id=51546
674
675         - Add client functions to notify that a frame has been added or
676           removed from the page cache.
677
678         * WebCoreSupport/WebFrameLoaderClient.h:
679         * WebCoreSupport/WebFrameLoaderClient.mm:
680         (WebFrameLoaderClient::didSaveToPageCache):
681         (WebFrameLoaderClient::didRestoreFromPageCache):
682
683 2010-12-22  Ryosuke Niwa  <rniwa@webkit.org>
684
685         Reviewed by Eric Seidel.
686
687         Editor.h doesn't need to include SelectionController.h
688         https://bugs.webkit.org/show_bug.cgi?id=51441
689
690         Renamed SelectionController::EDirection to SelectionDirection.
691
692         * WebView/WebFrame.mm:
693         (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:granularity:]):
694         Takes SelectionDirection instead of SelectionController::EDirection.
695         * WebView/WebFrameInternal.h:
696         * WebView/WebTextCompletionController.mm:
697         (-[WebTextCompletionController doCompletion]): Calls _rangeByAlteringCurrentSelection:SelectionController.
698
699 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
700
701         Reviewed by Darin Adler.
702
703         Cache snapshots of plug-ins before painting, to avoid script running during painting
704         https://bugs.webkit.org/show_bug.cgi?id=51493
705
706         When FrameView is asked to do a flattening paint (e.g. when Safari snapshots,
707         or when printing), plug-ins which otherwise use the CA rendering model
708         are sent a paint event. Some plug-ins may run script while handling this event,
709         or out of process plug-ins may process queued requests at this time. Running
710         script while inside layout or painting can have bad consequences, because it
711         can result in arbitrary changes to the render tree.
712         
713         This patch avoids sending plug-ins paint events inside of painting. Instead,
714         we ask the plug-ins to cache a snapshot before we paint, and then the software
715         paint simply draws that snapshot.
716
717         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
718         (-[WebHostedNetscapePluginView drawRect:]): If we have a cached snapshot,
719         draw it. Also only send the snapshot message to the plugin proxy if we
720         know we're snapshotting, since even if creating the snapshot image failed,
721         we still don't want to call to the plug-in.
722
723         * Plugins/WebBaseNetscapePluginView.h: Add a retained NSImage member for the snapshot.
724         * Plugins/WebBaseNetscapePluginView.mm:
725         (-[WebBaseNetscapePluginView cacheSnapshot]): Create an image and draw the snapshot into it.
726         (-[WebBaseNetscapePluginView clearCachedSnapshot]): Clear the snapshot.
727
728         * Plugins/WebNetscapePluginView.mm:
729         (-[WebNetscapePluginView drawRect:]): If we have a cached snapshot, use it.
730         * WebCoreSupport/WebFrameLoaderClient.mm:
731         (NetscapePluginWidget::notifyWidget): Implement notifyWidget() and use it
732         to cache and clear the snapshots.
733
734 2010-12-21  Cameron Zwarich  <zwarich@apple.com>
735
736         Reviewed by Darin Adler.
737
738         -[WebBasePluginPackage isNativeLibraryData:] integer underflows on zero-sized data
739         https://bugs.webkit.org/show_bug.cgi?id=51431
740         <rdar://problem/8791757>
741
742         * Plugins/WebBasePluginPackage.mm:
743         (-[WebBasePluginPackage isNativeLibraryData:]): Change an arithmetic expression so
744         it doesn't underflow.
745
746 2010-12-16  Ryosuke Niwa  <rniwa@webkit.org>
747
748         Reviewed by Cameron Zwarich.
749
750         REGRESSION(r74172): 125 java tests fail on Mac
751         https://bugs.webkit.org/show_bug.cgi?id=51214
752
753         The regression was caused by an incorrectly adding sizeof(struct fat_header)
754         to a pointer for uint32_t as supposed to uint8_t.
755
756         Fixed the bug by explicitly casting it to uint8_t* before the addition.
757
758         * Plugins/WebBasePluginPackage.mm:
759         (-[WebBasePluginPackage isNativeLibraryData:]):
760
761 2010-12-15  Cameron Zwarich  <zwarich@apple.com>
762
763         Reviewed by Darin Adler.
764
765         Clang -Wcast-align gives an error in WebBasePluginPackage.mm
766         https://bugs.webkit.org/show_bug.cgi?id=51144
767
768         Fix an alignment issue. OSSwapInt32 takes data that is 32-bit aligned on ARM, but
769         we were calling it on a byte array 32 bits at a time. While this is okay in practice,
770         since TCMalloc won't give us a non-32-bit aligned block array of bytes and Vector's
771         inline storage is at the beginning of the Vector, it is still better to fix this
772         and silence the warning.
773
774         * Plugins/WebBasePluginPackage.mm:
775         (swapIntsInHeader):
776         (-[WebBasePluginPackage isNativeLibraryData:]):
777
778 2010-12-14  Mark Rowe  <mrowe@apple.com>
779
780         Reviewed by Sam Weinig.
781
782         <http://webkit.org/b/51064> Reproducible crash inside WebCore::MediaPlayerPrivateQTKit::createQTMovie when loading <video>
783
784         * History/WebHistoryItem.mm:
785         (-[WebHistoryItem description]): Test whether the string is empty rather than incorrectly
786         always including the target in the output.
787
788 2010-12-13  Alexey Proskuryakov  <ap@apple.com>
789
790         Reviewed by Adam Barth.
791
792         https://bugs.webkit.org/show_bug.cgi?id=50953
793         DNS Prefetch should be an opt-in feature
794
795         * WebView/WebPreferences.mm: (+[WebPreferences initialize]): Changed default to false.
796
797 2010-12-13  Mike Thole  <mthole@apple.com>
798
799         Rubber-stamped by John Sullivan.
800
801         https://bugs.webkit.org/show_bug.cgi?id=50956
802         WebAuthenticationPanel.nib appears to have a cut-off sentence
803         
804         Replace the sentence fragment in the sheet layout with "<-- do not localize -->" style text.
805         The contents of this text field are updated dynamically before the sheet is displayed.
806
807         * Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib:
808         * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib:
809
810 2010-12-13  Antti Koivisto  <antti@apple.com>
811
812         Reviewed by Alexey Proskuryakov.
813
814         https://bugs.webkit.org/show_bug.cgi?id=50758
815         <rdar://problem/8722094> 
816         Defer loading print stylesheets
817         
818         Expose SPI for DRT for making resources load serially. This is useful for testing resource load order.
819
820         * WebView/WebView.mm:
821         (+[WebView _setLoadResourcesSerially:forHost:]):
822         * WebView/WebViewPrivate.h:
823
824 2010-12-09  Matthew Delaney  <mdelaney@apple.com>
825
826         Reviewed by Simon Fraser.
827
828         Adopt new CG API for canvas
829         https://bugs.webkit.org/show_bug.cgi?id=50591
830
831         * WebCoreSupport/WebSystemInterface.mm:
832
833 2010-10-28  MORITA Hajime  <morrita@google.com>
834
835         Reviewed by Ojan Vafai.
836
837         spellcheck does not check pasted text
838         https://bugs.webkit.org/show_bug.cgi?id=40092
839
840         Added asynchronous spell checking API to WebEditorClient using
841         -[NSSpellChecker requestCheckingOfString].
842         Note that WebEditorSpellCheckResponder is a small class to receive
843         requested spell-checking result. Note that this feature is
844         disabled at default.
845         
846         Also added [WebPreferences setAsynchronousSpellCheckingEnabled:] to 
847         enable the feature from LayoutTestController.
848
849         * WebCoreSupport/WebEditorClient.h:
850         * WebCoreSupport/WebEditorClient.mm:
851         (-[WebEditorSpellCheckResponder initWithSender:WebCore::sequence:results:]):
852         (-[WebEditorSpellCheckResponder perform]):
853         (toCoreSpellingResult):
854         (-[WebEditorSpellCheckResponder WTF::WebCore::]):
855         (WebEditorClient::requestCheckingOfString):
856         * WebView/WebPreferenceKeysPrivate.h:
857         * WebView/WebPreferences.mm:
858         (+[WebPreferences initialize]):
859         (-[WebPreferences setAsynchronousSpellCheckingEnabled:]):
860         (-[WebPreferences asynchronousSpellCheckingEnabled]):
861         * WebView/WebPreferencesPrivate.h:
862         * WebView/WebView.mm:
863         (-[WebView _preferencesChangedNotification:]):
864
865 2010-12-09  Anders Carlsson  <andersca@apple.com>
866
867         Fix a bug uncovered by clang++.
868
869         * WebView/WebHTMLView.mm:
870         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
871
872 2010-12-09  Anders Carlsson  <andersca@apple.com>
873
874         Clang++ build fixes.
875
876         Silence a couple of warnings.
877
878         * WebView/WebFrame.mm:
879         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
880         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
881         * WebView/WebTextCompletionController.mm:
882         (-[WebTextCompletionController filterKeyDown:]):
883
884 2010-12-09  David Hyatt  <hyatt@apple.com>
885
886         Reviewed by Dan Bernstein.
887
888         https://bugs.webkit.org/show_bug.cgi?id=48545, Home/End, PgUp, PgDown should respect
889         writing-mode.  This first part of the patch just patches Mac WebKit 1 views.
890
891         * WebView/WebFrameView.mm:
892         (-[WebFrameView _isVerticalDocument]):
893         (-[WebFrameView _isFlippedDocument]):
894         (-[WebFrameView _scrollToEndOfDocument]):
895         (-[WebFrameView _pageInBlockProgressionDirection:]):
896         (-[WebFrameView scrollPageUp:]):
897         (-[WebFrameView scrollPageDown:]):
898
899 2010-12-08  Andy Estes  <aestes@apple.com>
900
901         Reviewed by Darin Adler.
902
903         Enable pre-HTML5 parser quirks for Apple Mail.app
904         https://bugs.webkit.org/show_bug.cgi?id=50727
905
906         * WebView/WebView.mm:
907         (-[WebView _needsPreHTML5ParserQuirks]): Return true if the embedding
908         application is Mail.app.
909
910 2010-12-08  Brian Weinstein  <bweinstein@apple.com>
911
912         Reviewed by John Sullivan.
913
914         REGRESSION: r73429-r73490: Some Contextual menu items non-functional, such as Open Link in New Tab
915         https://bugs.webkit.org/show_bug.cgi?id=50683
916         
917         If our context menu item already has an action, don't overwrite the action with the context menu
918         forwarder.
919
920         * WebView/WebHTMLView.mm:
921         (setMenuItemTarget):
922
923 2010-12-08  Anders Carlsson  <andersca@apple.com>
924
925         Remove an unused variable.
926
927         * WebView/WebDynamicScrollBarsView.mm:
928         (-[WebDynamicScrollBarsView setScrollOrigin:updatePosition:]):
929
930 2010-12-07  Brian Weinstein  <bweinstein@apple.com>
931
932         Reviewed by John Sullivan.
933
934         Layering Violation in ContextMenu - member variable of type HitTestResult
935         https://bugs.webkit.org/show_bug.cgi?id=50586
936         
937         Update users of ContextMenu and ContextMenuController to match where the new functions 
938         are located.
939
940         * WebCoreSupport/WebContextMenuClient.mm:
941         (WebContextMenuClient::getCustomMenuFromDefaultItems):
942         (WebContextMenuClient::contextMenuItemSelected):
943         * WebView/WebHTMLView.mm:
944         (-[WebMenuTarget validateMenuItem:]):
945
946 2010-12-07  Brian Weinstein  <bweinstein@apple.com>
947
948         Reviewed by John Sullivan.
949
950         Part of Layering Violation in ContextMenu
951         https://bugs.webkit.org/show_bug.cgi?id=50586
952         
953         Move WebMenuTarget from ContextMenuMac to here, because having it in ContextMenuMac
954         was a layering violation. Also, make sure we set the menu item targets for all menu
955         items before showing them, because the ContextMenu constructor doesn't do that anymore.
956
957         * WebView/WebHTMLView.mm:
958         (+[WebMenuTarget sharedMenuTarget]): Moved from ContextMenuMac.mm.
959         (-[WebMenuTarget WebCore::]): Ditto.
960         (-[WebMenuTarget setMenuController:WebCore::]): Ditto.
961         (-[WebMenuTarget forwardContextMenuAction:]): Ditto.
962         (-[WebMenuTarget validateMenuItem:]): Ditto.
963
964         (setMenuItemTarget): Sets the target of the NSMenuItem to the shared WebMenuTarget.
965         (setMenuTargets): Recursively iterates over all NSMenuItems in an NSMenu (including
966             submenus), and calls setMenuItemTarget on them.
967         (-[WebHTMLView menuForEvent:]): Call setMenuTarget on all the menu items before adding
968             them to the menu.
969
970 2010-12-06  Darin Adler  <darin@apple.com>
971
972         Reviewed by Sam Weinig.
973
974         Pass security origin to make local file decision correctly
975         https://bugs.webkit.org/show_bug.cgi?id=48603
976
977         * WebView/WebPDFView.mm:
978         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Pass security origin.
979
980 2010-12-07  Martin Robinson  <mrobinson@igalia.com>
981
982         Unreviewed, rolling out r73392.
983         http://trac.webkit.org/changeset/73392
984         https://bugs.webkit.org/show_bug.cgi?id=50489
985
986         This commit caused crashes on the GTK+ bots
987
988         * WebView/WebFrame.mm:
989         (-[WebFrame _canProvideDocumentSource]):
990
991 2010-12-07  Kenichi Ishibashi  <bashi@google.com>
992
993         Reviewed by Kent Tamura.
994
995         Let HTMLObjectElement be a form associated element
996         https://bugs.webkit.org/show_bug.cgi?id=48821
997
998         Modified to use FormAssociatedElement instead of HTMLFormControlElement.
999
1000         * WebView/WebHTMLRepresentation.mm:
1001         (-[WebHTMLRepresentation elementWithName:inForm:]): Modified to use
1002         FormAssociatedElement instead of HTMLFormControlElement.
1003         (-[WebHTMLRepresentation controlsInForm:]): Ditto.
1004
1005 2010-12-06  Nate Chapin  <japhet@chromium.org>
1006
1007         Reviewed by Adam Barth.
1008
1009         Update calls to DocumentWriter.
1010         https://bugs.webkit.org/show_bug.cgi?id=50489
1011
1012         * WebView/WebFrame.mm:
1013         (-[WebFrame _canProvideDocumentSource]):
1014
1015 2010-12-06  Chris Marrin  <cmarrin@apple.com>
1016
1017         Reviewed by Simon Fraser.
1018
1019         Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
1020         https://bugs.webkit.org/show_bug.cgi?id=49388
1021
1022         Got rid of GraphicsLayer::nativeLayer() call, replacing it with 
1023         GraphicsLayer::platformLayer().
1024
1025         * WebCoreSupport/WebChromeClient.mm:
1026         (WebChromeClient::attachRootGraphicsLayer):
1027
1028 2010-12-04  Dan Bernstein  <mitz@apple.com>
1029
1030         Reviewed by Sam Weinig.
1031
1032         WebKit part of <rdar://problem/8145955> Add text search API for counting/marking/highlighting matches in a range
1033         https://bugs.webkit.org/show_bug.cgi?id=50530
1034
1035         * WebView/WebDocumentInternal.h: Added a DOMRange parameter to -countMatchesForText:options:limit:markMatches:
1036         * WebView/WebHTMLView.mm:
1037         (-[WebHTMLView countMatchesForText:inDOMRange:options:limit:markMatches:]): Added DOMRange parameter,
1038         which is passed through to WebCore.
1039         * WebView/WebPDFView.mm:
1040         (isFrameInRange): Added this helper function.
1041         (-[WebPDFView countMatchesForText:inDOMRange:options:limit:markMatches:]): Added DOMRange parameter and
1042         a check if the frame is in the range.
1043         * WebView/WebView.mm:
1044         (-[WebView countMatchesForText:options:highlight:limit:markMatches:]): Now calls the inDOMRange: version.
1045         (-[WebView countMatchesForText:inDOMRange:options:highlight:limit:markMatches:]): Added DOMRange
1046         parameter, which is passed to document views' -countMatchesForText:inDOMRange:options:limit:markMatches:.
1047         * WebView/WebViewPrivate.h:
1048
1049 2010-12-03  Sam Weinig  <sam@webkit.org>
1050
1051         Reviewed by Maciej Stachowiak.
1052
1053         Enable <a ping> for Mac/Windows/WebKit2 builds
1054         <rdar://problem/8504473>
1055         https://bugs.webkit.org/show_bug.cgi?id=50488
1056
1057         * WebView/WebPreferences.mm:
1058         (+[WebPreferences initialize]): Enable "HyperlinkAuditing" by default.
1059
1060 2010-12-03  Jia Pu  <jpu@apple.com>
1061
1062         Reviewed by Darin Adler.
1063
1064         Need to move all code that applies correction into correction panel callback.
1065         https://bugs.webkit.org/show_bug.cgi?id=50426
1066         <rdar://problem/8720832>
1067
1068         * WebCoreSupport/WebEditorClient.h: Adopted new signature of dismissCorrectionPanel.
1069
1070         * WebCoreSupport/WebEditorClient.mm:
1071         (WebEditorClient::~WebEditorClient): Adopted new signature of dismissCorrectionPanel.
1072         (WebEditorClient::showCorrectionPanel): Added more user dictionary learning code.
1073         (WebEditorClient::dismissCorrectionPanel): Adopted new signature of dismissCorrectionPanel.
1074
1075 2010-12-02  Simon Fraser  <simon.fraser@apple.com>
1076
1077         Revert r73217 and r73227 because of continued bustage.
1078
1079         * WebCoreSupport/WebChromeClient.mm:
1080         (WebChromeClient::attachRootGraphicsLayer):
1081
1082 2010-12-02  Chris Marrin  <cmarrin@apple.com>
1083
1084         Reviewed by Simon Fraser.
1085
1086         Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
1087         https://bugs.webkit.org/show_bug.cgi?id=49388
1088
1089         Got rid of GraphicsLayer::nativeLayer() call, replacing it with 
1090         GraphicsLayer::platformLayer().
1091
1092         * WebCoreSupport/WebChromeClient.mm:
1093         (WebChromeClient::attachRootGraphicsLayer):
1094
1095 2010-12-02  Mark Rowe  <mrowe@apple.com>
1096
1097         Reviewed by Beth Dakin.
1098
1099         <rdar://problem/8708730> Objects reported as being leaked due to lack of autorelease pool
1100
1101         * Misc/WebNSFileManagerExtras.m:
1102         (setMetaData): Create an autorelease pool for the duration of the thread body.
1103
1104 2010-12-02  John Knottenbelt  <jknotten@chromium.org>
1105
1106         Reviewed by Steve Block.
1107
1108         Move requestGeolocationPermissionForFrame to GeolocationClient
1109         https://bugs.webkit.org/show_bug.cgi?id=50061
1110
1111         This change facilitates client-based geolocation implementation by
1112         bringing together permission control into the geolocation client
1113         interface.
1114
1115         Move method ChromeClient::requestGeolocationPermissionForFrame to
1116         GeolocationClient::requestPermission, and supporting class
1117         WebGeolocationPolicyListener. The moved code is unchanged except
1118         that requestPermission now takes only one argument (Geolocation*)
1119         and the Frame parameter is retrieved from the Geolocation object.
1120
1121         * WebCoreSupport/WebChromeClient.h:
1122         * WebCoreSupport/WebChromeClient.mm:
1123         * WebCoreSupport/WebGeolocationClient.h:
1124         (WebGeolocationClient::cancelPermissionRequest):
1125         * WebCoreSupport/WebGeolocationClient.mm:
1126         (WebGeolocationClient::requestPermission):
1127         (-[WebGeolocationPolicyListener initWithGeolocation:]):
1128         (-[WebGeolocationPolicyListener allow]):
1129         (-[WebGeolocationPolicyListener deny]):
1130
1131 2010-12-02  Joseph Pecoraro  <joepeck@webkit.org>
1132
1133         Reviewed by Eric Carlson.
1134
1135         Style Fixes in WebPluginController
1136         https://bugs.webkit.org/show_bug.cgi?id=50397
1137
1138         * Plugins/WebPluginController.mm:
1139         (-[WebPluginController startAllPlugins]):
1140         (-[WebPluginController stopAllPlugins]):
1141
1142 2010-12-02  John Sullivan  <sullivan@apple.com>
1143
1144         Reviewed by Adam Roben.
1145         
1146         Slightly speculative fix for:
1147
1148         <rdar://problem/8712674>
1149         <https://bugs.webkit.org/show_bug.cgi?id=50393>
1150         setStringValue: sometimes called with nil in [WebAuthenticationPanel setUpForChallenge]        
1151
1152         * Panels/WebAuthenticationPanel.m:
1153         (-[WebAuthenticationPanel setUpForChallenge:]):
1154         If the realm is nil, use @"" instead.
1155
1156 2010-12-01  Jia Pu  <jpu@apple.com>
1157
1158         Reviewed by Darin Adler.
1159
1160         Support multiple correction candidates panel for misspelled word on Mac OS X.
1161         https://bugs.webkit.org/show_bug.cgi?id=50137
1162         <rdar://problem/8568059>
1163
1164         This patch is for supporting multiple correction suggestion panel on Mac OS X.
1165         The behavior and implementation is similar to that of reversion candiate panel.
1166
1167         * WebCoreSupport/WebEditorClient.h: Adopted new signatures defined in base class.
1168
1169         * WebCoreSupport/WebEditorClient.mm:  Adopted new signatures defined in base class.
1170           Added code to handle new multiple suggestion canidate panel type.
1171         (WebEditorClient::showCorrectionPanel):
1172         (WebEditorClient::getGuessesForWord):
1173
1174 2010-12-01  David Hyatt  <hyatt@apple.com>
1175
1176         Reviewed by Darin Adler.
1177
1178         https://bugs.webkit.org/show_bug.cgi?id=46645
1179         
1180         Part 1 of making scrolling work with vertical text. This patch generalizes the scrollOriginX concept
1181         recently added for horizontal RTL documents and applies it to writing modes as well.  Now the
1182         scrollOrigin is a point, since you can start off locked to the bottom or locked to the right.
1183         
1184         This patch also fixes numerous bugs with the scrollOrigin code using native Mac NSScrollViews and
1185         makes them behave the same as the cross-platform code (allowing for cross-platform results to be
1186         landed).
1187
1188         * WebView/WebDynamicScrollBarsView.mm:
1189         (-[WebDynamicScrollBarsView adjustForScrollOriginChange]):
1190         (-[WebDynamicScrollBarsView updateScrollers]):
1191         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
1192         (-[WebDynamicScrollBarsView setScrollOrigin:updatePosition:]):
1193         (-[WebDynamicScrollBarsView scrollOrigin]):
1194         * WebView/WebFrameView.mm:
1195         (-[WebFrameView _scrollToBeginningOfDocument]):
1196         (-[WebFrameView _scrollToEndOfDocument]):
1197
1198 2010-11-29  Dan Bernstein  <mitz@apple.com>
1199
1200         Reviewed by Darin Adler.
1201
1202         WebKit Mac part of <rdar://problem/8650085> adding word-prefix search options to the text search API.
1203         https://bugs.webkit.org/show_bug.cgi?id=50038
1204         Based on a patch from Darin Adler.
1205
1206         * WebView/WebDocumentInternal.h: Removed -markAllMatchesForText:caseSensitive:limit: and
1207         replaced -countMatchesForText:caseSensitive:limit:markMatches: with a WebFindOptions-based
1208         method. Declared a WebDocumentOptionsSearching protocol with a new -findString:options:
1209         method. Made WebHTMLView conform to the new protocol.
1210         * WebView/WebHTMLView.mm:
1211         (coreOptions): Added. Converts WebFindOptions to WebCore FindOptions.
1212         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Changed to use
1213         -findString:options:.
1214         (-[WebHTMLView countMatchesForText:options:limit:markMatches:]): Changed to use WebFindOptions.
1215         (-[WebHTMLView findString:options:]): Added. Calls through to WebCore::Editor::findString().
1216         * WebView/WebPDFView.mm:
1217         (-[WebPDFView countMatchesForText:options:limit:markMatches:]): Changed to use WebFindOptions.
1218         * WebView/WebView.mm:
1219         (-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]): Now calls through to
1220         -countMatchesForText:options:highlight:limit:markMatches.
1221         (-[WebView countMatchesForText:caseSensitive:highlight:limit:markMatches:]): Ditto.
1222         (-[WebView searchFor:direction:caseSensitive:wrap:startInSelection:]): Now calls through to
1223         -findString:options:.
1224         (incrementFrame): Changed to use WebFindOptions.
1225         (findString): Added this helper method that performs the search using the best supported
1226         method for the document view.
1227         (-[WebView findString:options:]): Changed -searchFor::::: into this.
1228         (-[WebView canMarkAllTextMatches]):
1229         (-[WebView countMatchesForText:options:highlight:limit:markMatches:]): Updated to use
1230         WebFindOptions.
1231         (-[WebView unmarkAllTextMatches]): Updated for change to incrementFrame.
1232         (-[WebView rectsForTextMatches]): Ditto.
1233         * WebView/WebViewPrivate.h: Added WebFindOptions, -findString:options:, and WebFindOptions version
1234         of countMatchesForText:.
1235
1236 2010-11-29  Jeremy Moskovich  <jeremy@chromium.org>
1237
1238         Reviewed by David Hyatt.
1239
1240         Right-to-left pages should be scrollable to reveal left overflow.
1241         https://bugs.webkit.org/show_bug.cgi?id=23556
1242
1243         Set and get the original x-axis scroll position and reset scroll position on HOME/END key press.
1244         Modify WebFrameView to support setting the initial horizontal scroller's thumb position to the right for
1245         pages with a left overflow.
1246
1247         * WebView/WebDynamicScrollBarsView.h:
1248         * WebView/WebDynamicScrollBarsView.mm:
1249         (-[WebDynamicScrollBarsView inProgramaticScroll]):
1250         (-[WebDynamicScrollBarsView refreshInitialScrollbarPosition]):
1251         (-[WebDynamicScrollBarsView updateScrollers]):
1252         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
1253         (-[WebDynamicScrollBarsView setScrollOriginX:]):
1254         (-[WebDynamicScrollBarsView scrollOriginX]):
1255         * WebView/WebFrameView.mm:
1256         (-[WebFrameView _scrollToBeginningOfDocument]):
1257         (-[WebFrameView _scrollToEndOfDocument]):
1258         * WebView/WebHTMLView.mm:
1259         (-[WebHTMLView _frameOrBoundsChanged]):
1260
1261 2010-11-22  Ryosuke Niwa  <rniwa@webkit.org>
1262
1263         Reviewed by Tony Chang.
1264
1265         SelectionController::typingStyle() should return EditingStyle*
1266         https://bugs.webkit.org/show_bug.cgi?id=49813
1267
1268         Changed the return value of SelectionController::typingStyle() to EditingStyle*.
1269         Also added SelectionController::copyTypingStyle() to copy the typing style
1270         as an instance of CSSMutableStyleDeclaration.
1271
1272         No tests are added since this is no behavioral change.
1273
1274         * WebView/WebFrame.mm:
1275         (-[WebFrame _typingStyle]): Calls SelectionController::copyTypingStyle()
1276
1277 2010-11-19  Michael Saboff  <msaboff@apple.com>
1278
1279         Reviewed by Sam Weinig
1280
1281         Remove DOMSVGAnimatedPathData.h from all: target to fix build.
1282
1283         * MigrateHeaders.make:
1284
1285 2010-11-19  Nikolas Zimmermann  <nzimmermann@rim.com>
1286
1287         Reviewed by Dirk Schulze.
1288
1289         Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept
1290         https://bugs.webkit.org/show_bug.cgi?id=49580
1291
1292         * WebView/WebRenderLayer.mm: Add missing StyledElement.h include.
1293
1294 2010-11-18  Mark Rowe  <mrowe@apple.com>
1295
1296         Rubber-stamped by Adam Roben.
1297
1298         <rdar://problem/8602509&8602717&8602724> Enable compaction support.
1299
1300         * Configurations/WebKit.xcconfig:
1301
1302 2010-11-18  Sheriff Bot  <webkit.review.bot@gmail.com>
1303
1304         Unreviewed, rolling out r72288.
1305         http://trac.webkit.org/changeset/72288
1306         https://bugs.webkit.org/show_bug.cgi?id=49730
1307
1308         'krit attempted to do that, but revert got stuck' (Requested
1309         by antonm on #webkit).
1310
1311         * WebView/WebRenderLayer.mm:
1312
1313 2010-11-17  Nikolas Zimmermann  <nzimmermann@rim.com>
1314
1315         Reviewed by Dirk Schulze.
1316
1317         Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept
1318         https://bugs.webkit.org/show_bug.cgi?id=49580
1319
1320         * WebView/WebRenderLayer.mm: Add missing StyledElement.h include.
1321
1322 2010-11-16  Stephanie Lewis  <slewis@apple.com>
1323
1324         Reviewed by Geoff Garen.
1325
1326         <rdar://problem/8624267> Leak creating offscreen webview running fast/dom tests
1327
1328         Make a static provider for WebDeviceOrientationProviderMock.  The old code allocated a new WebDeviceOrientationProviderMock for 
1329         every WebView, and the WebKit API doesn't support that ownership model.
1330
1331         * WebView/WebDeviceOrientationProviderMock.h:
1332         * WebView/WebDeviceOrientationProviderMock.mm:
1333         (+[WebDeviceOrientationProviderMock shared]):
1334
1335 2010-11-16  Dave Hyatt  <hyatt@apple.com>
1336
1337         Reviewed by Dan Bernstein.
1338
1339         https://bugs.webkit.org/show_bug.cgi?id=11004
1340         
1341         font-size:0 is ignored.  Remove the minimum font size of 1 in CSSStyleSelector.
1342         Change the pref value for minimum font size from 1 to 0.  Make sure to never use the NSFont's size,
1343         since it doesn't honor a size of 0.  Instead pass the size in to the FontPlatformData(NSFont*) version
1344         of the constructor rather than using [NSFont pointSize].
1345
1346         https://bugs.webkit.org/show_bug.cgi?id=49582
1347         
1348         Negative leading is not handled correctly.  There are two bugs here.  The first is that
1349         maxAscent and maxDescent can be negative, so we need a notion of whether or not we have
1350         set them before so that we can allow them to be < 0.
1351         
1352         The second issue is that we should understand where fonts will end up relative to
1353         our baseline (excluding line height), and only allow those boxes to impact ascent and
1354         descent if the actual font box (without factoring in line height) is above or below the
1355         root line box baseline.
1356
1357         Added fast/css/negative-leading.html
1358         
1359         These two bug fixes have to land together to keep the Acid 3 test rendering correctly.
1360
1361         * Misc/WebKitNSStringExtras.mm:
1362         (-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
1363         (-[NSString _web_widthWithFont:]):
1364         * Misc/WebStringTruncator.mm:
1365         (fontFromNSFont):
1366         * WebView/WebPreferences.mm:
1367         (+[WebPreferences initialize]):
1368
1369 2010-11-16  Anders Carlsson  <andersca@apple.com>
1370
1371         Fix clang++ build.
1372
1373         * WebCoreSupport/WebFrameLoaderClient.mm:
1374
1375 2010-11-14  Kent Tamura  <tkent@chromium.org>
1376
1377         Reviewed by Andreas Kling.
1378
1379         KeyboardEvent::keyIdentifier() should return "const String&"
1380         https://bugs.webkit.org/show_bug.cgi?id=49426
1381
1382         * WebCoreSupport/WebEditorClient.mm:
1383         (selectorForKeyEvent):
1384           Change the type of a variable to have keyIdentifier(); String -> const String&
1385
1386 2010-11-12  John Knottenbelt  <jknotten@chromium.org>
1387
1388         Reviewed by Steve Block.
1389
1390         Rename GeolocationControllerClient to GeolocationClient.
1391         https://bugs.webkit.org/show_bug.cgi?id=49259
1392
1393         * WebCoreSupport/WebGeolocationClient.h: Renamed from WebKit/mac/WebCoreSupport/WebGeolocationControllerClient.h.
1394         (WebGeolocationClient::webView):
1395         (WebGeolocationClient::setEnableHighAccuracy):
1396         * WebCoreSupport/WebGeolocationClient.mm: Renamed from WebKit/mac/WebCoreSupport/WebGeolocationControllerClient.mm.
1397         (WebGeolocationClient::WebGeolocationClient):
1398         (WebGeolocationClient::geolocationDestroyed):
1399         (WebGeolocationClient::startUpdating):
1400         (WebGeolocationClient::stopUpdating):
1401         (WebGeolocationClient::lastPosition):
1402         * WebKit.order:
1403         * WebView/WebView.mm:
1404         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
1405
1406 2010-11-10  Beth Dakin  <bdakin@apple.com>
1407
1408         Reviewed by Simon Fraser.
1409
1410         Fix for https://bugs.webkit.org/show_bug.cgi?id=49356 
1411         -[WebView _scaleWebView:] should take and origin and scroll the 
1412         document
1413         -and corresponding-
1414         <rdar://problem/8643921>
1415
1416         * WebView/WebView.mm:
1417         (-[WebView _scaleWebView:atOrigin:]):
1418         * WebView/WebViewPrivate.h:
1419
1420 2010-11-10  Csaba Osztrogonác  <ossy@webkit.org>
1421
1422         Reviewed by David Hyatt.
1423
1424         HTML5 Ruby support should be mandatory feature
1425         https://bugs.webkit.org/show_bug.cgi?id=49272
1426
1427         Remove Ruby as optional feature.
1428
1429         * Configurations/FeatureDefines.xcconfig:
1430
1431 2010-11-08  Ned Holbrook  <nholbrook@apple.com>
1432
1433         Reviewed by Adam Barth.
1434
1435         Avoid CFAttributedString creation in ComplexTextController by adopting UniChar provider SPI.
1436         https://bugs.webkit.org/show_bug.cgi?id=48886
1437
1438         * WebCoreSupport/WebSystemInterface.mm:
1439         (InitWebCoreSystemInterface):
1440
1441 2010-11-08  Nate Chapin  <japhet@chromium.org>
1442
1443         Unreviewed, build fix.
1444
1445         Clumsy typo in r71562.
1446
1447         * Plugins/Hosted/HostedNetscapePluginStream.mm:
1448         (WebKit::HostedNetscapePluginStream::start):
1449
1450 2010-11-08  Nate Chapin  <japhet@chromium.org>
1451
1452         Reviewed by Alexey Proskuryakov.
1453
1454         Interface changes in https://bugs.webkit.org/show_bug.cgi?id=27165
1455
1456         * Plugins/Hosted/HostedNetscapePluginStream.mm:
1457         (WebKit::HostedNetscapePluginStream::start): Move duplicate code into NetscapePluginStreamLoader
1458         * Plugins/WebNetscapePluginStream.mm:
1459         (WebNetscapePluginStream::start): Move duplicate code into NetscapePluginStreamLoader
1460         * WebView/WebView.mm:
1461         (-[WebView _dispatchPendingLoadRequests]): Use resourceLoadScheduler() instead of cache()->loader().
1462
1463 2010-11-08  Anders Carlsson  <andersca@apple.com>
1464
1465         Reviewed by Dan Bernstein.
1466
1467         Plug-in views should not assume that plugins are RenderEmbeddedObjects
1468         https://bugs.webkit.org/show_bug.cgi?id=49196
1469         <rdar://problem/8638467>
1470
1471         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1472         (-[WebHostedNetscapePluginView pluginHostDied]):
1473
1474 2010-11-08  Alexey Proskuryakov  <ap@apple.com>
1475
1476         Reviewed by Darin Adler.
1477
1478         https://bugs.webkit.org/show_bug.cgi?id=48685
1479         Notify UI process about focused frame
1480
1481         Added an empty implementation of the new ChromeClient method.
1482
1483         * WebCoreSupport/WebChromeClient.h:
1484         * WebCoreSupport/WebChromeClient.mm:
1485         (WebChromeClient::focusedFrameChanged):
1486
1487 2010-11-08  Anders Carlsson  <andersca@apple.com>
1488
1489         Build fix.
1490
1491         * MigrateHeaders.make:
1492
1493 2010-11-08  Anders Carlsson  <andersca@apple.com>
1494
1495         Reviewed by Adam Roben.
1496
1497         Remove use of HIGetScaleFactor
1498         https://bugs.webkit.org/show_bug.cgi?id=49186
1499         <rdar://problem/8618410>
1500
1501         Scale factors can vary on a display-by-display basis and it doesn't make sense
1502         to compute scale factor event coordinates like this.
1503
1504         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
1505         (getCarbonEvent):
1506
1507 2010-11-08  Simon Fraser  <simon.fraser@apple.com>
1508
1509         Reviewed by Sam Weinig.
1510
1511         Allow applets to participate in accelerated compositing
1512         https://bugs.webkit.org/show_bug.cgi?id=49117
1513         <rdar://problem/8625819>
1514         
1515         If Java is being loaded via the Netscape Plugin API, create a
1516         NetscapePluginWidget so that it has an implementation of platformLayer().
1517         
1518         Also clean up by using early returns.
1519
1520         * WebCoreSupport/WebFrameLoaderClient.mm:
1521
1522 2010-11-07  Adam Barth  <abarth@webkit.org>
1523
1524         Reviewed by Eric Seidel.
1525
1526         Rename Cache to MemoryCache
1527         https://bugs.webkit.org/show_bug.cgi?id=49159
1528
1529         * Misc/WebCache.mm:
1530         (+[WebCache statistics]):
1531         * WebCoreSupport/WebDeviceOrientationClient.mm:
1532         (WebDeviceOrientationClient::setController):
1533         * WebView/WebView.mm:
1534
1535 2010-11-05  Alexey Proskuryakov  <ap@apple.com>
1536
1537         Reviewed by Darin Adler.
1538
1539         https://bugs.webkit.org/show_bug.cgi?id=49100
1540         ASSERT([self window]) fails in -[WebBaseNetscapePluginView restartTimers]
1541
1542         * Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView restartTimers]):
1543         Removed the assertion. Multiple callers provide no guarantee that the plug-in is still alive
1544         (see bug comments), and there seems to be no harm in executing this function in that case.
1545
1546 2010-11-05  Chris Marrin  <cmarrin@apple.com>
1547
1548         Reviewed by Simon Fraser.
1549
1550         Move resumeAnimations/suspendAnimations from Frame to AnimationController.
1551         https://bugs.webkit.org/show_bug.cgi?id=49073
1552
1553         * WebView/WebFrame.mm:
1554         (-[WebFrame _suspendAnimations]):
1555         (-[WebFrame _resumeAnimations]):
1556
1557 2010-11-04  Alexey Proskuryakov  <ap@apple.com>
1558
1559         Reviewed by Darin Adler.
1560
1561         https://bugs.webkit.org/show_bug.cgi?id=49008
1562         <rdar://problem/7906226> Frequent crashes on mail.yahoo.co.jp
1563
1564         Callers of NetscapePluginInstanceProxy::waitForReply() are not prepared to be deleted during
1565         the call, unless it returns 0. There are two reasons for NetscapePluginInstanceProxy to be
1566         deleted during wait:
1567         - plugin crashed;
1568         - plugin was stopped (e.g. due to a DOM modification performed by another reply that came in
1569         while waiting).
1570
1571         We didn't recognize the latter.
1572
1573         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1574         (WebKit::PluginDestroyDeferrer::~PluginDestroyDeferrer):
1575         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1576         (WebKit::NetscapePluginInstanceProxy::waitForReply):
1577         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1578         (WebKit::NetscapePluginInstanceProxy::didCallPluginFunction):
1579
1580 2010-11-05  Chris Marrin  <cmarrin@apple.com>
1581
1582         Reviewed by Simon Fraser.
1583
1584         Make suspendAnimations/resumeAnimations and setCSSAnimations traverse through subframes and remember state
1585         https://bugs.webkit.org/show_bug.cgi?id=46945
1586
1587         * WebView/WebFrame.mm:
1588         (-[WebFrame _suspendAnimations]):
1589         (-[WebFrame _resumeAnimations]):
1590
1591 2010-11-04  Jia Pu  <jpu@apple.com>
1592
1593         Reviewed by Dan Bernstein.
1594
1595         reversion bubble in WebViews
1596         https://bugs.webkit.org/show_bug.cgi?id=47630
1597         <rdar://problem/8530960>
1598
1599         This patch is to add reversion to correction panel. Please see WebCore/ChangeLog for detail.
1600
1601         * WebCoreSupport/WebEditorClient.h: Adopted new signature of base class method.
1602         * WebCoreSupport/WebEditorClient.mm: Adopted new signature of base class method. And code
1603           change to use new reversion API in AppKit.
1604         (WebEditorClient::WebEditorClient):
1605         (WebEditorClient::~WebEditorClient):
1606         (WebEditorClient::respondToChangedSelection):
1607         (WebEditorClient::showCorrectionPanel):
1608         (WebEditorClient::dismissCorrectionPanel):
1609         (WebEditorClient::isShowingCorrectionPanel):
1610
1611 2010-11-04  Mike Thole  <mthole@apple.com>
1612
1613         Reviewed by Dan Bernstein.
1614
1615         Title for images should use localized numerals
1616         https://bugs.webkit.org/show_bug.cgi?id=49017
1617
1618         * WebCoreSupport/WebPlatformStrategies.mm:
1619         (WebPlatformStrategies::imageTitle): Use localized numerals on Snow Leopard or newer.
1620
1621 2010-11-02  Daniel Bates  <dbates@rim.com>
1622
1623         Reviewed by Adam Barth.
1624
1625         For unnamed frames, window.name returns a generated name
1626         https://bugs.webkit.org/show_bug.cgi?id=6751
1627
1628         Part 1 of 2.
1629
1630         Substitute FrameTree::uniqueName() for FrameTree::name() in the Mac port. 
1631
1632         * WebView/WebFrame.mm:
1633         (-[WebFrame name]):
1634
1635 2010-11-01  Brady Eidson  <beidson@apple.com>
1636
1637         Reviewed by Anders Carlsson.
1638
1639         <rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699
1640         Context menu support for WebKit 2.
1641
1642         * WebCoreSupport/WebChromeClient.h:
1643         (WebChromeClient::showContextMenu):
1644
1645 2010-10-29  Daniel Bates  <dbates@rim.com>
1646
1647         No review, rolling out 70971.
1648         http://trac.webkit.org/changeset/70971
1649         https://bugs.webkit.org/show_bug.cgi?id=6751
1650
1651         Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since
1652         it caused layout test failures on all bots. In particular, the
1653         child count in a generated frame name differs after this patch. We need
1654         to look into this further.
1655
1656         * WebView/WebFrame.mm:
1657         (-[WebFrame name]):
1658
1659 2010-10-28  Antonio Gomes  <agomes@rim.com>
1660
1661         Reviewed by Ojan Vafai.
1662
1663         Needs a "LinuxEditingBehavior", perhaps with a better name
1664         https://bugs.webkit.org/show_bug.cgi?id=36627
1665
1666         Added the corresponding GTK+ setting to WebCore's EditingUnixBehavior: WebKitEditingUnixBehavior.
1667
1668         * WebView/WebFrame.mm:
1669         (core):
1670         * WebView/WebPreferencesPrivate.h:
1671
1672 2010-10-29  Daniel Bates  <dbates@rim.com>
1673
1674         Reviewed by Adam Barth.
1675
1676         For unnamed frames, window.name returns a generated name
1677         https://bugs.webkit.org/show_bug.cgi?id=6751
1678
1679         Modified Mac-port to use FrameTree::uniqueName().
1680
1681         * WebView/WebFrame.mm:
1682         (-[WebFrame name]):
1683
1684 2010-10-29  Darin Adler  <darin@apple.com>
1685
1686         Reviewed by Sam Weinig.
1687
1688         Change BackForwardList clients to use BackForwardListImpl to prepare for further refactoring
1689         https://bugs.webkit.org/show_bug.cgi?id=48574
1690
1691         * History/WebBackForwardList.mm:
1692         Use BackForwardListImpl.
1693
1694 2010-10-29  Alexey Proskuryakov  <ap@apple.com>
1695
1696         Rubber-stamped by Sam Weinig.
1697
1698         Comment for usesDocumentViews explains it backwards. This flag is true in ToT, and we do
1699         create views for subframes.
1700
1701         * WebView/WebViewData.h: Double negation is better than a lie.
1702
1703 2010-10-27  Jer Noble  <jer.noble@apple.com>
1704
1705         Reviewed by Darin Adler.
1706
1707         Full screen video in Safari (still) exits full-screen if you switch to another 
1708         app on a multi-display system.
1709         https://bugs.webkit.org/show_bug.cgi?id=47364
1710         <rdar://problem/8382299>
1711         
1712         The FullScreen window does not technically close when it deactivates, but the 
1713         two NSWindows that make up the FullScreen feature should not hide when deactivated.
1714         
1715         * WebView/WebVideoFullscreenController.mm:
1716         (createBackgroundFullscreenWindow): Do not set hidesOnDeactivate.
1717         (-[WebVideoFullscreenWindow initWithContentRect:styleMask:backing:defer:]): Ditto.
1718         * WebView/WebVideoFullscreenHUDWindowController.mm:
1719         (-[WebVideoFullscreenHUDWindow initWithContentRect:styleMask:backing:defer:]): Ditto.
1720
1721 2010-10-29  Alexey Proskuryakov  <ap@apple.com>
1722
1723         Reviewed by Darin Adler.
1724
1725         https://bugs.webkit.org/show_bug.cgi?id=48576
1726         Let WebKit2 client know when a frame is a frameset
1727
1728         Added a blank implementation of the new FrameLoaderClient method.
1729
1730         * WebCoreSupport/WebFrameLoaderClient.h:
1731         * WebCoreSupport/WebFrameLoaderClient.mm:
1732         (WebFrameLoaderClient::dispatchDidBecomeFrameset):
1733
1734 2010-10-29  Csaba Osztrogonác  <ossy@webkit.org>
1735
1736         Reviewed by Adam Roben and David Kilzer.
1737
1738         Fix and cleanup of build systems
1739         https://bugs.webkit.org/show_bug.cgi?id=48342
1740
1741         * Configurations/FeatureDefines.xcconfig: Remove unnecessary ENABLE_SANDBOX.
1742
1743 2010-10-28  Dan Bernstein  <mitz@apple.com>
1744
1745         Reviewed by Mark Rowe.
1746
1747         LLVM compiler build fix
1748
1749         * Misc/WebDownload.mm:
1750         (-[WebDownload initWithRequest:delegate:]): Changed the delegate type from id to
1751         id<NSURLDownloadDelegate> to match the method signature in NSURLDownload.
1752
1753 2010-10-28  Ivan Krstić  <ike@apple.com>
1754
1755         Reviewed by Mark Rowe.
1756
1757         Remove unused experimental proxied panel interface.
1758         <rdar://problem/7237059>
1759
1760         * Plugins/Hosted/NetscapePluginHostManager.h:
1761         * Plugins/Hosted/NetscapePluginHostManager.mm:
1762         (WebKit::NetscapePluginHostManager::hostForPlugin):
1763         (WebKit::NetscapePluginHostManager::spawnPluginHost):
1764         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1765         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1766         * Plugins/Hosted/WebKitPluginClient.defs:
1767         * Plugins/Hosted/WebKitPluginHost.defs:
1768         * WebCoreSupport/WebSystemInterface.mm:
1769         (InitWebCoreSystemInterface):
1770         * WebView/WebPreferenceKeysPrivate.h:
1771         * WebView/WebPreferences.mm:
1772         (+[WebPreferences initialize]):
1773         * WebView/WebPreferencesPrivate.h:
1774
1775 2010-10-27  Pratik Solanki  <psolanki@apple.com>
1776
1777         Reviewed by Darin Adler.
1778
1779         Improve memSize calculation in [WebView _setCacheModel]
1780         https://bugs.webkit.org/show_bug.cgi?id=48484
1781
1782         * WebView/WebView.mm:
1783         (roundUpToPowerOf2): Added. Utility function to calculate the nearest power of 2.
1784         (+[WebView _setCacheModel:]): Update memSize calculation to set it to the next
1785         bigger power of 2. Also update WebCore cache settings.
1786
1787 2010-10-26  Darin Adler  <darin@apple.com>
1788
1789         Reviewed by Sam Weinig.
1790
1791         WebKitTestRunner needs to support layoutTestController.dumpBackForwardList
1792         https://bugs.webkit.org/show_bug.cgi?id=42322
1793         rdar://problem/8193631
1794
1795         WebKitTestRunner needs to support layoutTestController.clearBackForwardList
1796         https://bugs.webkit.org/show_bug.cgi?id=42333
1797         rdar://problem/8193643
1798
1799         * History/WebBackForwardList.mm:
1800         (core): Return BackForwardListImpl.
1801         (kit): Take BackForwardListImpl.
1802         (-[WebBackForwardList initWithBackForwardList:]): Use BackForwardListImpl.
1803         (-[WebBackForwardList dealloc]): Ditto.
1804         (-[WebBackForwardList finalize]): Ditto.
1805         (-[WebBackForwardList description]): Ditto.
1806         (-[WebBackForwardList setPageCacheSize:]): Ditto.
1807         (-[WebBackForwardList pageCacheSize]): Ditto.
1808         * History/WebBackForwardListInternal.h: Ditto.
1809         * WebView/WebFrameView.mm:
1810         (-[WebFrameView keyDown:]): Ditto.
1811         * WebView/WebView.mm:
1812         (-[WebView initWithCoder:]): Ditto.
1813         (-[WebView encodeWithCoder:]): Ditto.
1814         (-[WebView backForwardList]): Ditto.
1815         (-[WebView setMaintainsBackForwardList:]): Ditto.
1816
1817 2010-10-27  Chris Rogers  <crogers@google.com>
1818
1819         Reviewed by Chris Marrin.
1820
1821         Add ENABLE_WEB_AUDIO feature enable flag (initially disabled) to build-webkit
1822         https://bugs.webkit.org/show_bug.cgi?id=48279
1823
1824         * Configurations/FeatureDefines.xcconfig:
1825
1826 2010-10-27  Beth Dakin  <bdakin@apple.com>
1827
1828         Reviewed by Darin Adler.
1829
1830         Fix for https://bugs.webkit.org/show_bug.cgi?id=48385 Add WebKit 
1831         SPI to scale a WebView
1832         -and corresponding-
1833         <rdar://problem/8107667>
1834
1835         This patch adds SPI to Mac WebKit that scales the page by the given 
1836         scale factor.
1837
1838         * WebView/WebView.mm:
1839         (-[WebView _scaleWebView:]):
1840         (-[WebView _viewScaleFactor]):
1841         * WebView/WebViewPrivate.h:
1842
1843 2010-10-27  Dan Bernstein  <mitz@apple.com>
1844
1845         Reviewed by Darin Adler.
1846
1847         REGRESSION (r70335): Incorrect article layout in Safari Reader
1848         https://bugs.webkit.org/show_bug.cgi?id=48436
1849
1850         * Misc/WebKitVersionChecks.h: Added WEBKIT_FIRST_VERSION_WITH_GET_MATCHED_CSS_RULES_RESTRICTIONS.
1851         * WebView/WebView.mm:
1852         (-[WebView _needsUnrestrictedGetMatchedCSSRules]): Added. Returns YES for Safari linked against
1853         versions of WebKit that did not have the cross-origin restrictions in getMatchedCSSRules().
1854         (-[WebView _preferencesChangedNotification:]): Call Settings::setCrossOriginCheckInGetMatchedCSSRulesDisabled()
1855         based on the above.
1856
1857 2010-10-18  Jer Noble  <jer.noble@apple.com>
1858
1859         Reviewed by Eric Carlson.
1860
1861         Safari fullscreen media element tickles when it should not.
1862         
1863         https://bugs.webkit.org/show_bug.cgi?id=47861
1864
1865         * WebView/WebVideoFullscreenController.mm:
1866         (-[WebVideoFullscreenController updatePowerAssertions]):
1867
1868 2010-10-26  Jenn Braithwaite  <jennb@chromium.org>
1869
1870         Reviewed by Dmitry Titov.
1871
1872         Resource tracking failure when trying to move a frame between documents
1873         https://bugs.webkit.org/show_bug.cgi?id=44713
1874
1875         * WebCoreSupport/WebFrameLoaderClient.h:
1876         * WebCoreSupport/WebFrameLoaderClient.mm:
1877         (WebFrameLoaderClient::didTransferChildFrameToNewDocument):
1878         Empty method.
1879         (WebFrameLoaderClient::transferLoadingResourceFromPage):
1880         Update resource tracking for a resource load that has been transferred
1881         to a new page.
1882
1883 2010-10-25  Oliver Hunt  <oliver@apple.com>
1884
1885         Reviewed by Gavin Barraclough.
1886
1887         Remove exec and globalData arguments from jsNumber
1888         https://bugs.webkit.org/show_bug.cgi?id=48270
1889
1890         Mechanical removal of exec parameter to jsNumber
1891
1892         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1893         (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
1894         * Plugins/Hosted/ProxyInstance.mm:
1895         (WebKit::ProxyInstance::numberValue):
1896
1897 2010-10-24  Dan Bernstein  <mitz@apple.com>
1898
1899         Reviewed by Anders Carlsson.
1900
1901         Expose HitTestResult::absoluteMediaURL() via WebKit API
1902         https://bugs.webkit.org/show_bug.cgi?id=48219
1903
1904         * Misc/WebElementDictionary.mm:
1905         (+[WebElementDictionary initializeLookupTable]): Map WebElementMediaURLKey to
1906         _absoluteMediaURL.
1907         (-[WebElementDictionary _absoluteMediaURL]): Added. Returns absoluteMediaURL().
1908         * WebKit.exp: Export WebElementMediaURLKey.
1909         * WebView/WebView.mm: Define WebElementMediaURLKey.
1910         * WebView/WebViewPrivate.h: Declare WebElementMediaURLKey.
1911
1912 2010-10-24  Dan Bernstein  <mitz@apple.com>
1913
1914         Reviewed by Simon Fraser.
1915
1916         Removed deprecated methods from the WebHTMLHighlighter private protocol.
1917
1918         * WebCoreSupport/WebChromeClient.mm:
1919         (WebChromeClient::customHighlightRect): Call -highlightRectForLine:representedNode:
1920         unconditionally.
1921         (WebChromeClient::paintCustomHighlight): Call
1922         -paintHighlightForBox:onLine:behindText:entireLine:representedNode: unconditionally.
1923         * WebView/WebHTMLViewPrivate.h:
1924
1925 2010-10-23  Xan Lopez  <xlopez@igalia.com>
1926
1927         Reviewed by Sam Weinig.
1928
1929         Unify globalData APIs
1930         https://bugs.webkit.org/show_bug.cgi?id=47969
1931
1932         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1933         (WebKit::NetscapePluginInstanceProxy::evaluate):
1934         (WebKit::NetscapePluginInstanceProxy::invoke):
1935         (WebKit::NetscapePluginInstanceProxy::invokeDefault):
1936         (WebKit::NetscapePluginInstanceProxy::construct):
1937         * WebView/WebScriptDebugDelegate.mm:
1938         (-[WebScriptCallFrame evaluateWebScript:]):
1939
1940 2010-10-23  David Kilzer  <ddkilzer@apple.com>
1941
1942         <http://webkit.org/b/48186> Remove unneeded WebHTMLRepresentationInternal.h header
1943
1944         Reviewed by Sam Weinig.
1945
1946         The only method defined in WebHTMLRepresentationInternal.h is
1947         also defined in WebHTMLRepresentation.h, so use that instead.
1948
1949         * WebView/WebHTMLRepresentationInternal.h: Removed.
1950
1951 2010-10-23  Alexey Proskuryakov  <ap@apple.com>
1952
1953         Reviewed by Anders Carlsson.
1954
1955         https://bugs.webkit.org/show_bug.cgi?id=48083
1956         <rdar://problem/8489082> Need WebKit2 API for private browsing (48083)
1957
1958         * WebCoreSupport/WebSystemInterface.mm: (InitWebCoreSystemInterface): Initialize the new method.
1959
1960 2010-10-22  Sam Weinig  <sam@webkit.org>
1961
1962         Reviewed by Anders Carlsson.
1963
1964         WebKit2 needs to pass the current event modifier flags when requesting a new window
1965         https://bugs.webkit.org/show_bug.cgi?id=48140
1966
1967         * WebCoreSupport/WebChromeClient.h:
1968         * WebCoreSupport/WebChromeClient.mm:
1969         (WebChromeClient::createWindow):
1970         * WebCoreSupport/WebFrameLoaderClient.h:
1971         * WebCoreSupport/WebFrameLoaderClient.mm:
1972         (WebFrameLoaderClient::dispatchCreatePage):
1973         Add NavigationAction parameter.
1974
1975 2010-10-21  Andy Estes  <aestes@apple.com>
1976
1977         Reviewed by Eric Carlson.
1978
1979         WebKit shouldn't load a plug-in based on file extension if a MIME type
1980         is specified.
1981         https://bugs.webkit.org/show_bug.cgi?id=48046
1982
1983         If a MIME type is specified in an object or embed element, and that MIME
1984         type isn't supported by an installed plug-in, WebKit shouldn't attempt
1985         to find a plug-in based on the file extension of the url attribute.
1986         Doing so can lead to cases where a plug-in is loaded that can't handle
1987         resources of the MIME type specified by the author.
1988
1989         * WebCoreSupport/WebFrameLoaderClient.mm:
1990         (WebFrameLoaderClient::createPlugin): Only check for a pluginPackage by
1991         extension if MIME type is the empty string.
1992
1993 2010-10-20  Simon Fraser  <simon.fraser@apple.com>
1994
1995         Reviewed by Dan Bernstein.
1996
1997         Composited elements drawn twice when WebView is layer-backed
1998         https://bugs.webkit.org/show_bug.cgi?id=48024
1999         <rdar://problem/7916580>
2000         
2001         When drawing content in a layer-backed WebView, WebFrame's test
2002         for drawing to a bitmap succeeded, causing us to paint flattened
2003         compositing layers into the view. They would also be rendered
2004         by the normal compositing path, resulting in double rendering.
2005         
2006         Fix this by detecting when the WebHTMLView is being drawn into
2007         a layer, and avoiding flattening in that case.
2008
2009         * WebView/WebFrame.mm:
2010         (-[WebFrame _showFlattenedCompositingLayers:]):
2011         (-[WebFrame _drawRect:contentsOnly:]):
2012         * WebView/WebHTMLView.mm:
2013         (-[WebHTMLView drawLayer:inContext:]):
2014         (-[WebHTMLView _web_isDrawingIntoLayer]):
2015         * WebView/WebHTMLViewInternal.h:
2016
2017 2010-10-20  Dumitru Daniliuc  <dumi@chromium.org>
2018
2019         Reviewed by David Levin.
2020
2021         Repost the DatabaseTracker notifications to the main thread, if needed.
2022         https://bugs.webkit.org/show_bug.cgi?id=40655
2023
2024         * Storage/WebDatabaseTrackerClient.mm:
2025         (DidModifyOriginData::dispatchToMainThread):
2026         (DidModifyOriginData::DidModifyOriginData):
2027         (DidModifyOriginData::dispatchDidModifyOriginOnMainThread):
2028         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
2029         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
2030
2031 2010-10-20  Simon Fraser  <simon.fraser@apple.com>
2032
2033         Reviewed by Darin Adler.
2034
2035         REGRESSION(r67568-r67643): Some HTML/CSS renders upside down and backwards on Leopard
2036         https://bugs.webkit.org/show_bug.cgi?id=47369
2037         
2038         r46947 added code that limits the size of the layer-backed view on Leopard when
2039         the page height exceeds 4096px (later adjusted to 2048px in r48401).
2040         
2041         Later, r67576 altered the geometry flipping behavior to push the geometry flipping
2042         down into WebKit. However, the code that adjusts the hosting layer's sublayer transform
2043         to account for layer-backed view size-limiting was not fixed at the same time.
2044         This change corrects that.
2045
2046         * WebView/WebHTMLView.mm:
2047         (-[WebHTMLView _updateLayerHostingViewPosition]):
2048
2049 2010-10-19  Simon Fraser  <simon.fraser@apple.com>
2050
2051         Reviewed by Dan Bernstein.
2052
2053         <rdar://problem/8508422> Compositing layers aren't always displayed correctly in layer-backed WebViews
2054         
2055         AppKit has some special code to prevent it meddling with view's layers
2056         under layer-backed WebViews. When a layer-backed WebView became composited,
2057         this caused our layer to remain zero-sized. Fix this by manually
2058         setting the geometry for our layer, if the WebHTMLView has a layer.
2059         
2060         This does not seem to be a problem if the WebView becomes layer-backed, or
2061         stops being layer-backed after the WebView starts using compositing.
2062
2063         * WebView/WebHTMLView.mm:
2064         (-[WebHTMLView attachRootLayer:]):
2065
2066 2010-10-20  Dirk Schulze  <krit@webkit.org>
2067
2068         Reviewed by Nikolas Zimmermann.
2069
2070         Merge ColorSpace and ImageColorSpace enums
2071         https://bugs.webkit.org/show_bug.cgi?id=47922
2072
2073         Renamed ColorSpace enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB
2074         to follow webkit style rules.
2075
2076         * Misc/WebKitNSStringExtras.mm:
2077         (-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
2078
2079 2010-10-19  Alexey Proskuryakov  <ap@apple.com>
2080
2081         Reviewed by Anders Carlsson.
2082
2083         https://bugs.webkit.org/show_bug.cgi?id=47933
2084         <rdar://problem/8494337> navigator.language doesn't work in WebKit2
2085
2086         * Misc/WebNSUserDefaultsExtras.mm: Moved code for computing default language to WebCore.
2087         We need to keep _webkit_preferredLanguageCode for Safari.
2088
2089         * WebCoreSupport/WebSystemInterface.mm: (InitWebCoreSystemInterface):
2090         Initialize wkCopyCFLocalizationPreferredName.
2091
2092         * WebCoreSupport/WebViewFactory.mm: Removed defaultLanguage. WebCore was the only caller.
2093
2094 2010-10-18  Alexey Proskuryakov  <ap@apple.com>
2095
2096         Reviewed by David Kilzer.
2097
2098         https://bugs.webkit.org/show_bug.cgi?id=47864
2099         Convert WebNSUserDefaultsExtras.m to .mm
2100
2101         Also, fixed some issues in the process:
2102         - removed locking, which was only necessary when this code was in Foundation;
2103         - fixed notification center observer to actually work (previously, it picked up changes
2104         when application preferences changed, not when system language did);
2105         - removed unused NSString category;
2106         - updated style.
2107
2108         * Misc/WebNSUserDefaultsExtras.m: Removed.
2109         * Misc/WebNSUserDefaultsExtras.mm: Copied from WebKit/mac/Misc/WebNSUserDefaultsExtras.m.
2110         (createHTTPStyleLanguageCode):
2111         (+[NSUserDefaults _webkit_defaultsDidChange]):
2112         (addLanguageChangeObserver):
2113         (+[NSUserDefaults _webkit_preferredLanguageCode]):
2114
2115 2010-10-18  Stuart Morgan  <stuartmorgan@chromium.org>
2116
2117         Reviewed by Eric Seidel.
2118
2119         Switch to using the new Carbon NPAPI event declarations, and remove
2120         the old ones.
2121
2122         https://bugs.webkit.org/show_bug.cgi?id=40784
2123
2124         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
2125         (WebNetscapePluginEventHandlerCarbon::mouseEntered):
2126         (WebNetscapePluginEventHandlerCarbon::mouseExited):
2127         (WebNetscapePluginEventHandlerCarbon::mouseMoved):
2128         (WebNetscapePluginEventHandlerCarbon::focusChanged):
2129
2130 2010-10-18  Pavel Podivilov  <podivilov@chromium.org>
2131
2132         Reviewed by Timothy Hatcher.
2133
2134         Web Inspector: disable private browsing for inspector
2135         https://bugs.webkit.org/show_bug.cgi?id=47827
2136
2137         * WebCoreSupport/WebInspectorClient.mm:
2138         (-[WebInspectorWindowController init]):
2139
2140 2010-10-14  Ilya Tikhonovsky  <loislo@chromium.org>
2141
2142         Reviewed by Pavel Feldman.
2143
2144         Web Inspector: inspector settings/properties/states management
2145         should be extracted into separate class.
2146
2147         We have a lot of flags/values in InspectorController.
2148         Some flags are persisting into profile.
2149         Others are part of inspector state for frontend.
2150         All these flags should keep their values after navigation.
2151         It'd be better to extract these flags/values into separate
2152         class which will care about theirs lifetime.
2153
2154         https://bugs.webkit.org/show_bug.cgi?id=47275
2155
2156         * WebCoreSupport/WebInspectorClient.mm:
2157         (-[WebInspectorWindowController showWindow:]):
2158         (-[WebInspectorWindowController attach]):
2159         (-[WebInspectorWindowController detach]):
2160
2161 2010-10-13  Gavin Barraclough  <barraclough@apple.com>
2162
2163         Reviewed by Oliver Hunt.
2164
2165         https://bugs.webkit.org/show_bug.cgi?id=43987
2166         Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder
2167         to construct their internal result string.  Remove ScriptString (this is now
2168         redundant).
2169
2170         * WebCoreSupport/WebFrameLoaderClient.mm:
2171
2172 2010-10-12  Andy Estes  <aestes@apple.com>
2173
2174         Rubber-stamped by Darin Adler.
2175
2176         Check in some cleanup from the previous commit.
2177
2178         * WebView/WebView.mm:
2179         (leakMailQuirksUserScriptPath): Renamed to indicate that this function
2180         leaks an NSString.
2181         (-[WebView _injectMailQuirksScript]): Moved a static initialization from
2182         a separate class method into the only method that used it and removed
2183         the now-unnecessary class method.
2184
2185 2010-10-12  Eric Seidel  <eric@webkit.org>
2186
2187         Reviewed by Darin Adler.
2188
2189         REGRESSION (new parser): Leopard/Tiger Mail <head>/<body> quirk is gone
2190         https://bugs.webkit.org/show_bug.cgi?id=45693
2191
2192         Re-implement this former WebCore parser quirk as a
2193         Mac-only userscript-based quirk.  As far as I can tell
2194         from Darin's description this should satisfy Mail's needs.
2195
2196         * Misc/MailQuirksUserScript.js: Added.
2197         * WebView/WebView.mm:
2198         (+[WebView _mailQuirksUserScript]):
2199         (-[WebView _injectMailQuirksScript]):
2200         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2201
2202 2010-10-12  Simon Fraser  <simon.fraser@apple.com>
2203
2204         Reviewed by Sam Weinig.
2205
2206         Add 'didDraw' callback for framerate tracking
2207         https://bugs.webkit.org/show_bug.cgi?id=47478
2208
2209         Add a callback at the end of -[WebHTMLView drawRect:] so
2210         a delegate can get notified when a draw happens.
2211         
2212         * WebView/WebHTMLView.mm:
2213         (-[WebHTMLView drawRect:]):
2214         * WebView/WebUIDelegatePrivate.h:
2215
2216 2010-10-11  Anders Carlsson  <andersca@apple.com>
2217
2218         Reviewed by Darin Adler.
2219
2220         Remove WebIconFetcher from WebKit and IconFetcher from WebCore
2221         https://bugs.webkit.org/show_bug.cgi?id=47523
2222
2223         Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
2224
2225         * Misc/WebIconFetcher.h: Removed.
2226         * Misc/WebIconFetcher.mm: Removed.
2227         * Misc/WebIconFetcherInternal.h: Removed.
2228         * WebView/WebFrame.mm:
2229         * WebView/WebFramePrivate.h:
2230
2231 2010-10-11  Jessie Berlin  <jberlin@apple.com>
2232
2233         Reviewed by Darin Adler.
2234
2235         Add Private API for creating a WebKit2 WebSerializedScriptValue from the internal
2236         representation of a WebKit1 WebSerializedJSValue.
2237         https://bugs.webkit.org/show_bug.cgi?id=47439
2238
2239         * WebView/WebSerializedJSValue.mm:
2240         (-[WebSerializedJSValue internalRepresentation]):
2241         * WebView/WebSerializedJSValuePrivate.h:
2242
2243 2010-10-07  Jessie Berlin  <jberlin@apple.com>
2244
2245         Reviewed by Sam Weinig.
2246
2247         Add Private API for creating a WebKit1 WebSerializedJSValue from the internal
2248         representation of a WebKit2 WebSerializedScriptValue.
2249         https://bugs.webkit.org/show_bug.cgi?id=47390
2250
2251         * WebView/WebSerializedJSValue.mm:
2252         (-[WebSerializedJSValue initWithInternalRepresentation:]):
2253         Set the WebSerializedJSValuePrivate's WebCore::SerializedScriptValue to be the passed in
2254         internal representation.
2255         * WebView/WebSerializedJSValuePrivate.h: Added.
2256
2257 2010-10-07  Antonio Gomes  <agomes@rim.com>
2258
2259         Reviewed by Simon Fraser.
2260
2261         [Mac] [DRT] implement setSpatialNavigationEnabled
2262         https://bugs.webkit.org/show_bug.cgi?id=47291
2263
2264         Added the needed bits to make it possible to enabled spatial navigation
2265         for the Mac port. For now it is being only used by DRT.
2266
2267         * WebView/WebPreferenceKeysPrivate.h:
2268         * WebView/WebPreferences.mm:
2269         (+[WebPreferences initialize]):
2270         (-[WebPreferences isSpatialNavigationEnabled]):
2271         (-[WebPreferences setSpatialNavigationEnabled:]):
2272         * WebView/WebPreferencesPrivate.h:
2273         * WebView/WebView.mm:
2274         (-[WebView _preferencesChangedNotification:]):
2275
2276 2010-10-07  Jer Noble  <jer.noble@apple.com>
2277
2278         Fix the Leopard 64-bit build.
2279
2280         * Configurations/WebKit.xcconfig: Add CoreServices.framework/Frameworks to the 
2281             framework search path.
2282         * WebView/WebVideoFullscreenController.mm: Explicitly import <OSStatus/Power.h>.
2283
2284 2010-10-06  Jer Noble  <jer.noble@apple.com>
2285
2286         Reviewed by Darin Adler.
2287
2288         Screensaver starts while watching fullscreen playback.
2289         https://bugs.webkit.org/show_bug.cgi?id=47299
2290         <rdar://problem/8478956>
2291
2292         To disable the Screen Saver, we need to periodically call UpdateSystemActivity().  
2293
2294         * WebView/WebVideoFullscreenController.h: Added _tickleTimer.
2295         * WebView/WebVideoFullscreenController.mm:
2296         (-[WebVideoFullscreenController dealloc]): Invalidate _tickleTimer.
2297         (-[WebVideoFullscreenController _enableTickleTimer]): Create _tickleTimer. 
2298         (-[WebVideoFullscreenController _disableTickleTimer]): Invalidate _tickleTimer.
2299         (-[WebVideoFullscreenController _tickleTimerFired]): Call UpdateSystemActivity().
2300         (-[WebVideoFullscreenController updatePowerAssertions]): Call _enableTickleTimer 
2301             or _disableTickleTimer.
2302
2303 2010-10-05  Philippe Normand  <pnormand@igalia.com>
2304
2305         Reviewed by Martin Robinson.
2306
2307         check for ENABLE(GLIB_SUPPORT) in WebView
2308         https://bugs.webkit.org/show_bug.cgi?id=46788
2309
2310         Use ENABLE(GLIB_SUPPORT) in WebView to guard the glib runloop observer.
2311
2312         * WebView/WebView.mm:
2313         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2314         (-[WebView _close]):
2315         * WebView/WebViewData.h:
2316         * WebView/WebViewInternal.h:
2317
2318 2010-10-01  Anders Carlsson  <andersca@apple.com>
2319
2320         Fix Snow Leopard build.
2321
2322         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2323         (WebKit::NetscapePluginInstanceProxy::getProxy):
2324
2325 2010-10-01  Anders Carlsson  <andersca@apple.com>
2326
2327         Reviewed by Dan Bernstein.
2328
2329         Add proxy server query function proxyServersForURL and change the Mac plug-in code to use it
2330         https://bugs.webkit.org/show_bug.cgi?id=47022
2331         <rdar://problem/8504712>
2332
2333         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2334         (WebKit::NetscapePluginInstanceProxy::getProxy):
2335         * Plugins/WebBaseNetscapePluginView.h:
2336         * Plugins/WebBaseNetscapePluginView.mm:
2337         * Plugins/WebNetscapePluginView.mm:
2338         (-[WebNetscapePluginView getVariable:forURL:value:length:]):
2339
2340 2010-09-30  Darin Adler  <darin@apple.com>
2341
2342         Reviewed by Sam Weinig.
2343
2344         Remove remaining calls to deprecatedParseURL
2345         https://bugs.webkit.org/show_bug.cgi?id=26599
2346
2347         * DOM/WebDOMOperations.mm:
2348         (-[DOMDocument URLWithAttributeString:]):
2349         * WebCoreSupport/WebFrameLoaderClient.mm:
2350         (WebFrameLoaderClient::createPlugin):
2351         Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
2352
2353 2010-09-30  Anders Carlsson  <andersca@apple.com>
2354
2355         Reviewed by Darin Adler.
2356
2357         -[DOMDocument _documentRange] throws an exception if there is no document element
2358         https://bugs.webkit.org/show_bug.cgi?id=46934
2359         <rdar://problem/8169260>
2360
2361         If there is no document element, just return an empty range. Otherwise we'll try to call
2362         Range::selectNode with a null Node which will throw a NOT_FOUND exception.
2363
2364         * DOM/WebDOMOperations.mm:
2365         (-[DOMDocument _documentRange]):
2366
2367 2010-09-30  Chris Marrin  <cmarrin@apple.com>
2368
2369         Reviewed by Simon Fraser.
2370
2371         Make 2D accelerated canvas rendering build on Mac
2372         https://bugs.webkit.org/show_bug.cgi?id=46007
2373         
2374         Added ACCELERATED_2D_CANVAS to FeatureDefines
2375
2376         * Configurations/FeatureDefines.xcconfig:
2377
2378 2010-09-30  Dan Bernstein  <mitz@apple.com>
2379
2380         Reviewed by John Sullivan.
2381
2382         Add printing SPI allowing full control over shrink-to-fit
2383         https://bugs.webkit.org/show_bug.cgi?id=46877
2384
2385         * WebView/WebHTMLView.mm:
2386         (-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumPageWidth:]): Added.
2387         * WebView/WebHTMLViewPrivate.h:
2388
2389 2010-09-28  Johnny Ding  <jnd@chromium.org>
2390
2391         Reviewed by Adam Barth.
2392
2393         https://bugs.webkit.org/show_bug.cgi?id=41292
2394         Some windowed plugins did not handle events through EventHandler, so we
2395         never set right gesture state for those events.
2396         This change is to set right allowPopupsFromPlugin flag to current
2397         execution frame, so WeKit can always get right gesture state on Mac.
2398         From Mac Snow Leopard, the plugin is run under "WebKitPluginHost,app"
2399         process, that process passes the allowPopupsFromPlugin flag to
2400         WKPCEvaluate(in NetscapePluginHostProxy.mm), then flag is set in
2401         NetscapePluginInstanceProxy::evaluate.
2402
2403         * Plugins/WebNetscapePluginView.mm:
2404         (-[WebNetscapePluginView sendEvent:isDrawRect:]):
2405
2406 2010-09-28  Jenn Braithwaite  <jennb@chromium.org>
2407
2408         Reviewed by Dmitry Titov.
2409
2410         Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument.
2411         https://bugs.webkit.org/show_bug.cgi?id=46663
2412
2413         * WebCoreSupport/WebFrameLoaderClient.h:
2414         * WebCoreSupport/WebFrameLoaderClient.mm:
2415         (WebFrameLoaderClient::didTransferChildFrameToNewDocument):
2416
2417 2010-09-26  Antonio Gomes  <agomes@rim.com>
2418
2419         Reviewed by Kenneth Rohde Christiansen.
2420
2421         DRT/Mac nodesFromRect support
2422
2423         [Mac][DRT] Implement LayoutTestController::nodesFromRect
2424         https://bugs.webkit.org/show_bug.cgi?id=46580
2425
2426         Implement nodesFromRect as a private method to access non-exposed Document
2427         methods, similarly to computedStyleIncludingVisitedInfo.
2428
2429         * WebView/WebView.mm: Added JSDocument.h and JSNodeList.h to the include list.
2430         These headers makes it possible to:
2431         1) Get a Document off of a JSDocument;
2432         2) Call toJS function, defined in JSNodeList.cpp|h so we can convert RefPtr<NodeList>
2433         gotten from Document::nodesFromRect to JS bindings.
2434         (-[WebView _nodesFromRect:forDocument:x:y:hPadding:vPadding:ignoreClipping:]):
2435         * WebView/WebViewPrivate.h: Added nodesFromRect method to access methods of the
2436         Document class not exposed to JavaScript. It works similarly to computedStyleIncludingVisitedInfo.
2437
2438 2010-09-24  Jia Pu  <jpu@apple.com>
2439
2440         Reviewed by Dan Bernstein.
2441
2442         automaticSpellingCorrectionEnabled isn't updated.
2443         https://bugs.webkit.org/show_bug.cgi?id=46486
2444         <rdar://problem/8475212>
2445
2446         * WebView/WebView.mm:
2447         (+[WebView initialize]): Should update "automaticSpellingCorrectionEnabled"
2448           instead of "automaticTextReplacementEnabled".
2449
2450 2010-09-23  Alexey Proskuryakov  <ap@apple.com>
2451
2452         Reviewed by Darin Adler.
2453
2454         https://bugs.webkit.org/show_bug.cgi?id=46380
2455         REGRESSION: Crash when downloading a file
2456
2457         Downloading cannot be tested in DRT.
2458
2459         * Misc/WebNSFileManagerExtras.m: (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]):
2460         Don't copy null strings.
2461
2462 2010-09-24  Ilya Tikhonovsky  <loislo@chromium.org>
2463
2464         Reviewed by Yury Semikhatsky.
2465
2466         Web Inspector: CRASH at node highlight on MAC Safari.
2467         1) run-safari --debug
2468         2) open inspector
2469         3) open elements panel
2470         4) hover mouse over elements panel items multiple times
2471         5) CRASH
2472         Looks like it is a race condition. WebNodeHighlightView doesn't check
2473         the pointer to WebNodeHighligh object and it can be nil.
2474
2475         https://bugs.webkit.org/show_bug.cgi?id=46261
2476
2477         * WebInspector/WebNodeHighlightView.mm:
2478         (-[WebNodeHighlightView drawRect:]):
2479
2480 2010-09-23  Andy Estes  <aestes@apple.com>
2481
2482         Reviewed by Darin Adler.
2483
2484         REGRESSION (r61285): some Dashboard widgets are always invisible due to
2485         HTML parser changes.
2486         https://bugs.webkit.org/show_bug.cgi?id=46435
2487
2488         Enable pre-HTML5 parser quirks if Dashboard is in backward compatibility
2489         mode.
2490
2491         * WebView/WebView.mm:
2492         (-[WebView _needsPreHTML5ParserQuirks]): Renamed from
2493         shouldUsePreHTML5ParserQuirks(). Return true if
2494         WebCore::Settings::usesDashboardCompatibilityMode() is true.
2495         (-[WebView _preferencesChangedNotification:]):
2496         (-[WebView _setDashboardBehavior:to:]): Enable pre-HTML5 parser quirks
2497         if Dashboard behavior is set to backward compatibility mode.
2498
2499 2010-09-23  Matthew Delaney  <mdelaney@apple.com>
2500
2501         Reviewed by Simon Fraser.
2502
2503         Reduce minimum DOMTimer interval
2504         https://bugs.webkit.org/show_bug.cgi?id=45362
2505
2506         * WebView/WebView.mm:
2507         Updating set interval call to use Settings' static version inside
2508         one time init block.
2509
2510 2010-09-22  Andy Estes  <aestes@apple.com>
2511
2512         Reviewed by Darin Adler.
2513
2514         REGRESSION (r61285): Microsoft Entourage 2008 does not invoke My Day window
2515         https://bugs.webkit.org/show_bug.cgi?id=46334
2516
2517         Microsoft My Day loads scripts using self-closing script tags, markup
2518         which is incompatible with the HTML5 parser. Enable parser quirks for
2519         this application.
2520
2521         * WebView/WebView.mm:
2522         (shouldUsePreHTML5ParserQuirks): Return true if the application is
2523         Microsoft My Day and was linked against a version of WebKit prior to the
2524         introduction of the HTML5 parser.
2525
2526 2010-09-23  Nate Chapin  <japhet@chromium.org>
2527
2528         Reviewed by Darin Fisher.
2529
2530         Add hyperlink auditing settings (i.e., <a ping>).
2531         https://bugs.webkit.org/show_bug.cgi?id=30458
2532
2533         * WebView/WebPreferenceKeysPrivate.h:
2534         * WebView/WebPreferences.mm:
2535         (+[WebPreferences initialize]):
2536         (-[WebPreferences setMemoryInfoEnabled:]):
2537         (-[WebPreferences hyperlinkAuditingEnabled]):
2538         (-[WebPreferences setHyperlinkAuditingEnabled:]):
2539         * WebView/WebPreferencesPrivate.h:
2540         * WebView/WebView.mm:
2541         (-[WebView _preferencesChangedNotification:]):
2542
2543 2010-09-22  Alexey Proskuryakov  <ap@apple.com>
2544
2545         Reviewed by Anders Carlsson.
2546
2547         https://bugs.webkit.org/show_bug.cgi?id=43667
2548         ASSERT failure in NetscapePluginInstanceProxy::disconnectStream
2549
2550         Test: plugins/get-javascript-url.html
2551
2552         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2553         (WebKit::NetscapePluginInstanceProxy::evaluateJavaScript): Add the stream to m_streams, just
2554         like any other one.
2555
2556 2010-09-21  Darin Adler  <darin@apple.com>
2557
2558         Reviewed by Anders Carlsson.
2559
2560         Fix some Objective-C GC problems and use RetainPtr instead of HardRetain/Release
2561         https://bugs.webkit.org/show_bug.cgi?id=46220
2562
2563         * Misc/WebNSFileManagerExtras.m:
2564         (setMetaData): Use CFRelease instead of HardRelease.
2565         (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): Use CFStringCreateCopy
2566         instead of -[NSObject copy] combined with HardRetainWithNSRelease.
2567
2568 2010-09-22  Balazs Kelemen  <kb@inf.u-szeged.hu>
2569
2570         Reviewed by Kenneth Rohde Christiansen.
2571
2572         PluginStrategy should satisfy the needs of Qt
2573         https://bugs.webkit.org/show_bug.cgi?id=45857
2574         No new functionality so no new tests.
2575
2576         * WebCoreSupport/WebPlatformStrategies.h:
2577         * WebCoreSupport/WebPlatformStrategies.mm:
2578         (WebPlatformStrategies::getPluginInfo):
2579
2580 2010-09-22  Paul Knight  <pknight@apple.com>
2581
2582         Reviewed by Simon Fraser.
2583
2584         -[WebView _scheduleCompositingLayerSync] should wake the run loop
2585         https://bugs.webkit.org/show_bug.cgi?id=46226
2586
2587         Call CFRunLoopWakeUp to make sure the run loop is not sleeping, which could delay layer painting.
2588
2589         * WebView/WebView.mm:
2590         (-[WebView _scheduleCompositingLayerSync]):
2591
2592 2010-09-21  Andy Estes  <aestes@apple.com>
2593
2594         Reviewed by Darin Adler.
2595
2596         REGRESSION (r61285): AIM 2.1.296: Code rendered as text in Welcome screen
2597         https://bugs.webkit.org/show_bug.cgi?id=46134
2598
2599         AIM clients linked against versions of WebKit prior to the introduction
2600         of the HTML5 parser contain markup incompatible with the new parser.
2601         Enable parser quirks in this case to remain compatible with these
2602         clients.
2603
2604         * WebView/WebView.mm:
2605         (shouldUsePreHTML5ParserQuirks): Returns true if the embedding
2606         application is AIM and was linked against a version of WebKit prior to
2607         the introduction of the HTML5 parser, or if the
2608         WebKitPreHTML5ParserQuirks WebPreference is enabled.
2609         (-[WebView _preferencesChangedNotification:]): Call
2610         WebCore::Settings::setUsePreHTML5ParserQuirks().
2611
2612 2010-09-21  Steve Block  <steveblock@google.com>
2613
2614         Reviewed by Jeremy Orlow.
2615
2616         DeviceOrientationClient and DeviceMotionClient should have controllerDestroyed() methods
2617         https://bugs.webkit.org/show_bug.cgi?id=45891
2618
2619         Implements WebDeviceOrientationClient::deviceOrientationControllerDestroyed to delete the client.
2620
2621         * WebCoreSupport/WebDeviceOrientationClient.h:
2622         * WebCoreSupport/WebDeviceOrientationClient.mm:
2623         (WebDeviceOrientationClient::deviceOrientationControllerDestroyed):
2624
2625 2010-09-20  Philippe Normand  <pnormand@igalia.com>
2626
2627         Reviewed by Eric Carlson.
2628
2629         [GTK] enhanced context menu for media elements
2630         https://bugs.webkit.org/show_bug.cgi?id=45021
2631
2632         New localized strings for the media element context-menu.
2633
2634         * WebCoreSupport/WebPlatformStrategies.h:
2635         * WebCoreSupport/WebPlatformStrategies.mm:
2636         (WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow):
2637         (WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow):
2638         (WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard):
2639         (WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard):
2640         (WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
2641         (WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
2642         (WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
2643         (WebPlatformStrategies::contextMenuItemTagMediaPlay):
2644         (WebPlatformStrategies::contextMenuItemTagMediaPause):
2645         (WebPlatformStrategies::contextMenuItemTagMediaMute):
2646
2647 2010-09-20  Andy Estes  <aestes@apple.com>
2648
2649         Reviewed by Adam Barth.
2650
2651         REGRESSION (HTML5 Parser): Pages broken due to <tag<tag> parsing changes
2652         https://bugs.webkit.org/show_bug.cgi?id=40961
2653
2654         Implement WebKitUsePreHTML5ParserQuirks preference.
2655
2656         * WebView/WebPreferenceKeysPrivate.h:
2657         * WebView/WebPreferences.mm:
2658         (+[WebPreferences initialize]): Default WebKitUsePreHTML5ParserQuirks to
2659         false.
2660         (-[WebPreferences usePreHTML5ParserQuirks]):
2661         (-[WebPreferences setUsePreHTML5ParserQuirks:]):
2662         * WebView/WebPreferencesPrivate.h:
2663         * WebView/WebView.mm:
2664         (-[WebView _preferencesChangedNotification:]): Update WebCore::Settings
2665         with the value of WebKitUsePreHTML5ParserQuirks when a preference
2666         changes.
2667
2668 2010-09-20  Enrica Casucci  <enrica@apple.com>
2669
2670         Reviewed by Sam Weinig.
2671
2672         Pasteboard doesn't work in WebKit2.
2673         https://bugs.webkit.org/show_bug.cgi?id=42317
2674         <rdar://problem/7660537>
2675
2676         Some changes to fix style inconsistencies.
2677         Added OBJC 2.0 style enumeration.
2678         
2679         * WebCoreSupport/WebEditorClient.h:
2680         * WebCoreSupport/WebEditorClient.mm:
2681         (WebEditorClient::userVisibleString):
2682         (createExcludedElementsForAttributedStringConversion):
2683         (WebEditorClient::documentFragmentFromAttributedString): Changed parameter to be
2684         a Vector of RefPtr.
2685         (WebEditorClient::setInsertionPasteboard):
2686         (WebEditorClient::pasteboardTypesForSelection):
2687
2688 2010-09-17  David Hyatt  <hyatt@apple.com>
2689
2690         Reviewed by Simon Fraser.
2691
2692         https://bugs.webkit.org/show_bug.cgi?id=45993, convert printing to the new pagination model.
2693
2694         Make printing store the page height in the RenderView and push that into the layout state to
2695         use the new pagination model.  The old pagination model is retained because it is still used
2696         for embedded WebViews.
2697
2698         * WebView/WebHTMLView.mm:
2699         (-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]):
2700
2701 2010-09-17  Darin Adler  <darin@apple.com>
2702
2703         Reviewed by Sam Weinig.
2704
2705         REGRESSION (r60104): Zoom level is unexpectedly reset on page reload
2706         https://bugs.webkit.org/show_bug.cgi?id=42863
2707
2708         * WebView/WebView.mm:
2709         (-[WebView _setZoomMultiplier:isTextOnly:]):
2710         Call functions on Frame instead of FrameView.
2711
2712 2010-09-17  Matthew Delaney  <mdelaney@apple.com>
2713
2714         Reviewed by Simon Fraser.
2715
2716         Reduce minimum DOMTimer interval
2717         https://bugs.webkit.org/show_bug.cgi?id=45362
2718
2719         * WebView/WebView.mm: Added in a call to set the mimimum allowed DOMTimer to 4ms.
2720
2721 2010-09-17  Chris Marrin  <cmarrin@apple.com>
2722
2723         Reviewed by Simon Fraser.
2724
2725         Add WebKitAccelerated2dCanvasEnabled flag to WebKit for Mac
2726         https://bugs.webkit.org/show_bug.cgi?id=45911
2727
2728         * WebView/WebPreferenceKeysPrivate.h:
2729         * WebView/WebPreferences.mm:
2730         (+[WebPreferences initialize]):
2731         (-[WebPreferences accelerated2dCanvasEnabled]):
2732         (-[WebPreferences setAccelerated2dCanvasEnabled:]):
2733         * WebView/WebPreferencesPrivate.h:
2734         * WebView/WebView.mm:
2735         (-[WebView _preferencesChangedNotification:]):
2736
2737 2010-09-17  Jia Pu  <jpu@apple.com>
2738
2739         Reviewed by Dan Bernstein.
2740
2741         WebKit should use system wide spell checking preference when application specific one isn't set.
2742         https://bugs.webkit.org/show_bug.cgi?id=45789
2743         <rdar://problem/8416041>
2744
2745         * WebView/WebView.mm:
2746         (+[WebView initialize]): Use system wide autocorrection and text substitution preferences
2747           when the application level preferences are not set.
2748
2749 2010-09-16  John Sullivan  <sullivan@apple.com>
2750
2751         Reviewed by Darin Adler.
2752
2753         <rdar://problem/8395558>
2754         https://bugs.webkit.org/show_bug.cgi?id=45938
2755         _web_makePluginViewsPerformSelector:: mutates subviews array while iterating it
2756
2757         * WebView/WebHTMLView.mm:
2758         (-[WebHTMLView _web_makePluginSubviewsPerformSelector:withObject:]):
2759         Converted from -[NSArray _web_makePluginViewsPerformSelector:withObject:]. The old method
2760         was only ever called on the result of -[WebHTMLView subviews]. By moving that knowledge into
2761         this helper method, it can't be used incorrectly. Now it makes a copy of [WebHTMLView subviews]
2762         before enumerating it, to ensure that the selector can't mutate the array being enumerated.
2763         (-[WebHTMLView viewWillMoveToHostWindow:]):
2764         Updated for _web_makePluginSubviewsPerformSelector:: signature change.
2765         (-[WebHTMLView viewDidMoveToHostWindow]):
2766         Ditto.
2767
2768 2010-09-16  Darin Adler  <darin@apple.com>
2769
2770         Reviewed by Andreas Kling.
2771
2772         Reduce use of HTMLInputElement::inputType so we can remove it later
2773         https://bugs.webkit.org/show_bug.cgi?id=45903
2774
2775         * WebView/WebHTMLRepresentation.mm:
2776         (-[WebHTMLRepresentation elementDoesAutoComplete:]): Use isPasswordField.
2777         (-[WebHTMLRepresentation elementIsPassword:]): Use isPasswordField.
2778
2779 2010-09-16  Patrick Gansterer  <paroga@paroga.com>
2780
2781         Reviewed by Darin Adler.
2782
2783         Always use a valid string when setting WebKitUserStyleSheetLocationPreferenceKey.
2784         https://bugs.webkit.org/show_bug.cgi?id=41510
2785
2786         This prevents usage of nil value, which would cause an uncaught exception.
2787
2788         * WebView/WebPreferences.mm:
2789         (-[WebPreferences setUserStyleSheetLocation:]):
2790
2791 2010-09-16  Dan Bernstein  <mitz@apple.com>
2792
2793         Reverted the previous change because r67628 has been reverted.
2794
2795         * WebCoreSupport/WebPlatformStrategies.h:
2796         * WebCoreSupport/WebPlatformStrategies.mm:
2797
2798 2010-09-16  Dan Bernstein  <mitz@apple.com>
2799
2800         Build fix after r67628. Added context menu item localizable strings for the items
2801         added in r67628, following equivalent menu items in Mac OS X when possible. However,
2802         this set of menu items does not make much sense for Mac OS X, and this should be
2803         addressed separately.
2804
2805         * WebCoreSupport/WebPlatformStrategies.h:
2806         * WebCoreSupport/WebPlatformStrategies.mm:
2807         (WebPlatformStrategies::contextMenuItemTagOpenMediaInNewWindow):
2808         (WebPlatformStrategies::contextMenuItemTagCopyMediaLinkToClipboard):
2809         (WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
2810         (WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
2811         (WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
2812         (WebPlatformStrategies::contextMenuItemTagMediaPlay):
2813         (WebPlatformStrategies::contextMenuItemTagMediaPause):
2814         (WebPlatformStrategies::contextMenuItemTagMediaMute):
2815         (WebPlatformStrategies::contextMenuItemTagMediaUnMute):
2816
2817 2010-09-16  Eric Uhrhane  <ericu@chromium.org>
2818
2819         Reviewed by Jian Li.
2820
2821         Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM.
2822         https://bugs.webkit.org/show_bug.cgi?id=45798
2823
2824         * Configurations/FeatureDefines.xcconfig:
2825
2826 2010-09-15  Simon Fraser  <simon.fraser@apple.com>
2827
2828         Reviewed by Adam Roben.
2829
2830         https://bugs.webkit.org/show_bug.cgi?id=44715
2831         maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac
2832
2833         Move geometry flipping to platform-specific code.
2834
2835         * WebView/WebHTMLView.mm:
2836         (-[WebHTMLView attachRootLayer:]):
2837
2838 2010-09-14  Jia Pu  <jpu@apple.com>
2839
2840         Reviewed by Dan Bernstein.
2841
2842         Only intercept ESC key press when autocorrection UI is visible.
2843         https://bugs.webkit.org/show_bug.cgi?id=45071
2844
2845         * WebCoreSupport/WebEditorClient.h: Added declaration of isShowingCorrectionPanel(),
2846           which provides an inteface to query whether autocorrection panel is shown.
2847
2848         * WebCoreSupport/WebEditorClient.mm:
2849         (WebEditorClient::WebEditorClient): Defined a constant, InvalidCorrectionPanelTag,
2850           for invalid correction panel tag. Replaced -1 with this constant.
2851         (WebEditorClient::dismissCorrectionPanel): Ditto
2852         (WebEditorClient::isShowingCorrectionPanel): Query whether autocorrection panel is shown.
2853
2854 2010-09-14  Mark Rowe  <mrowe@apple.com>
2855
2856         Reviewed by John Sullivan.
2857
2858         Part of <rdar://problem/8420003>.  Make it possible to override the version number used in linked-in-or-after checks.
2859
2860         * Misc/WebKitVersionChecks.h: Remove two unused functions from the header and add a method to set the overriden version.
2861         * Misc/WebKitVersionChecks.m:
2862         (WebKitLinkedOnOrAfter):
2863         (setWebKitLinkTimeVersion): Set the overridden version.
2864         (WebKitLinkTimeVersion): Return the overridden version if set, otherwise do the old thing.
2865         * WebView/WebPreferences.mm:
2866         (+[WebPreferences setWebKitLinkTimeVersion:]): Call through to set the overridden version.
2867         * WebView/WebPreferencesPrivate.h:
2868
2869 2010-09-14  Eric Seidel  <eric@webkit.org>
2870
2871         Unreviewed, reverting changes r67451 and r67451.
2872         Broke lots of builders.
2873
2874         Only intercept ESC key press when autocorrection UI is visible.
2875         https://bugs.webkit.org/show_bug.cgi?id=45071
2876
2877         * WebCoreSupport/WebEditorClient.h:
2878         * WebCoreSupport/WebEditorClient.mm:
2879         (WebEditorClient::WebEditorClient):
2880         (WebEditorClient::dismissCorrectionPanel):
2881
2882 2010-09-14  Jia Pu  <jpu@apple.com>
2883
2884         Reviewed by Dan Bernstein.
2885
2886         Only intercept ESC key press when autocorrection UI is visible.
2887         https://bugs.webkit.org/show_bug.cgi?id=45071
2888
2889         * WebCoreSupport/WebEditorClient.h: Added declaration of isShowingCorrectionPanel(),
2890           which provides an inteface to query whether autocorrection panel is shown.
2891
2892         * WebCoreSupport/WebEditorClient.mm:
2893         (WebEditorClient::WebEditorClient): Defined a constant, InvalidCorrectionPanelTag,
2894           for invalid correction panel tag. Replaced -1 with this constant.
2895         (WebEditorClient::dismissCorrectionPanel): Ditto
2896         (WebEditorClient::isShowingCorrectionPanel): Query whether autocorrection panel is shown.
2897
2898 2010-09-13  Darin Adler  <darin@apple.com>
2899
2900         Reviewed by Adam Barth.
2901
2902         Preparation for eliminating deprecatedParseURL
2903         https://bugs.webkit.org/show_bug.cgi?id=45695
2904
2905         * DOM/WebDOMOperations.mm:
2906         (-[DOMDocument webFrame]): Get rid of unneeded local variable.
2907         (-[DOMDocument URLWithAttributeString:]): Remove unhelpful comment.
2908
2909 2010-09-13  Enrica Casucci  <enrica@apple.com>
2910
2911         Reviewed by Sam Weinig.
2912
2913         Paste should be implemented in WebCore like Copy and Cut for Mac also.
2914         https://bugs.webkit.org/show_bug.cgi?id=45494
2915         <rdar://problem/7660537>
2916
2917         On the Mac platform, the implementation of the paste operation is all done
2918         at the WebKit level. In order to support it on WebKit2 it is necessary to
2919         refactor the code and move this functionality at the level of WebCore like
2920         we already have on Windows.
2921         The original code relies on some in AppKit functions that call back into
2922         WebKit causing problems in WebKit2. All this functionality has been moved
2923         at the level of the editor client where it can be dealt with appropriately.
2924
2925         * WebCoreSupport/WebEditorClient.h:
2926         * WebCoreSupport/WebEditorClient.mm:
2927         (excludedElementsForAttributedStringConversion):
2928         (WebEditorClient::documentFragmentFromAttributedString): Added.
2929         (WebEditorClient::setInsertionPasteboard):
2930         * WebCoreSupport/WebFrameLoaderClient.h:
2931         * WebCoreSupport/WebFrameLoaderClient.mm:
2932         (WebFrameLoaderClient::canShowMIMETypeAsHTML): Re-implemented at the level
2933         of the editor client.
2934         * WebView/WebHTMLView.mm: Removed paste method.
2935
2936 2010-09-13  John Sullivan  <sullivan@apple.com>
2937
2938         Reviewed by Adam Roben.
2939
2940         https://bugs.webkit.org/show_bug.cgi?id=45677
2941         [WebView canMarkAllTextMatches] can crash if called after [WebView close]
2942         
2943         <rdar://problem/8404890>
2944
2945         * WebView/WebView.mm:
2946         (-[WebView canMarkAllTextMatches]):
2947         Return NO immediately if the webview has already been closed. This was an overlooked
2948         case from the fix for 45175.
2949
2950 2010-09-10  MORITA Hajime  <morrita@google.com>
2951
2952         Reviewed by Tony Chang.
2953
2954         [Chromium] Implement textInputController.hasSpellingMarker() for Chromium
2955         https://bugs.webkit.org/show_bug.cgi?id=45441
2956
2957         Moved the actual logic of hasSpellingMarker into WebCore to share
2958         it with other ports.
2959
2960         * WebView/WebFrame.mm:
2961         (-[WebFrame hasSpellingMarker:length:]):
2962
2963 2010-09-11  Adam Barth  <abarth@webkit.org>
2964
2965         Reviewed by Sam Weinig.
2966
2967         Make SecurityOrigin::canDisplay an instance function
2968         https://bugs.webkit.org/show_bug.cgi?id=45219
2969
2970         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2971         (WebKit::NetscapePluginInstanceProxy::loadRequest):
2972         * Plugins/WebNetscapePluginStream.mm:
2973         (WebNetscapePluginStream::WebNetscapePluginStream):
2974         * Plugins/WebNetscapePluginView.mm:
2975         (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
2976         * Plugins/WebPluginContainerCheck.mm:
2977         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
2978         * WebView/WebFrame.mm:
2979         (-[WebFrame _allowsFollowingLink:]):
2980
2981 2010-09-10  Sam Weinig  <sam@webkit.org>
2982
2983         Reviewed by Darin Adler.
2984
2985         Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom.
2986         Precursor to <rdar://problem/7660657>
2987         https://bugs.webkit.org/show_bug.cgi?id=45522
2988
2989         * WebView/WebView.mm:
2990         (-[WebView _preferencesChangedNotification:]):
2991         (-[WebView _setZoomMultiplier:isTextOnly:]):
2992         (-[WebView _realZoomMultiplierIsTextOnly]):
2993         * WebView/WebViewData.h:
2994         * WebView/WebViewData.mm:
2995         (-[WebViewPrivate init]):
2996         Move tracking of text only zoom here from WebCore.
2997
2998 2010-09-10  Stephanie Lewis  <slewis@apple.com>
2999
3000         Reviewed by Alexey Proskuryakov.
3001
3002         Refactor JavaScriptCore memory statistics so that WebKit doesn't need to know about the JIT and
3003         other implementation details of JavaScriptCore.  Necessary to fix PPC build.
3004         
3005         https://bugs.webkit.org/show_bug.cgi?id=45528
3006
3007         * Misc/WebCoreStatistics.mm:
3008         (+[WebCoreStatistics memoryStatistics]):
3009
3010 2010-09-10  Darin Adler  <darin@apple.com>
3011
3012         Reviewed by Sam Weinig.
3013
3014         Move some Dashboard stuff from WebCore to WebKit along with a bit more FrameMac cleanup
3015         https://bugs.webkit.org/show_bug.cgi?id=45582
3016
3017         * MigrateHeaders.make: Removed WebDashboardRegion.h from the set of header to copy.
3018
3019         * WebCoreSupport/WebChromeClient.mm:
3020         (WebChromeClient::dashboardRegionsChanged): Changed this to call
3021         -[WebView _dashboardRegions] so we don't have two copies of that code.
3022
3023         * WebView/WebDashboardRegion.h: Copied from WebCore/page/mac/WebDashboardRegion.h.
3024         * WebView/WebDashboardRegion.mm: Copied from WebCore/page/mac/WebDashboardRegion.m.
3025
3026         * WebView/WebView.mm:
3027         (-[WebView _dashboardRegions]): Moved the code from Frame::dashboardRegions here.
3028
3029 2010-09-10  Adam Barth  <abarth@webkit.org>
3030
3031         Reviewed by Darin Fisher.
3032
3033         Move code from WebKit-layer to DocumentLoader
3034         https://bugs.webkit.org/show_bug.cgi?id=45569
3035
3036         This code is the most confused, but now should be a bit cleaner.
3037         There's still a magical fake-setting for creating renderers that needs
3038         to be cleaned up, but we can do that in a separate patch.
3039
3040         * WebView/WebFrame.mm:
3041         (-[WebFrame _commitData:]):
3042         * WebView/WebFrameInternal.h:
3043         * WebView/WebHTMLRepresentation.mm:
3044         (-[WebHTMLRepresentation receivedData:withDataSource:]):
3045         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
3046
3047 2010-09-09  Darin Adler  <darin@apple.com>
3048
3049         Reviewed by Adam Barth.
3050
3051         Move functions from Frame to SelectionController as planned
3052         https://bugs.webkit.org/show_bug.cgi?id=45508
3053
3054         * WebView/WebFrame.mm:
3055         (-[WebFrame _selectionGranularity]):
3056         (-[WebFrame _insertParagraphSeparatorInQuotedContent]):
3057         (-[WebFrame _typingStyle]):
3058         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
3059         * WebView/WebHTMLRepresentation.mm:
3060         (-[WebHTMLRepresentation currentForm]):
3061         * WebView/WebHTMLView.mm:
3062         (-[WebHTMLView jumpToSelection:]):
3063         (-[WebHTMLView centerSelectionInVisibleArea:]):
3064         (-[WebHTMLView _canSmartCopyOrDelete]):
3065         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
3066         (-[WebHTMLView selectionRect]):
3067         (-[WebHTMLView selectionTextRects]):
3068         (-[WebHTMLView selectionImageRect]):
3069         * WebView/WebView.mm:
3070         (-[WebView setEditable:]):
3071         Call functions on selection().
3072
3073 2010-09-10  Adam Barth  <abarth@webkit.org>
3074
3075         Reviewed by Eric Seidel.
3076
3077         Main resource bytes shouldn't bounce through FrameLoader
3078         https://bugs.webkit.org/show_bug.cgi?id=45496
3079
3080         Now return the bytes to the DocumentLoader.
3081
3082         Previously, we were checking the document for null.  However, Frame can
3083         never have a null document, so this check is no longer needed.
3084
3085         * WebView/WebFrame.mm:
3086         (-[WebFrame _addData:]):
3087
3088 2010-09-09  John Therrell  <jtherrell@apple.com>
3089
3090         Reviewed by Alexey Proskuryakov.
3091
3092         Added statistics sampling and reporting for JavaScriptCore's RegisterFile and ExecutableAllocator classes
3093         https://bugs.webkit.org/show_bug.cgi?id=45134
3094
3095         Added ability to enable new JavaScriptCore statistics sampling and reporting for RegisterFile 
3096         and ExecutableAllocator classes. Added reporting of JavaScriptCore's stack committed memory 
3097         and JIT code committed memory statistics to WebCoreStatistics memoryStatistics.
3098
3099         * Misc/WebCoreStatistics.mm:
3100         (+[WebCoreStatistics memoryStatistics]):
3101         Added statistics reporting for JSC RegisterFile and ExecutableAllocator.
3102
3103 2010-09-09  Jer Noble  <jer.noble@apple.com>
3104
3105         Reviewed by Mark Rowe.
3106
3107         Use of ENABLE macro in WebUIDelegatePrivate.h breaks use from outside WebKit
3108         <rdar://problem/8412657>
3109
3110         * WebView/WebUIDelegatePrivate.h: Use ENABLE_FULLSCREEN_API instead of ENABLE(FULLSCREEN_API)
3111
3112 2010-09-08  Darin Adler  <darin@apple.com>
3113
3114         Reviewed by Adam Barth.
3115
3116         Move functions from Frame to Editor as planned
3117         https://bugs.webkit.org/show_bug.cgi?id=45218
3118
3119         * WebView/WebFrame.mm:
3120         (-[WebFrame _selectedString]):
3121         (-[WebFrame _firstRectForDOMRange:]):
3122         (-[WebFrame _markDOMRange]):
3123         (-[WebFrame _setTypingStyle:withUndoAction:]):
3124         * WebView/WebHTMLRepresentation.mm:
3125         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
3126         * WebView/WebHTMLView.mm:
3127         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
3128         (-[WebHTMLView toggleBaseWritingDirection:]):
3129         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
3130         (-[WebHTMLView countMatchesForText:caseSensitive:limit:markMatches:]):
3131         (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]):
3132         (-[WebHTMLView markedTextMatchesAreHighlighted]):
3133         * WebView/WebView.mm:
3134         (-[WebView setEditable:]):
3135         Changed call sites to use editor().
3136
3137 2010-09-08  MORITA Hajime  <morrita@google.com>
3138
3139         Reviewed by Ojan Vafai.
3140
3141         spellcheck does not check pasted text
3142         https://bugs.webkit.org/show_bug.cgi?id=40092
3143
3144         Implemented async spell-check APIs on WebEditorClient.
3145         The implementations are using [NSSpellChecker requestCheckingOfString]
3146         which is available only on Mac OS 10.6 or later.
3147         
3148         Note that [NSSpellChecker requestCheckingOfString] could invoke
3149         the callback block on on of their worker thread, so we need to
3150         return the result to the main thread where WebCore is running.
3151         For that purpose, we made WebEditorSpellCheckResponder class.
3152         
3153         Test: editing/spelling/spellcheck-pasted-text-001.html
3154         
3155         * WebCoreSupport/WebEditorClient.h:
3156         * WebCoreSupport/WebEditorClient.mm:
3157         (WebEditorClient::isAsynchronousSpellCheckingEnabled): Added.
3158         (-[WebEditorSpellCheckResponder initWithSender:WebCore::sequence:results:]): Added.
3159         (-[WebEditorSpellCheckResponder perform]): Added.
3160         (WebEditorClient::requestCheckingOfString): Added.
3161         * WebView/WebFramePrivate.h:
3162
3163 2010-09-08  MORITA Hajime  <morrita@google.com>
3164
3165         Reviewed by Tony Chang.
3166
3167         spelling underline gets lost on backspace
3168         https://bugs.webkit.org/show_bug.cgi?id=41423
3169
3170         Switched to use a anchorNode of the selection instead of a focused
3171         node for finer control of node selection in spellingNode():
3172         With the focused node, we cannot select other nodes but the first
3173         child of that node. In some case, we need to inspect these.
3174
3175         The API is only for LayoutTests, and the change is compatible for
3176         existing test cases.
3177         
3178         * WebView/WebFrame.mm:
3179         (spellingNode):
3180
3181 2010-09-08  Adam Barth  <abarth@webkit.org>
3182
3183         Rubber-stamped by Eric Seidel.
3184
3185         Rename DocLoader to CachedResourceLoader because that's what it does.
3186
3187         * WebView/WebFrame.mm:
3188
3189 2010-09-07  Anders Carlsson  <andersca@apple.com>
3190
3191         Reviewed by Oliver Hunt.
3192
3193         Fix clang++ build.
3194
3195         * Misc/WebLocalizableStrings.h:
3196         Fix a struct/tag mismatch.
3197
3198         * WebView/WebDeviceOrientationProviderMock.mm:
3199         (-[WebDeviceOrientationProviderMock init]):
3200         Remove stray semicolon.
3201
3202         * WebView/WebViewData.h:
3203         Remove unused class forward declaration.
3204
3205 2010-09-07  Anders Carlsson  <andersca@apple.com>
3206
3207         Reviewed by Darin Adler.
3208
3209         <rdar://problem/8381749> -Wcast-align warning emitted when building with clang
3210
3211         Remove the -Wcast-align-warning since it isn't really useful, and clang is more aggressive about warning than gcc.
3212         
3213         * Configurations/Base.xcconfig:
3214
3215 2010-09-06  Adam Barth  <abarth@webkit.org>
3216
3217         Reviewed by Darin Adler.
3218
3219         Rename SecurityOrigin::canLoad to canDisplay
3220         https://bugs.webkit.org/show_bug.cgi?id=45214
3221
3222         Propagate name change.
3223
3224         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3225         (WebKit::NetscapePluginInstanceProxy::loadRequest):
3226         * Plugins/WebNetscapePluginStream.mm:
3227         (WebNetscapePluginStream::WebNetscapePluginStream):
3228         * Plugins/WebNetscapePluginView.mm:
3229         (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
3230         * Plugins/WebPluginContainerCheck.mm:
3231         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
3232         * WebView/WebFrame.mm:
3233         (-[WebFrame _allowsFollowingLink:]):
3234
3235 2010-09-03  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
3236
3237         Reviewed by Darin Adler.
3238
3239         Add NetworkingContext to avoid layer violations
3240         https://bugs.webkit.org/show_bug.cgi?id=42292
3241
3242         Add Mac's specific implementation of FrameNetworkingContext.
3243
3244         * WebCoreSupport/WebFrameLoaderClient.h:
3245         * WebCoreSupport/WebFrameLoaderClient.mm:
3246         * WebCoreSupport/WebFrameNetworkingContext.mm:
3247         (WebFrameNetworkingContext::needsSiteSpecificQuirks):
3248         (WebFrameNetworkingContext::localFileContentSniffingEnabled):
3249         (WebFrameNetworkingContext::scheduledRunLoopPairs):
3250         (WebFrameNetworkingContext::blockedError):
3251
3252 2010-09-03  John Sullivan  <sullivan@apple.com>
3253
3254         Reviewed by Dan Bernstein.
3255         
3256         https://bugs.webkit.org/show_bug.cgi?id=45175
3257         [WebView unmarkAllTextMatches] will crash if the webview is already closed
3258
3259         Made this and related methods robust against being called when the WebView is closed.
3260
3261         * WebView/WebView.mm:
3262         (-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]):
3263         Bail out if the WebView is closed.
3264         (-[WebView countMatchesForText:caseSensitive:highlight:limit:markMatches:]):
3265         Ditto.
3266         (-[WebView unmarkAllTextMatches]):
3267         Ditto.
3268         (-[WebView rectsForTextMatches]):
3269         Ditto.
3270
3271 2010-09-03  Hironori Bono  <hbono@chromium.org>
3272
3273         Reviewed by Kent Tamura.
3274
3275         Adds textInputController.hasSpellingMarker() to avoid using pixel tests for spellchecking tests
3276         and implements it for Mac.
3277         https://bugs.webkit.org/show_bug.cgi?id=41832
3278
3279         * WebView/WebFrame.mm: Implemented [WebFrame hasSpellingMarker:length:].
3280         (spellingNode):
3281         (-[WebFrame hasSpellingMarker:length:]):
3282         * WebView/WebFramePrivate.h: Added [WebFrame hasSpellingMarker:length:] so TextInputController can use it.
3283
3284 2010-09-02  Yury Semikhatsky  <yurys@chromium.org>
3285
3286         Reviewed by Pavel Feldman.
3287
3288         REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
3289         https://bugs.webkit.org/show_bug.cgi?id=44230
3290
3291         * WebCoreSupport/WebInspectorClient.h:
3292         * WebCoreSupport/WebInspectorClient.mm:
3293         (WebInspectorFrontendClient::closeWindow):
3294         (WebInspectorFrontendClient::disconnectFromBackend):
3295         (-[WebInspectorWindowController windowShouldClose:]):
3296         (-[WebInspectorWindowController destroyInspectorView:]):
3297
3298 2010-09-02  Steve Block  <steveblock@google.com>
3299
3300         Reviewed by Adam Barth.
3301
3302         Hook up LayoutTestController.setMockDeviceOrientation() on Mac.
3303         https://bugs.webkit.org/show_bug.cgi?id=43181
3304
3305         This patch hooks up the mock device orientation client on Mac for use
3306         in DumpRenderTree.
3307
3308         The patch adds a new WebDeviceOrientationClient for Mac. This client acts
3309         as a proxy to either a real or mock device orientation provider, both of
3310         which implement a new WebDeviceOrientationProvider interface.
3311
3312         The provider is created by the embedder and passed to the WebView, from
3313         where WebDeviceOrientationClient can access it.
3314
3315         The mock provider, WebDeviceOrientationProviderMock, is a wrapper around
3316         the existing WebCore mock.
3317
3318         * WebCoreSupport/WebDeviceOrientationClient.h: Added.
3319         * WebCoreSupport/WebDeviceOrientationClient.mm: Added.
3320         (WebDeviceOrientationClient::WebDeviceOrientationClient):
3321         (WebDeviceOrientationClient::setController):
3322         (WebDeviceOrientationClient::startUpdating):
3323         (WebDeviceOrientationClient::stopUpdating):
3324         (WebDeviceOrientationClient::lastOrientation):
3325         * WebKit.exp:
3326         * WebView/WebDeviceOrientation.h: Added.
3327         * WebView/WebDeviceOrientation.mm: Added.
3328         (-[WebDeviceOrientation initWithCoreDeviceOrientation:WebCore::]):
3329         (core):
3330         (-[WebDeviceOrientation initWithCanProvideAlpha:alpha:canProvideBeta:beta:canProvideGamma:gamma:]):
3331         (-[WebDeviceOrientation dealloc]):
3332         * WebView/WebDeviceOrientationInternal.h: Added.
3333         * WebView/WebDeviceOrientationProvider.h: Added.
3334         * WebView/WebDeviceOrientationProviderMock.h: Added.
3335         * WebView/WebDeviceOrientationProviderMock.mm: Added.
3336         (-[WebDeviceOrientationProviderMockInternal setOrientation:]):
3337         (-[WebDeviceOrientationProviderMockInternal setController:]):
3338         (-[WebDeviceOrientationProviderMockInternal startUpdating]):
3339         (-[WebDeviceOrientationProviderMockInternal stopUpdating]):
3340         (-[WebDeviceOrientationProviderMockInternal lastOrientation]):
3341         (-[WebDeviceOrientationProviderMock init]):
3342         (-[WebDeviceOrientationProviderMock dealloc]):
3343         (-[WebDeviceOrientationProviderMock setOrientation:]):
3344         (-[WebDeviceOrientationProviderMock setController:]):
3345         (-[WebDeviceOrientationProviderMock startUpdating]):
3346         (-[WebDeviceOrientationProviderMock stopUpdating]):
3347         (-[WebDeviceOrientationProviderMock lastOrientation]):
3348         * WebView/WebDeviceOrientationProviderMockInternal.h: Added.
3349         * WebView/WebView.mm:
3350         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
3351         (-[WebView _setDeviceOrientationProvider:]):
3352         (-[WebView _deviceOrientationProvider]):
3353         * WebView/WebViewData.h:
3354         * WebView/WebViewPrivate.h:
3355
3356 2010-09-01  Jia Pu  <jpu@apple.com>
3357
3358         Reviewed by Dan Bernstein.
3359
3360         Add support for autocorrection UI on Mac OS X.
3361         https://bugs.webkit.org/show_bug.cgi?id=44958
3362         <rdar://problem/7326847>
3363
3364         See detailed high level description in WebCore/ChangeLog.
3365
3366         * WebCoreSupport/WebEditorClient.h: Added new member methods declared in
3367           EditorClient. Added m_correctionPanelTag to store the ID of current autocorrection UI object.
3368
3369         * WebCoreSupport/WebEditorClient.mm:
3370         (WebEditorClient::WebEditorClient): Initialize m_correctionPanelTag.
3371         (WebEditorClient::~WebEditorClient): Make sure the autocorrection UI is
3372           dismissed before destroying the object.
3373         (WebEditorClient::respondToChangedSelection): Dismiss autocorrection UI whenever the selection changes.
3374         (WebEditorClient::showCorrectionPanel): Show autocorrection UI.
3375         (WebEditorClient::dismissCorrectionPanel): Dismiss autocorrection UI.
3376
3377 2010-09-01  Mark Rowe  <mrowe@apple.com>
3378
3379         Reviewed by Adam Roben.
3380
3381         <rdar://problem/8374711> WebKit needs to compile without access to QuickDraw private headers.
3382
3383         * Carbon/HIViewAdapter.m:
3384         * Carbon/HIWebView.mm:
3385         * Misc/QuickDrawCompatibility.h: Added.
3386         * Plugins/WebNetscapePluginView.mm:
3387
3388 2010-08-31  Dave Hyatt  <hyatt@apple.com>
3389
3390         Reviewed by Sam Weinig.
3391
3392         https://bugs.webkit.org/show_bug.cgi?id=44863, disentangle style recalc from layout, so that
3393         the former can occur in more places without having to do the latter.
3394
3395         Eliminate Mac-specific code for style re-application and recursive layout/style updating in 
3396         favor of the cross-platform code that all the other ports use.
3397
3398         * Carbon/HIWebView.mm:
3399         (Draw):
3400         * WebCoreSupport/WebFrameLoaderClient.mm:
3401         (WebFrameLoaderClient::forceLayout):
3402         * WebView/WebHTMLView.mm:
3403         (-[WebHTMLView _propagateDirtyRectsToOpaqueAncestors]):
3404         (-[WebHTMLView viewWillDraw]):
3405         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
3406         (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
3407         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
3408         (-[WebHTMLView reapplyStyles]):
3409         (-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]):
3410         (-[WebHTMLView setNeedsToApplyStyles:]):
3411         (-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
3412         (-[WebHTMLView _layoutIfNeeded]):
3413         (-[WebHTMLView _web_updateLayoutAndStyleIfNeededRecursive]):
3414         * WebView/WebHTMLViewInternal.h:
3415         * WebView/WebView.mm:
3416         (-[WebView _viewWillDrawInternal]):
3417
3418 2010-08-31  Sam Weinig  <sam@webkit.org>
3419
3420         Reviewed by Darin Adler.
3421
3422         Add ability to count text matches without marking
3423         https://bugs.webkit.org/show_bug.cgi?id=43996
3424
3425         Safari needs to be able to count text matches without triggering lots of repainting.
3426         Rename markAllMatchesForText: to countMatchesForText: and add a markMatches:
3427         parameter.  For backwards compatibility markAllMatchesForText: calls
3428         countMatchesForText: and passes YES for markMatches:.
3429
3430         * WebView/WebDocumentInternal.h:
3431         * WebView/WebHTMLView.mm:
3432         (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]):
3433         (-[WebHTMLView countMatchesForText:caseSensitive:limit:markMatches:]):
3434         * WebView/WebPDFView.mm:
3435         (-[WebPDFView markAllMatchesForText:caseSensitive:limit:]):
3436         (-[WebPDFView countMatchesForText:caseSensitive:limit:markMatches:]):
3437         * WebView/WebView.mm:
3438         (-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]):
3439         (-[WebView countMatchesForText:caseSensitive:highlight:limit:markMatches:]):
3440         * WebView/WebViewPrivate.h:
3441
3442 2010-08-31  Darin Adler  <darin@apple.com>
3443
3444         Reviewed by Anders Carlsson.
3445
3446         * WebInspector/WebInspectorFrontend.mm:
3447         (-[WebInspectorFrontend initWithFrontendClient:]): Remove a stray semicolon.
3448
3449 2010-08-30  Mark Rowe  <mrowe@apple.com>
3450
3451         Reviewed by Darin Adler.
3452
3453         <rdar://problem/8369736> WebKit build fails.
3454
3455         Temporarily add some extra includes in order to get things building again until <rdar://problem/8374711> is addressed.
3456
3457         * Carbon/HIViewAdapter.m:
3458         * Carbon/HIWebView.mm:
3459         * Plugins/WebNetscapePluginView.mm:
3460
3461 2010-08-30  Andy Estes  <aestes@apple.com>
3462
3463         Reviewed by Darin Adler.
3464
3465         REGRESSION (r66156): Sites using AppleConnect for authentication fail to log in.
3466         https://bugs.webkit.org/show_bug.cgi?id=44865
3467
3468         After http://trac.webkit.org/changeset/66156, sites using the AppleConnect plug-in
3469         for authentication fail to log in. This is due to a bug in AppleConnect that r66156
3470         exposed, but since this will have a significant impact on users of WebKit nightly
3471         builds, a plugin-specific hack should be added while the underlying issue is being
3472         addressed.
3473
3474         * WebCoreSupport/WebFrameLoaderClient.mm:
3475         (WebFrameLoaderClient::createPlugin): Convert plug-in parameter names to lowercase
3476         if the plugin is of type 'application/x-snkp'.
3477
3478 2010-08-27  Jer Noble  <jer.noble@apple.com>
3479
3480         Reviewed by Eric Carlson.
3481
3482         text/plain non-video files cause <video> to hang (while reading them?)
3483         https://bugs.webkit.org/show_bug.cgi?id=44212
3484         
3485         Add the new WebKitSystemInterface function WKQTMovieDisableComponent to
3486         the initialization routine.
3487
3488         * WebCoreSupport/WebSystemInterface.mm:
3489         (InitWebCoreSystemInterface): Initialize WKQTMovieDisableComponent.
3490
3491 2010-08-30  Sheriff Bot  <webkit.review.bot@gmail.com>
3492
3493         Unreviewed, rolling out r66198.
3494         http://trac.webkit.org/changeset/66198
3495         https://bugs.webkit.org/show_bug.cgi?id=44856
3496
3497         It made tests crash on Qt bot (Requested by Ossy_ on #webkit).
3498
3499         * WebCoreSupport/WebInspectorClient.h:
3500         * WebCoreSupport/WebInspectorClient.mm:
3501         (WebInspectorFrontendClient::closeWindow):
3502         (-[WebInspectorWindowController windowShouldClose:]):
3503         (-[WebInspectorWindowController destroyInspectorView]):
3504
3505 2010-08-28  Darin Adler  <darin@apple.com>
3506
3507         Reviewed by Sam Weinig.
3508
3509         Make an internal method used by Apple Mail into SPI
3510         https://bugs.webkit.org/show_bug.cgi?id=44832
3511         rdar://problem/5748951
3512
3513         * WebView/WebFrame.mm:
3514         (-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Moved this method
3515         from the internal section to the private section.
3516         * WebView/WebFrameInternal.h: Moved the method declaration out of here.
3517         * WebView/WebFramePrivate.h: Moved the method declaration in here.
3518
3519 2010-08-27  Jer Noble  <jer.noble@apple.com>
3520
3521         Reviewed by Eric Carlson.
3522
3523         Add JavaScript API to allow a page to go fullscreen.
3524         rdar://problem/6867795
3525
3526         Added chrome client overrides which support entering and exiting full screen.  A new preference has
3527         been added (setFullScreenEnabled:) to control at runtime whether full screen support is enabled 
3528         (defaults to disabled).  Added a new WebKitFullScreenListener callback object which notifies WebCore
3529         when the chrome has started/finished its full screen animation.
3530
3531         * Configurations/FeatureDefines.xcconfig:
3532         * WebCoreSupport/WebChromeClient.h:
3533         * WebCoreSupport/WebChromeClient.mm:
3534         (WebChromeClient::supportsFullscreenForElement):
3535         (WebChromeClient::enterFullscreenForElement):
3536         (WebChromeClient::exitFullscreenForElement):
3537         (-[WebKitFullScreenListener initWithElement:]):
3538         (-[WebKitFullScreenListener webkitWillEnterFullScreen]):
3539         (-[WebKitFullScreenListener webkitDidEnterFullScreen]):
3540         (-[WebKitFullScreenListener webkitWillExitFullScreen]):
3541         (-[WebKitFullScreenListener webkitDidExitFullScreen]):
3542         * WebView/WebPreferenceKeysPrivate.h:
3543         * WebView/WebPreferences.h:
3544         * WebView/WebPreferences.mm:
3545         (+[WebPreferences initialize]):
3546         (-[WebPreferences setFullScreenEnabled:]):
3547         (-[WebPreferences fullScreenEnabled]):
3548         * WebView/WebUIDelegatePrivate.h:
3549         * WebView/WebView.mm:
3550         (-[WebView _preferencesChangedNotification:]):
3551
3552 2010-08-27  David Hyatt  <hyatt@apple.com>
3553
3554         Reviewed by Simon Fraser.
3555
3556         https://bugs.webkit.org/show_bug.cgi?id=44788, implement HTML5-compliant doctype switching.
3557
3558         Rename the various modes to match the HTML5 specification:
3559             ParseMode -> CompatibilityMode
3560             CompatMode -> QuirksMode
3561             AlmostStrictMode -> LimitedQuirksMode
3562             StrictMode -> NoQuirksMode
3563             
3564         Remove the htmlHacks() accessor from RenderStyle and make rendering code just go to the document
3565         instead.  This makes switching modes avoid forcing all RenderStyles to detect as changed.
3566         
3567         Clean up user stylesheets to minimize style recalculation when the mode is switched.
3568         
3569         Fix bugs with the propagation of correct modes in the HTML5 parser.  Make sure the
3570         dummy document created for fragment parsing properly inherits the real document's CompatibilityMode.
3571         Make sure the tree builder properly changes the insertion mode to "BeforeHTML" after handling
3572         a doctype token.
3573         
3574         determineParseMode -> setCompatibilityModeFromDoctype, and it now implements the HTML5 algorithm
3575         precisely.
3576
3577         * WebView/WebView.mm:
3578         (-[WebView _preferencesChangedNotification:]):
3579
3580 2010-08-27  Yury Semikhatsky  <yurys@chromium.org>
3581
3582         Reviewed by Pavel Feldman.
3583
3584         REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
3585         https://bugs.webkit.org/show_bug.cgi?id=44230
3586
3587         * WebCoreSupport/WebInspectorClient.h:
3588         * WebCoreSupport/WebInspectorClient.mm:
3589         (WebInspectorFrontendClient::closeWindow):
3590         (WebInspectorFrontendClient::disconnectFromBackend):
3591         (-[WebInspectorWindowController windowShouldClose:]):
3592         (-[WebInspectorWindowController destroyInspectorView:]):
3593
3594 2010-08-26  Yury Semikhatsky  <yurys@chromium.org>
3595
3596         Unreviewed. Revert r66103 since Qt tests are failing.
3597
3598         * WebCoreSupport/WebInspectorClient.h:
3599         * WebCoreSupport/WebInspectorClient.mm:
3600         (WebInspectorFrontendClient::closeWindow):
3601         (-[WebInspectorWindowController windowShouldClose:]):
3602         (-[WebInspectorWindowController destroyInspectorView]):
3603
3604 2010-08-26  Yury Semikhatsky  <yurys@chromium.org>
3605
3606         Reviewed by Pavel Feldman.
3607
3608         REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
3609         https://bugs.webkit.org/show_bug.cgi?id=44230
3610
3611         * WebCoreSupport/WebInspectorClient.h:
3612         * WebCoreSupport/WebInspectorClient.mm:
3613         (WebInspectorFrontendClient::closeWindow):
3614         (WebInspectorFrontendClient::disconnectFromBackend):
3615         (-[WebInspectorWindowController windowShouldClose:]):
3616         (-[WebInspectorWindowController destroyInspectorView:]):
3617
3618 2010-08-24  Eric Seidel  <eric@webkit.org>
3619
3620         Reviewed by Adam Barth.
3621
3622         Remove HTML5 parser testing infrastructure now that we don't need it
3623         https://bugs.webkit.org/show_bug.cgi?id=44581
3624
3625         * WebView/WebPreferenceKeysPrivate.h:
3626         * WebView/WebPreferences.mm:
3627         (+[WebPreferences initialize]):
3628         * WebView/WebPreferencesPrivate.h:
3629         * WebView/WebView.mm:
3630         (-[WebView _preferencesChangedNotification:]):
3631
3632 2010-08-24  Sam Weinig  <sam@webkit.org>
3633
3634         Reviewed by Oliver Hunt.
3635
3636         Paste event fires twice for mac WebKit
3637         <rdar://problem/8094611>
3638         https://bugs.webkit.org/show_bug.cgi?id=44535
3639
3640         The mac implementation of paste in WebKit was accidentally calling 
3641         Editor::tryDHTMLPaste twice, once in -[WebHTMLView paste:] and once
3642         in Editor::pasteAsPlainText (which is called -[WebHTMLView paste:]).
3643         Use the new pasteAsPlainTextBypassingDHTML function to bypass the
3644         second call.
3645
3646         * WebView/WebHTMLView.mm:
3647         (-[WebHTMLView paste:]):
3648
3649 2010-08-24  Daniel Cheng  <dcheng@chromium.org>
3650
3651         Reviewed by Eric Seidel.
3652
3653         [chromium] Generate drag images for HTML elements and selections.
3654         https://bugs.webkit.org/show_bug.cgi?id=43449
3655
3656         Fix up calls to Frame::nodeImage, which has a new signature.
3657
3658         * Plugins/WebBaseNetscapePluginView.mm:
3659         (-[WebBaseNetscapePluginView halt]):
3660
3661 2010-08-23  Mike Thole  <mthole@apple.com>
3662
3663         Reviewed by Dan Bernstein.
3664
3665         WebPDFView should remove itself as the delegate of its PDFView before being dealloced
3666         https://bugs.webkit.org/show_bug.cgi?id=44441
3667
3668         * WebView/WebPDFView.mm:
3669         (-[WebPDFView dealloc]): Set the PDFView's delegate to nil.
3670
3671 2010-08-22  Daniel Bates  <dbates@rim.com>
3672
3673         Reviewed by Eric Seidel.
3674
3675         Encapsulate document marker management into DocumentMarkerController
3676         https://bugs.webkit.org/show_bug.cgi?id=44383
3677
3678         Modify call sites in the Apple Mac port to use DocumentMarkerController.
3679
3680         No functionality was changed, so no new tests.
3681
3682         * WebView/WebFrame.mm:
3683         (-[WebFrame _unmarkAllBadGrammar]):
3684         (-[WebFrame _unmarkAllMisspellings]):
3685         * WebView/WebHTMLView.mm:
3686         (-[WebHTMLView unmarkAllTextMatches]):
3687         (-[WebHTMLView rectsForTextMatches]):
3688
3689 2010-08-19  David Kilzer  <ddkilzer@apple.com>
3690
3691         <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
3692
3693         Reviewed by Joseph Pecoraro.
3694
3695         * Plugins/Hosted/HostedNetscapePluginStream.mm: Changed
3696         USE(PLUGIN_HOST_PROCESS) to
3697         USE(PLUGIN_HOST_PROCESS) && ENABLE(NETSCAPE_PLUGIN_API).
3698         * Plugins/Hosted/NetscapePluginHostManager.mm: Ditto.
3699         * Plugins/Hosted/NetscapePluginHostProxy.mm: Ditto.
3700         * Plugins/Hosted/NetscapePluginInstanceProxy.mm: Ditto.
3701         * Plugins/Hosted/ProxyInstance.mm: Ditto.
3702         * Plugins/Hosted/WebHostedNetscapePluginView.mm: Ditto.
3703         * WebCoreSupport/WebChromeClient.mm: Ditto.
3704         (WebChromeClient::createWindow):
3705         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
3706         (WebFrameLoaderClient::dispatchCreatePage):
3707         * WebView/WebHTMLView.mm:
3708         (needsCursorRectsSupportAtPoint): Added #if
3709         ENABLE(NETSCAPE_PLUGIN_API) and #endif macros as needed.
3710         * WebView/WebView.mm:
3711         (+[WebView _isNodeHaltedPlugin:]): Ditto.
3712         (+[WebView _hasPluginForNodeBeenHalted:]): Ditto.
3713         (+[WebView _restartHaltedPluginForNode:]): Ditto.
3714
3715 2010-08-17  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
3716
3717         Reviewed by Darin Adler.
3718
3719         Add NetworkingContext to avoid layer violations
3720         https://bugs.webkit.org/show_bug.cgi?id=42292
3721
3722         Preparation: Just add the files to the build system.
3723
3724         * WebCoreSupport/WebFrameNetworkingContext.h: Added.
3725         Placeholder with tentative code that might be changed when landing
3726         the rest of it.
3727         * WebCoreSupport/WebFrameNetworkingContext.mm: Added.
3728         Empty placeholder for now.
3729
3730 2010-08-17  Brady Eidson  <beidson@apple.com>
3731
3732         Reviewed by Sam Weinig.
3733
3734         Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
3735         <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
3736
3737         * WebView/WebView.mm:
3738         (-[WebView canGoBack]): Return false if loads are deferred.
3739         (-[WebView canGoForward]): Ditto.
3740
3741 2010-08-14  Joseph Pecoraro  <joepeck@webkit.org>
3742
3743         Reviewed by Pavel Feldman.
3744
3745         Web Inspector: -[WebInspector attach] and detach should work
3746         https://bugs.webkit.org/show_bug.cgi?id=43924
3747
3748         For actions that relate only to the Web Inspector's Frontend
3749         window (actions on the InspectorFrontendClient) the new Obj-C
3750         wrapper class WebInspectorFrontend can be used. For now, this
3751         is just attach and detach.
3752
3753         * WebCoreSupport/WebInspectorClient.mm:
3754         (WebInspectorClient::openInspectorFrontend): setup and attach the WebInspectorFrontend to the WebInspector.
3755         * WebInspector/WebInspector.h:
3756         * WebInspector/WebInspector.mm:
3757         (-[WebInspector dealloc]):
3758         (-[WebInspector attach:]): delegate to the frontend.
3759         (-[WebInspector detach:]): delegate to the frontend.
3760         (-[WebInspector setFrontend:]):
3761         * WebInspector/WebInspectorFrontend.h: Added.
3762         * WebInspector/WebInspectorFrontend.mm: Added.
3763         (-[WebInspectorFrontend initWithFrontendClient:]):
3764         (-[WebInspectorFrontend attach]):
3765         (-[WebInspectorFrontend detach]):
3766         * WebInspector/WebInspectorPrivate.h:
3767
3768 2010-08-13  Gavin Barraclough  <barraclough@apple.com>
3769
3770         Rubber stamped by Sam Weinig.
3771         Switch String::/UString::ascii() to return a CString.
3772
3773         * Plugins/Hosted/ProxyInstance.mm:
3774         (WebKit::ProxyInstance::methodsNamed):
3775         (WebKit::ProxyInstance::fieldNamed):
3776
3777 2010-08-13  Gavin Barraclough  <barraclough@apple.com>
3778
3779         Reviewed by Sam Weinig
3780
3781         Unify UString::UTF8String() & String::utf8() methods,
3782         remove UString::cost() & make atArrayIndex a free function.
3783
3784         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3785         (WebKit::NetscapePluginInstanceProxy::enumerate):
3786
3787 2010-08-12  Sheriff Bot  <webkit.review.bot@gmail.com>
3788
3789         Unreviewed, rolling out r65295.
3790         http://trac.webkit.org/changeset/65295
3791         https://bugs.webkit.org/show_bug.cgi?id=43950
3792
3793         It broke 4 sputnik tests (Requested by Ossy on #webkit).
3794
3795         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3796         (WebKit::NetscapePluginInstanceProxy::enumerate):
3797
3798 2010-08-12  Gavin Barraclough  <barraclough@apple.com>
3799
3800         Reviewed by Sam Weinig
3801
3802         Unify UString::UTF8String() & String::utf8() methods,
3803         remove UString::cost() & make atArrayIndex a free function.
3804
3805         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3806         (WebKit::NetscapePluginInstanceProxy::enumerate):
3807
3808 2010-08-12  Jeremy Orlow  <jorlow@chromium.org>
3809
3810         Revert for now
3811         https://bugs.webkit.org/show_bug.cgi?id=43794 
3812
3813         * WebView/WebView.mm:
3814         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
3815         (-[WebView _preferencesChangedNotification:]):
3816
3817 2010-08-10  Jeremy Orlow  <jorlow@chromium.org>
3818
3819         Reviewed by Adam Barth.
3820
3821         Some settings are linked to the PageGroup not the Page.  Create a new class for those.
3822         https://bugs.webkit.org/show_bug.cgi?id=43794
3823
3824         Change WebView to use the new GroupSettings class rather than Settings for the
3825         settings that moved.  This is sub-optimal since the settings aren't really
3826         per-view, but we can't really change the API at this point.
3827
3828         * WebView/WebView.mm:
3829         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
3830         (-[WebView _preferencesChangedNotification:]):
3831
3832 2010-08-11  Gavin Barraclough  <barraclough@apple.com>
3833
3834         Rubber stamps by Darin Adler & Sam Weinig.
3835
3836         Bug 43867 - Some UString cleanup
3837
3838         Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String.
3839         Move string concatenation methods to a new header to simplify down UString.h.  Remove is8Bit().
3840
3841         * WebView/WebScriptDebugger.mm:
3842         (toNSString):
3843
3844 2010-08-10  David Hyatt  <hyatt@apple.com>
3845
3846         Reviewed by Dan Bernstein.
3847
3848         https://bugs.webkit.org/show_bug.cgi?id=43806, add ability to paginate screen content.
3849         
3850         Add SPI for entering and exiting screen pagination mode.  This is similar to printing mode but it can be done for on-screen
3851         content.
3852
3853         * WebView/WebHTMLView.mm:
3854         (-[WebHTMLView _web_setPrintingModeRecursive]):
3855         (-[WebHTMLView _web_clearPrintingModeRecursive]):
3856         (-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]):
3857         (-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]):
3858         (-[WebHTMLView _endPrintMode]):
3859         (-[WebHTMLView _isInScreenPaginationMode]):
3860         (-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]):
3861         (-[WebHTMLView _endScreenPaginationMode]):
3862         (-[WebHTMLView reapplyStyles]):
3863         (-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
3864         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
3865         (-[WebHTMLView setPageWidthForPrinting:]):
3866         * WebView/WebHTMLViewPrivate.h:
3867
3868 2010-08-10  Gavin Barraclough  <barraclough@apple.com>
3869
3870         Build fix (update more includes)
3871
3872         * Plugins/Hosted/NetscapePluginHostManager.h:
3873
3874 2010-08-10  Chris Marrin  <cmarrin@apple.com>
3875
3876         Reviewed by Oliver Hunt.
3877
3878         Add suspendAnimations/resumeAnimation API to DRT
3879         https://bugs.webkit.org/show_bug.cgi?id=43733
3880         
3881         Mac specific API. Plumbs suspendAnimations/resumeAnimations down to WebCore.
3882
3883         * WebView/WebFrame.mm:
3884         (-[WebFrame _suspendAnimations]):
3885         (-[WebFrame _resumeAnimations]):
3886         * WebView/WebFramePrivate.h:
3887
3888 2010-08-10  Gavin Barraclough  <barraclough@apple.com>
3889
3890         Rubber stamped by Sam Weinig
3891
3892         Bug 43817 - Remove UString::Rep
3893         UString::Rep has for a long time been replaced by UStringImpl (Rep
3894         remaining as a typedef).  UStringImpl has since been removed too
3895         (unified with StringImpl). Remove Rep, rename rep() to impl() and
3896         m_rep to m_impl.  Also add impl() method to Identifier, and rename
3897         its UString member from _ustring to m_string.
3898
3899         * Plugins/Hosted/ProxyInstance.mm:
3900         (WebKit::ProxyInstance::methodsNamed):
3901         (WebKit::ProxyInstance::fieldNamed):
3902
3903 2010-08-06  Gavin Barraclough  <barraclough@apple.com>
3904
3905         Rubber stamped by Sam Weinig
3906
3907         Bug 43594 - Add string forwards to Forward.h
3908         This allows us to remove forward declarations for these classes from
3909         WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
3910
3911         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
3912         * Plugins/WebBaseNetscapePluginView.h:
3913         * WebCoreSupport/WebFrameLoaderClient.h:
3914         * WebCoreSupport/WebIconDatabaseClient.h:
3915         * WebCoreSupport/WebPluginHalterClient.h:
3916         * WebView/WebViewInternal.h:
3917
3918 2010-08-04  MORITA Hajime  <morrita@google.com>
3919
3920         Reviewed by Tony Chang.
3921
3922         Pasting should fire textInput event.
3923         https://bugs.webkit.org/show_bug.cgi?id=42958
3924
3925         On paste, invoke Editor instead of direct command invocation,
3926         which allows dispatching events before actual paste.
3927
3928         * WebView/WebHTMLView.mm:
3929         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
3930
3931 2010-08-06  Yongjun Zhang  <yongjun_zhang@apple.com>
3932
3933         Reviewed by Eric Seidel.
3934
3935         add "const" to WebChromeClient::webView().
3936         https://bugs.webkit.org/show_bug.cgi?id=43631
3937
3938         Change WebChromeClient::webView() to be const because ChromeClient::didReceiveViewportArguments
3939         is const method now, and calling webView() inside port-specific didReceiveViewportArguments
3940         implementation fails compiling if webView() is not const.
3941
3942         * WebCoreSupport/WebChromeClient.h:
3943         (WebChromeClient::webView):
3944
3945 2010-08-06  Jessie Berlin  <jberlin@apple.com>
3946
3947         Roll out http://trac.webkit.org/changeset/64801, which broke the Safari Windows Build.
3948         Unreviewed.
3949
3950         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
3951         * Plugins/WebBaseNetscapePluginView.h:
3952         * WebCoreSupport/WebFrameLoaderClient.h:
3953         * WebCoreSupport/WebIconDatabaseClient.h:
3954         * WebCoreSupport/WebPluginHalterClient.h:
3955         * WebView/WebViewInternal.h:
3956
3957 2010-08-05  Joseph Pecoraro  <joepeck@webkit.org>
3958
3959         Reviewed by David Kilzer.
3960
3961         Remove Invalid Asserts for Application Cache Quotas
3962         https://bugs.webkit.org/show_bug.cgi?id=43585
3963
3964         Removed Invalid ASSERTs that would always happen for quotas
3965         that were not noQuota().
3966
3967         * WebView/WebPreferences.mm:
3968         (-[WebPreferences applicationCacheTotalQuota]):
3969         (-[WebPreferences applicationCacheDefaultOriginQuota]):
3970
3971 2010-08-05  Gavin Barraclough  <barraclough@apple.com>
3972
3973         Rubber stamped by Sam Weinig
3974
3975         Bug 43594 - Add string forwards to Forward.h
3976         This allows us to remove forward declarations for these classes from
3977         WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
3978
3979         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
3980         * Plugins/WebBaseNetscapePluginView.h:
3981         * WebCoreSupport/WebFrameLoaderClient.h:
3982         * WebCoreSupport/WebIconDatabaseClient.h:
3983         * WebCoreSupport/WebPluginHalterClient.h:
3984         * WebView/WebViewInternal.h:
3985
3986 2010-08-05  Jian Li  <jianli@chromium.org>
3987
3988         Reviewed by David Levin.
3989
3990         Unify blob related feature defines to ENABLE(BLOB).
3991         https://bugs.webkit.org/show_bug.cgi?id=43081
3992
3993         * Configurations/FeatureDefines.xcconfig:
3994
3995 2010-08-03  Joseph Pecoraro  <joepeck@webkit.org>
3996
3997         Reviewed by David Kilzer.
3998
3999         Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
4000         https://bugs.webkit.org/show_bug.cgi?id=40627
4001
4002         Part 6 - LayoutTest and Cleanup
4003
4004         * WebCoreSupport/WebApplicationCache.h:
4005         * WebCoreSupport/WebApplicationCache.mm:
4006         (+[WebApplicationCache setMaximumSize:]): refactor out deleting the application caches.
4007         (+[WebApplicationCache deleteAllApplicationCaches]): delete application caches.
4008
4009 2010-08-03  Joseph Pecoraro  <joepeck@webkit.org>
4010
4011         Reviewed by David Kilzer.
4012
4013         Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
4014         https://bugs.webkit.org/show_bug.cgi?id=40627
4015
4016         Part 5 - Refactor Quota Management in WebSecurityOrigin into Managers
4017
4018         Per-Origin quotas exist for Databases and Application Caches. Clients
4019         given a WebSecurityOrigin have the ability to set the quota for any
4020         per-origin quota type. This puts quota management into an interface
4021         and WebSecurityOrigin allows access to quota managers for the
4022         different types of quotas.
4023
4024         This also deprecates the old methods on WebSecurityOrigin. They are
4025         left in for now to prevent breaking older clients.
4026
4027           The WebQuotaManager interface allows querying and modifying a
4028           per-origin quota. This is implemented for both Databases and
4029           Application Caches.
4030
4031         * Misc/WebQuotaManager.h: Added. Interface for quota management (usage, quota, setQuota).
4032         * Storage/WebDatabaseQuotaManager.h: Added.
4033         * Storage/WebDatabaseQuotaManager.mm: Added.
4034         (-[WebDatabaseQuotaManager origin]):
4035         (-[WebDatabaseQuotaManager usage]):
4036         (-[WebDatabaseQuotaManager quota]):
4037         (-[WebDatabaseQuotaManager setQuota:]):
4038         * Storage/WebDatabaseSecurityOrigin.h: Removed.
4039         * Storage/WebDatabaseSecurityOrigin.mm: Removed.
4040         * WebCoreSupport/WebApplicationCacheQuotaManager.h: Added.
4041         * WebCoreSupport/WebApplicationCacheQuotaManager.mm: Added.
4042         (-[WebApplicationCacheQuotaManager origin]):
4043         (-[WebApplicationCacheQuotaManager usage]):
4044         (-[WebApplicationCacheQuotaManager quota]):
4045         (-[WebApplicationCacheQuotaManager setQuota:]):
4046         * WebCoreSupport/WebSecurityOriginPrivate.h: Added a category to access managers. Deprecated old methods.
4047
4048           Remove the WebSecurityOrigin sub-classes. Managers are better.
4049
4050         * WebCoreSupport/WebApplicationCacheSecurityOrigin.h: Removed.
4051         * WebCoreSupport/WebApplicationCacheSecurityOrigin.mm: Removed.
4052
4053           Create the managers lazily. Change old style calls to make use
4054           of the managers.
4055
4056         * WebCoreSupport/WebChromeClient.mm:
4057         (WebChromeClient::exceededDatabaseQuota):
4058         (WebChromeClient::reachedApplicationCacheOriginQuota):
4059         * WebCoreSupport/WebSecurityOrigin.mm:
4060         (-[WebSecurityOrigin applicationCacheQuotaManager]):
4061         (-[WebSecurityOrigin databaseQuotaManager]):
4062         (-[WebSecurityOrigin dealloc]): release the managers if they exist.
4063
4064 2010-08-03  Alex Milowski  <alex@milowski.com>
4065
4066         Reviewed by Beth Dakin.
4067
4068         Changed the ENABLE_MATHML value to enable MathML by default.
4069
4070         * Configurations/FeatureDefines.xcconfig:
4071
4072 2010-08-02  Brady Eidson  <beidson@apple.com>
4073
4074         Reviewed by Anders Carlsson.
4075
4076         Add VisitedLinkStrategy for each platform to implement
4077         https://bugs.webkit.org/show_bug.cgi?id=43393
4078
4079         * WebCoreSupport/WebPlatformStrategies.h:
4080         * WebCoreSupport/WebPlatformStrategies.mm:
4081         (WebPlatformStrategies::createVisitedLinkStrategy):
4082         (WebPlatformStrategies::isLinkVisited): Call back into PageGroup's visited links.
4083         (WebPlatformStrategies::addVisitedLink): Ditto.
4084
4085 2010-07-27  Luiz Agostini  <luiz.agostini@openbossa.org>
4086
4087         Reviewed by Darin Fisher.
4088
4089         PopupMenu refactoring in preparation to WebKit2
4090         https://bugs.webkit.org/show_bug.cgi?id=42592
4091
4092         As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
4093         instances, concrete classes that inherit from ChromeClient needed to be changed to
4094         implement the new methods.
4095
4096         * WebCoreSupport/WebChromeClient.h:
4097         * WebCoreSupport/WebChromeClient.mm:
4098         (WebChromeClient::selectItemWritingDirectionIsNatural):
4099         (WebChromeClient::createPopupMenu):
4100         (WebChromeClient::createSearchPopupMenu):
4101
4102 2010-08-02  Jeremy Orlow  <jorlow@chromium.org>
4103
4104         Speculative revert of 64425 due to Chromium instability
4105         https://bugs.webkit.org/show_bug.cgi?id=43347
4106
4107         * WebCoreSupport/WebChromeClient.h:
4108         * WebCoreSupport/WebChromeClient.mm:
4109
4110 2010-07-27  Luiz Agostini  <luiz.agostini@openbossa.org>
4111
4112         Reviewed by Darin Fisher.
4113
4114         PopupMenu refactoring in preparation to WebKit2
4115         https://bugs.webkit.org/show_bug.cgi?id=42592
4116
4117         As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
4118         instances, concrete classes that inherit from ChromeClient needed to be changed to
4119         implement the new methods.
4120
4121         * WebCoreSupport/WebChromeClient.h:
4122         * WebCoreSupport/WebChromeClient.mm:
4123         (WebChromeClient::selectItemWritingDirectionIsNatural):
4124         (WebChromeClient::createPopupMenu):
4125         (WebChromeClient::createSearchPopupMenu):
4126
4127 2010-07-31  Sheriff Bot  <webkit.review.bot@gmail.com>
4128
4129         Unreviewed, rolling out r64422.
4130         http://trac.webkit.org/changeset/64422
4131         https://bugs.webkit.org/show_bug.cgi?id=43304
4132