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