2008-02-28 Mark Rowe <mrowe@apple.com>
[WebKit-https.git] / WebKit / mac / ChangeLog
1 2008-02-28  Mark Rowe  <mrowe@apple.com>
2
3         Reviewed by Dave Hyatt.
4
5         Make use of new CGFont APIs on Leopard rather than making a WebKitSystemInterface call.
6
7         * WebCoreSupport/WebSystemInterface.m:
8         (InitWebCoreSystemInterface): Only initialize wkGetFontMetrics on Tiger.
9
10 2008-02-27  Brady Eidson  <beidson@apple.com>
11
12         Reviewed by Mark Rowe (code) and Darin (concept)
13
14         Much better fix for <rdar://problem/4930688> (see r19549)
15         Original fix for <rdar://problem/3947312> (and 14 dupes)
16         
17         Let me tell you a story:
18         A long time ago, in a cvs repository far, far away, loader code was almost all up in WebKit.
19         WebArchive code was intertwined with that code in bizarre and complex ways.
20         During the months long loader re-factoring where we pushed much loader code down into WebCore,
21         many portions of the WebKit loader were thinned out until they ceased to exist.  Others remained
22         with a sole purpose.
23
24         One such section of code whose lineage traces back from WebFrameLoaderClient to WebFrameLoader
25         to WebLoader was originally rooted in the method [WebLoader loadRequest:].  This method was the 
26         single entry point for almost all loading (network or web archives)
27
28         This method would check various headers and other fields on the NSURLRequest and NSURLResponse 
29         to make decisions about the load.  If the cache control fields were expired or other conditions 
30         in the headers were met, the load would be forced to go out to the network.
31
32         As the loader was moved and tweaked repeatedly, most of this code was pruned or re-factored.  
33         At some point, all that remained was the special cases for loading WebArchives.  
34         
35         Somewhere in the r16,000s, this remaining responsibility was noticed and related methods we renamed
36         to be WebArchive specific, further cementing the assumed design.
37
38         Problem is, the design was bad.  A WebArchive is meant to be a static snapshot of a WebPage at a
39         specific point in time.  Referring to the request to see if the resource should be reloaded seems
40         nonsensical, as does referring to the response headers to see if the resource is "expired".  In the 
41         context of loading a WebArchive, available data should *always* be loaded from the WebArchive, at least
42         during the initial load!
43
44         After discovering the secret to reproducing all of these bugs is both emptying our your Foundation 
45         cache and disconnecting your network, it was easy to reproduce the 16 individually reported cases 
46         that were all symptoms of this bug, and easy to verify that they are fixed with this patch.
47
48         * WebCoreSupport/WebFrameLoaderClient.h:
49         * WebCoreSupport/WebFrameLoaderClient.mm:
50         (WebFrameLoaderClient::willUseArchive): Do not call either form of "canUseArchivedResource()" that
51           inspect the request or response objects - We are loading from a WebArchive, and we should never
52           make the decision to go out to the network when we actually have the resource available.
53
54         * WebCoreSupport/WebSystemInterface.m:
55         (InitWebCoreSystemInterface):  Remove two methods that are no longer used anywhere in WebKit
56
57 2008-02-27  Matt Lilek  <webkit@mattlilek.com>
58
59         Reviewed by Adam Roben.
60
61         Bug 14348: Messing up the inspector by dragging an URL into it
62         http://bugs.webkit.org/show_bug.cgi?id=14348
63         <rdar://problem/5283620> and <rdar://problem/5712808>
64
65         * WebCoreSupport/WebInspectorClient.mm:
66         (-[WebInspectorWindowController init]): Remove duplicate preference setting.
67         (-[WebInspectorWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
68
69 2008-02-25  Darin Adler  <darin@apple.com>
70
71         Reviewed by Adam.
72
73         * WebView/WebArchiver.mm:
74         (+[WebArchiver archiveSelectionInFrame:]): Use blankURL.
75         * WebView/WebFrame.mm:
76         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Avoid the
77         variable name URL to avoid clashing with the renamed KURL in the future. Also use
78         blankURL.
79         (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]): Ditto.
80         (-[WebFrame _loadHTMLString:baseURL:unreachableURL:]): Ditto.
81         (-[WebFrame loadHTMLString:baseURL:]): Ditto.
82         (-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]): Ditto.
83
84 2008-02-24  Darin Adler  <darin@apple.com>
85
86         Reviewed by Sam.
87
88         - remove separate client calls for "standard" and "reload' history
89
90         * WebCoreSupport/WebFrameLoaderClient.h:
91         * WebCoreSupport/WebFrameLoaderClient.mm:
92         (WebFrameLoaderClient::updateGlobalHistory):
93
94 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
95
96         Reviewed by Darin.
97
98         Move basic threading support from WebCore to WTF.
99
100         * ForwardingHeaders/wtf/Threading.h: Added.
101         * ForwardingHeaders/wtf/Locker.h: Added.
102
103 2008-02-23  David Kilzer  <ddkilzer@apple.com>
104
105         Please clarify licensing for some files
106         <http://bugs.webkit.org/show_bug.cgi?id=14970>
107
108         Reviewed by Darin.
109
110         * Plugins/WebNetscapeDeprecatedFunctions.c: Updated copyright statement
111         and added Apple BSD-style license.
112         * Plugins/WebNetscapeDeprecatedFunctions.h: Ditto.
113
114 2008-02-22  John Sullivan  <sullivan@apple.com>
115
116         Reviewed by Adam Roben
117         
118         Reverted the changed from yesterday to add pasteAndMatchStyle:, as the existing
119         pasteAsPlainText: has the same behavior.
120
121         * WebView/WebHTMLView.mm:
122         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
123         (-[WebHTMLView readSelectionFromPasteboard:]):
124         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
125         (-[WebHTMLView pasteAsRichText:]):
126         (-[WebHTMLView paste:]):
127         * WebView/WebView.mm:
128         * WebView/WebViewPrivate.h:
129
130 2008-02-21  Anders Carlsson  <andersca@apple.com>
131
132         Reviewed by Sam.
133
134         Use BackForwardList::create instead.
135         
136         * History/WebBackForwardList.mm:
137         (-[WebBackForwardList init]):
138
139 2008-02-21  John Sullivan  <sullivan@apple.com>
140
141         Reviewed by Jessica Kahn
142         
143         support for pasteAndMatchStyle: command (see <rdar://problem/5723952>)
144
145         * WebView/WebHTMLView.mm:
146         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:matchStyle:]):
147         added matchStyle parameter, passed along to bridge (formerly always passed NO to bridge)
148         (-[WebHTMLView readSelectionFromPasteboard:]):
149         pass NO for new matchStyle parameter to match old behavior
150         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
151         validate pasteAndMatchStyle the same way as pasteAsRichText
152         (-[WebHTMLView pasteAndMatchStyle:]):
153         just like pasteAsRichText but passes YES for matchStyle
154         (-[WebHTMLView pasteAsRichText:]):
155         pass NO for new matchStyle parameter to match old behavior
156         (-[WebHTMLView paste:]):
157         ditto
158         
159         * WebView/WebView.mm:
160         added macro(pasteAndMatchStyle)
161         
162         * WebView/WebViewPrivate.h:
163         added pasteAndMatchStyle: to WebViewEditingActionsPendingPublic category
164
165 2008-02-20  Sam Weinig  <sam@webkit.org>
166
167         Reviewed by Darin and Geoff.
168
169         - WebKit part of <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
170
171         * WebView/WebView.mm:
172         (-[WebView _preferencesChangedNotification:]): Added a call to Settings::setNeedsSiteSpecificQuirks.
173         There are currently no site-specific quirks on Mac, but we will propagate the state
174         to WebCore to avoid possible mistakes later.
175
176 2008-02-19  Anders Carlsson  <andersca@apple.com>
177
178         Reviewed by Darin.
179
180         Move back WebKit methods that were unused in WebCore.
181         
182         * Misc/WebNSURLExtras.mm:
183         (+[NSURL _web_URLWithData:]):
184         (+[NSURL _web_URLWithData:relativeToURL:]):
185         (-[NSURL _web_originalData]):
186         (-[NSURL _web_originalDataAsString]):
187         (-[NSURL _web_isEmpty]):
188         (-[NSURL _webkit_canonicalize]):
189         (-[NSURL _webkit_URLByRemovingComponent:]):
190         (-[NSURL _webkit_URLByRemovingFragment]):
191         (-[NSURL _webkit_URLByRemovingResourceSpecifier]):
192         (-[NSURL _webkit_isFileURL]):
193         (-[NSString _webkit_isFileURL]):
194         * WebCoreSupport/WebFrameLoaderClient.mm:
195         (WebFrameLoaderClient::setTitle):
196         * WebCoreSupport/WebSystemInterface.m:
197         (InitWebCoreSystemInterface):
198
199 2008-02-18  Darin Adler  <darin@apple.com>
200
201         Reviewed by Sam.
202
203         * Misc/WebNSAttributedStringExtras.mm:
204         (+[NSAttributedString _web_attributedStringFromRange:]): Eliminate use of
205         DeprecatedString.
206
207 2008-02-17  Sam Weinig  <sam@webkit.org>
208
209         Reviewed by Dan Bernstein.
210
211         Fix for http://bugs.webkit.org/show_bug.cgi?id=17365
212         document.createEvent("MessageEvent") throws NOT_SUPPORTED_ERR
213
214         * MigrateHeaders.make: Migrate DOMProgressEvent.h and DOMTextPrivate.h which were
215         mistakenly not migrated.
216
217 2008-02-15  Dan Bernstein  <mitz@apple.com>
218
219         Reviewed by Alexey Proskuryakov.
220
221         - WebKit part of fixing http://bugs.webkit.org/show_bug.cgi?id=17360
222           <rdar://problem/5743131> REGRESSION: mp4 file downloaded from server is downloaded as html
223
224         * WebView/WebDataSource.mm:
225         (+[WebDataSource _representationClassForMIMEType:]):
226         (-[WebDataSource _responseMIMEType]):
227         (-[WebDataSource subresources]):
228         (-[WebDataSource subresourceForURL:]):
229         * WebView/WebResource.mm:
230         (-[WebResource _initWithData:URL:response:]):
231         * WebView/WebResourcePrivate.h:
232
233 2008-02-15  Adam Roben  <aroben@apple.com>
234
235         Make WebKit's FEATURE_DEFINES match WebCore's
236
237         Reviewed by Mark.
238
239         * Configurations/WebKit.xcconfig:
240
241 2008-02-14  Darin Adler  <darin@apple.com>
242
243         Reviewed by Eric Seidel.
244
245         - updated for WebCore KURL changes
246
247         * History/WebHistoryItem.mm:
248         (-[WebHistoryItem URL]): Removed getNSURL call.
249         * Misc/WebElementDictionary.mm:
250         (-[WebElementDictionary _absoluteImageURL]): Ditto.
251         (-[WebElementDictionary _absoluteLinkURL]): Ditto.
252         * Misc/WebNSAttributedStringExtras.mm:
253         (fileWrapperForElement): Ditto.
254         (+[NSAttributedString _web_attributedStringFromRange:]): Ditto.
255         * Misc/WebNSURLExtras.mm:
256         (-[NSString _webkit_stringByReplacingValidPercentEscapes]): Updated
257         for function name change.
258         * WebCoreSupport/WebContextMenuClient.mm:
259         (WebContextMenuClient::downloadURL): Removed getNSURL call.
260         * WebCoreSupport/WebDragClient.mm:
261         (WebDragClient::createDragImageForLink): Ditto.
262         * WebCoreSupport/WebFrameLoaderClient.mm:
263         (WebFrameLoaderClient::dispatchWillPerformClientRedirect): Ditto.
264         (WebFrameLoaderClient::startDownload): Ditto.
265         (WebFrameLoaderClient::updateGlobalHistoryForStandardLoad): Ditto.
266         (WebFrameLoaderClient::updateGlobalHistoryForReload): Ditto.
267         (WebFrameLoaderClient::cancelledError): Ditto.
268         (WebFrameLoaderClient::blockedError): Ditto.
269         (WebFrameLoaderClient::cannotShowURLError): Ditto.
270         (WebFrameLoaderClient::interruptForPolicyChangeError): Ditto.
271         (WebFrameLoaderClient::cannotShowMIMETypeError): Ditto.
272         (WebFrameLoaderClient::fileDoesNotExistError): Ditto.
273         (WebFrameLoaderClient::willUseArchive): Ditto.
274         (WebFrameLoaderClient::setTitle): Ditto.
275         (WebFrameLoaderClient::actionDictionary): Ditto.
276         (WebFrameLoaderClient::createFrame): Ditto.
277         (WebFrameLoaderClient::objectContentType): Ditto.
278         (WebFrameLoaderClient::createPlugin): Ditto.
279         (WebFrameLoaderClient::createJavaAppletWidget): Ditto.
280         * WebView/WebDataSource.mm:
281         (-[WebDataSource _URL]): Ditto.
282         (-[WebDataSource _initWithDocumentLoader:]): Ditto.
283         (-[WebDataSource unreachableURL]): Ditto.
284         * WebView/WebHTMLView.mm:
285         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
286
287 2008-02-14  Stephanie Lewis  <slewis@apple.com>
288
289         Reviewed by Geoff.
290
291         Update order files.
292
293         * WebKit.order:
294
295 2008-02-14  Alexey Proskuryakov  <ap@webkit.org>
296
297         Reviewed by Adam Roben.
298
299         http://bugs.webkit.org/show_bug.cgi?id=17207
300         Database example doesn't work (requires not-yet-released Safari)
301
302         * WebCoreSupport/WebChromeClient.mm:
303         (WebChromeClient::exceededDatabaseQuota): Check Safari version, and allow 5 megabytes of storage
304         if it's too old.
305
306 2008-02-11  Darin Adler  <darin@apple.com>
307
308         - roll out fix for <rdar://problem/5726016> REGRESSION: Xcode News window renders
309           incorrectly due to visibility fix
310
311         Removed the Xcode-specific quirk at the request of some folks on the Xcode team.
312
313         * Misc/WebKitVersionChecks.h: Removed the constant.
314
315         * WebView/WebView.mm:
316         (-[WebView _needsXcodeVisibilityQuirk]): Removed.
317         (-[WebView _preferencesChangedNotification:]): Removed call to
318         setNeedsXcodeVisibilityQuirk.
319
320 2008-02-12  Anders Carlsson  <andersca@apple.com>
321
322         Reviewed by Mitz.
323
324         * WebCoreSupport/WebFrameBridge.mm:
325         * WebCoreSupport/WebViewFactory.mm:
326         (-[WebViewFactory imageTitleForFilename:size:]):
327         Move implementation from WebFrameBridge to WebViewFactory.
328
329 2008-02-11  Darin Adler  <darin@apple.com>
330
331         Reviewed by Mitz.
332
333         - fix <rdar://problem/5726016> REGRESSION: Xcode News window renders
334           incorrectly due to visibility fix
335
336         Added an Xcode-specific quirk.
337
338         * Misc/WebKitVersionChecks.h: Added a constant for the "linked on or after"
339         part of the check.
340
341         * WebView/WebView.mm:
342         (-[WebView _needsXcodeVisibilityQuirk]): Added.
343         (-[WebView _preferencesChangedNotification:]): Added a call to
344         setNeedsXcodeVisibilityQuirk based on _needsXcodeVisibilityQuirk.
345
346 2008-02-10  Darin Adler  <darin@apple.com>
347
348         - fix http://bugs.webkit.org/show_bug.cgi?id=17274
349           REGRESSION: User Agent string broken in r30119
350
351         * WebView/WebView.mm:
352         (-[WebView _userAgentWithApplicationName:andWebKitVersion:]):
353         Fix wrong variable name. Doh!
354
355 2008-02-09  Darin Adler  <darin@apple.com>
356
357         Reviewed by Tim Hatcher.
358
359         - fix <rdar://problem/5725996> crash every time you open the Xcode documentation window
360
361         * WebView/WebView.mm:
362         (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Work around a bug in the
363         garbage collector's Objective C++ support by not initializing a static to an object
364         that needs to be marked when running under GC.
365
366 2008-02-05  Dan Bernstein  <mitz@apple.com>
367
368         Reviewed by Darin Adler.
369
370         - WebKit part of <rdar://problem/5724303> Should implement writing direction shortcuts
371
372         The key bindings are Command-Control-left arrow and
373         Command-Control-right arrow. To match AppKit, the bindings are enabled
374         only when certain user defaults are set.
375
376         * WebView/WebHTMLView.mm:
377         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
378         (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call
379         Frame::baseWritingDirectionForSelectionStart() and
380         Editor::setBaseWritingDirection() directly.
381         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
382         (writingDirectionKeyBindingsEnabled): Added.
383         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Added this helper
384         method.
385         (-[WebHTMLView changeBaseWritingDirectionToLTR:]): Added.
386         (-[WebHTMLView changeBaseWritingDirectionToRTL:]): Added.
387         * WebView/WebView.mm:
388
389 2008-02-05  Mark Rowe  <mrowe@apple.com>
390
391         Unreviewed build fix.
392
393         * WebView/WebView.mm: Add missing #import.
394
395 2008-02-05  Mark Rowe  <mrowe@apple.com>
396
397         Reviewed by Oliver Hunt.
398
399         Update versioning to support the mysterious future.
400
401         * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
402
403 2008-01-30  Justin Garcia  <justin.garcia@apple.com>
404
405         Reviewed by Darin Adler.
406         
407         <rdar://problem/5708115> REGRESSION: Words selected with a double click and copied won't paste into Mail
408
409         * WebView/WebHTMLView.mm:
410         (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]): Brought 
411         this back, it's used by Mail.
412         (-[WebHTMLView _canSmartReplaceWithPasteboard:]): This WebInternal method is
413         also used by Mail.  Moved to WebPrivate.
414         * WebView/WebHTMLViewPrivate.h: Expose two methods that Mail uses here, so that we don't
415         accidently remove them in the future.
416
417 2008-01-30  Mark Rowe  <mrowe@apple.com>
418
419         Reviewed by Oliver Hunt.
420
421         Move off deprecated NSTableView methods.
422
423         * WebView/WebHTMLView.mm:
424         (-[WebTextCompleteController _buildUI]): Switch from -setDrawsGrid: to -setGridStyleMask:.
425         (-[WebTextCompleteController _placePopupWindow:]): Switch from -selectRow:byExtendingSelection: to -selectRowIndexes:byExtendingSelection:.
426         (-[WebTextCompleteController filterKeyDown:]): Ditto.
427
428 2008-01-26  Mark Rowe  <mrowe@apple.com>
429
430         Reviewed by Darin Adler.
431
432         Fix leaks seen after loading <http://www.funnyordie.com/videos/d70b5a11cb>.
433
434         * Misc/WebNSDataExtras.m:
435         (-[NSString _web_capitalizeRFC822HeaderFieldName]): Transfer ownerhip of the allocated buffers
436         to the new CFString so that they will be freed when no longer needed.
437
438 2008-01-26  Greg Bolsinga  <bolsinga@apple.com>
439
440         <rdar://problem/5708388> WebDashboardRegion.h duplicated between WebCore / WebKit
441
442         Reviewed by Darin.
443
444         * WebCoreSupport/WebDashboardRegion.h: Removed.
445         * WebView/WebView.mm: Updated #import to use copy of WebDashboardRegion.h from WebCore.
446
447 2008-01-21  Darin Adler  <darin@apple.com>
448
449         Reviewed by John Sullivan.
450
451         - fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
452         - add a missing export of WebDatabaseExpectedSizeKey
453         - implement deleteOrigin: and remove deleteDatabasesWithOrigin:
454
455         * Storage/WebDatabaseManager.mm:
456         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Updated to check for a null
457         name instead of calling isValid().
458         (-[WebDatabaseManager deleteOrigin:]): Implemented.
459         (WebKitInitializeDatabasesIfNecessary): Updated for name change.
460
461         * Storage/WebDatabaseManagerPrivate.h: Removed deleteDatabasesWithOrigin:.
462
463         * WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient.
464         * WebCoreSupport/WebChromeClient.mm:
465         (WebChromeClient::exceededDatabaseQuota): Replaced the two different client functions
466         we had before with a single one.
467
468         * WebKit.exp: Added missing export for WebDatabaseExpectedSizeKey.
469
470         * WebView/WebPreferenceKeysPrivate.h: Removed WebKitDefaultDatabaseQuotaKey.
471         * WebView/WebPreferences.m:
472         (+[WebPreferences initialize]): Removed the default for WebKitDefaultDatabaseQuotaKey.
473         * WebView/WebPreferencesPrivate.h: Removed defaultDatabaseQuota and
474         setDefaultDatabaseQuota:.
475
476         * WebView/WebUIDelegatePrivate.h: Replaced the two different database quota delegate
477         methods we had before with a single one.
478
479         * WebView/WebView.mm:
480         (-[WebView _preferencesChangedNotification:]): Removed the code to set the
481         default database origin quota in WebCore::Settings based on WebPreferences.
482
483         * WebView/WebViewInternal.h: Removed delegate method dispatch functions for unusual
484         types of parameters that the database UI delegate methods had before.
485
486 2008-01-20  Mark Rowe  <mrowe@apple.com>
487
488         Reviewed by Dan Bernstein.
489
490         Remove code bracketed by REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM as we are no longer
491         interested in supporting Safari 2 with TOT WebKit.
492
493         * WebView/WebView.mm:
494         (+[WebView initialize]):
495
496 2008-01-17  Timothy Hatcher  <timothy@apple.com>
497
498         Reviewed by Adam Roben.
499
500         <rdar://problem/5693558> REGRESSION (r29581): no form field focus rings
501         and inactive text selection after loading a page
502         Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance
503
504         The problem was other frames were changing the FocusController's active
505         status to false after the first responder frame set it to true. The last
506         frame to call _updateActiveState would win.
507
508         * WebView/WebHTMLView.mm:
509         (-[WebHTMLView _updateActiveState]): Only call page->focusController()->setActive()
510         if the first responder is the current WebHTMLView or the WebFrameView.
511         (-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Removed, inlined code in _updateActiveState.
512
513 2008-01-18  Adam Roben  <aroben@apple.com>
514
515         Rename _updateActiveState to _updateFocusedAndActiveState
516
517         Also renamed any related methods/members similarly.
518
519         Reviewed by Adele.
520
521         * WebView/WebHTMLView.mm:
522         (-[WebHTMLViewPrivate dealloc]):
523         (-[WebHTMLView _cancelUpdateFocusedAndActiveStateTimer]):
524         (-[WebHTMLView close]):
525         (_updateFocusedAndActiveStateTimerCallback):
526         (-[WebHTMLView viewWillMoveToWindow:]):
527         (-[WebHTMLView viewDidMoveToWindow]):
528         (-[WebHTMLView windowDidBecomeKey:]):
529         (-[WebHTMLView windowDidResignKey:]):
530         (-[WebHTMLView becomeFirstResponder]):
531         (-[WebHTMLView resignFirstResponder]):
532         * WebView/WebHTMLViewInternal.h:
533         * WebView/WebHTMLViewPrivate.h:
534
535 2008-01-17  John Sullivan  <sullivan@apple.com>
536
537         Reviewed by Darin
538         
539         - fixed <rdar://problem/5692068> -1 WebFrameView world leaks reported after closing view source window
540
541         * WebView/WebFrameView.mm:
542         (-[WebFrameView initWithCoder:]):
543         override to bump the global WebFrameView count
544
545 2008-01-16  Adam Roben  <aroben@apple.com>
546
547         Updated for renames/removal of WebCore methods.
548
549         Reviewed by Darin.
550
551         * Plugins/WebPluginController.mm:
552         (-[WebPluginController webPlugInContainerSelectionColor]): Changed to
553         ask isFocusedAndActive directly, instead of going through the frame
554         bridge.
555         * WebView/WebHTMLView.mm:
556         (-[WebHTMLView _updateActiveState]): Updated for method renames.
557
558 2008-01-16  John Sullivan  <sullivan@apple.com>
559
560         Reviewed by Adam and Dan
561         
562         - cleaned up some existing logging
563
564         * WebView/WebHTMLView.mm:
565         (-[WebHTMLView setNeedsDisplay:]):
566         add method name to log, use "YES" and "NO" instead of (int)flag
567         (-[WebHTMLView setNeedsLayout:]):
568         ditto
569         (-[WebHTMLView setNeedsToApplyStyles:]):
570         ditto
571
572 2008-01-15  Geoffrey Garen  <ggaren@apple.com>
573
574         Reviewed by Andre Boule.
575
576         Fixed <rdar://problem/5667627> [WebCache empty] implementation should
577         not disable/enable the cache
578         
579         Toggle the cache model instead -- toggling disable/enable just causes
580         the cache to forget about resources, not reclaim their memory.
581
582         * Misc/WebCache.mm:
583         (+[WebCache empty]):
584         * WebView/WebView.mm:
585         * WebView/WebViewInternal.h:
586
587 2008-01-15  Adele Peterson  <adele@apple.com>
588
589         Reviewed by Adam and Antti.
590
591         WebKit part of fix for <rdar://problem/5619062> Add load progress indicator to video controls
592
593         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
594           Removed initialization for GetMediaControlBackgroundImageData.  Added initialization for DrawMediaSliderTrack.
595
596 2008-01-10  Geoffrey Garen  <ggaren@apple.com>
597
598         Reviewed by John Sullivan.
599
600         Fixed some world leak reports:
601         * <rdar://problem/5669436> PLT complains about world leak of 1 JavaScript
602         Interpreter after running cvs-base suite
603
604         * <rdar://problem/5669423> PLT complains about world leak if browser
605         window is open when PLT starts
606         
607         These were both bugs in the reporting mechanism, so I took the
608         opportunity to do some house cleaning there.
609
610         * Misc/WebCoreStatistics.h: Did a little renaming, to match
611         JavaScriptCore better. I kept the methods with the old names around,
612         though, because old versions of Safari need them.
613
614         * Misc/WebCoreStatistics.mm: Removed dependence on
615         WebCore::JavaScriptStatistics, which is gone now. 
616         
617         These two methods are now distinct, for the sake of world leak reporting:
618         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
619         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
620
621 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
622
623         Not reviewed. Build fix.
624         
625         - Attempt to fix mac build.
626
627         * Storage/WebDatabaseManager.mm:
628
629 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
630
631         Reviewed by Sam.
632
633         - remove SecurityOriginData and fold its functionality into SecurityOrigin
634
635         * Storage/WebDatabaseManager.mm:
636         (-[WebDatabaseManager origins]):
637         (-[WebDatabaseManager databasesWithOrigin:]):
638         (-[WebDatabaseManager detailsForDatabase:withOrigin:]):
639         (-[WebDatabaseManager deleteDatabasesWithOrigin:]):
640         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
641         * Storage/WebDatabaseTrackerClient.h:
642         * Storage/WebDatabaseTrackerClient.mm:
643         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
644         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
645         * Storage/WebSecurityOrigin.mm:
646         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
647         (-[WebSecurityOrigin protocol]):
648         (-[WebSecurityOrigin domain]):
649         (-[WebSecurityOrigin port]):
650         (-[WebSecurityOrigin usage]):
651         (-[WebSecurityOrigin quota]):
652         (-[WebSecurityOrigin setQuota:]):
653         (-[WebSecurityOrigin isEqual:]):
654         (-[WebSecurityOrigin dealloc]):
655         (-[WebSecurityOrigin finalize]):
656         (-[WebSecurityOrigin _initWithWebCoreSecurityOrigin:]):
657         (-[WebSecurityOrigin _core]):
658         * Storage/WebSecurityOriginInternal.h:
659         * WebCoreSupport/WebChromeClient.h:
660         * WebCoreSupport/WebChromeClient.mm:
661         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
662         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
663
664 2008-01-10  Sam Weinig  <sam@webkit.org>
665
666         Reviewed by Anders Carlsson.
667
668         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16522
669         <rdar://problem/5657355>
670
671         * Plugins/WebBaseNetscapePluginView.mm:
672         (-[WebBaseNetscapePluginView loadPluginRequest:]): call findFrameForNavigation
673         to ensure the shouldAllowNavigation check is made.
674
675 2008-01-07  Nikolas Zimmermann  <zimmermann@kde.org>
676
677         Reviewed by Mark.
678
679         Enable SVG_FONTS by default.
680
681         * Configurations/WebKit.xcconfig:
682
683 2008-01-07  Adele Peterson  <adele@apple.com>
684
685         Reviewed by Antti, Adam, and Mitz.
686
687         WebKit part of fix for 
688         <rdar://problem/5619073> Updated look for <video> controls
689         <rdar://problem/5619057> Add volume control to video controls
690
691         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
692
693 2008-01-07  Dan Bernstein  <mitz@apple.com>
694
695         Reviewed by Dave Hyatt.
696
697         - <rdar://problem/5665216> Support the unicode-range property in @font-face rules
698
699         * Misc/WebNSAttributedStringExtras.mm:
700
701 2008-01-03  Alexey Proskuryakov  <ap@webkit.org>
702
703         Reviewed by Darin.
704
705         <rdar://problem/5463489> A number of layout tests should be using execCommand instead of textInputController
706
707         * WebView/WebView.mm:
708         (-[WebView _executeCoreCommandByName:value:]):
709         * WebView/WebViewPrivate.h:
710         Added an SPI to implement layoutTestController.execCommand.
711
712 2008-01-03  Kevin Decker  <kdecker@apple.com>
713
714         Reviewed by Darin.
715
716         Fixed: <rdar://problem/4106190> Include "Where from" metadata in drag-and-dropped images
717         
718         * Misc/WebNSFileManagerExtras.h:
719         * Misc/WebNSFileManagerExtras.m:
720         (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): Added new method. Uses WebKitSystemInterface to set
721         "Where from:" metadata information.
722         * WebView/WebHTMLView.mm:
723         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Added "Where from:" metadata for drag and dropped images.
724         
725 2008-01-03  Alice Liu  <alice.liu@apple.com>
726
727         Reviewed by Darin.
728
729         This fixes pageup/down in iframes.  test for this is fast/frames/iframe-scroll-page-up-down.html
730
731         * WebView/WebHTMLView.mm:
732         (-[WebHTMLView doCommandBySelector:]):
733         Have the editor handle all the commands it supports instead of just text commands.
734         If not handled by the editor, the webview will handle the command. 
735
736 2008-01-02  Kevin Decker  <kdecker@apple.com>
737
738         Reviewed by Darin.
739         
740         Fixed: <rdar://problem/5660603> QuickDraw plug-ins can cause a 100% reproducible assertion failure in AppKit (breaks Safari UI)
741
742         * Plugins/WebBaseNetscapePluginView.mm:
743         (-[WebBaseNetscapePluginView updateAndSetWindow]): Simplified an early return for non-QuickDraw plug-ins and switched
744         to using the more NSView friendly version of lockFocus, lockFocusIfCanDraw.
745
746 2008-01-01  David D. Kilzer  <ddkilzer@webkit.org>
747
748         Reviewed by Dan.
749
750         - fix http://bugs.webkit.org/show_bug.cgi?id=16700
751           Fix -[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]
752
753         * DefaultDelegates/WebDefaultPolicyDelegate.m: Check return value of
754         -[NSFileManager fileExistsAtPath:isDirectory:] before using the value
755         of isDirectory.
756
757 2007-12-29  Nikolas Zimmermann  <zimmermann@kde.org>
758
759         Reviewed by Eric.
760
761         Add DOMSVGFontElement/DOMSVGGlyphElement/DOMSVGMissingGlyphElement to MigrateHeaders.make
762
763         * MigrateHeaders.make:
764
765 2007-12-25  Dan Bernstein  <mitz@apple.com>
766
767         Reviewed by Oliver Hunt.
768
769         - fix an assertion failure when pressing the num lock key
770
771         * WebView/WebHTMLView.mm:
772         (-[WebHTMLView flagsChanged:]): Avoid passing key code 10 down to
773         WebCore.
774
775 2007-12-20  Darin Adler  <darin@apple.com>
776
777         Reviewed by Oliver.
778
779         - fix <rdar://problem/5658787> Selector -[WebView insertLineBreak:] is not implemented
780
781         * WebView/WebView.mm: Added all selectors implemented by WebHTMLView to the list of
782         selectors to forward here. The new ones are: changeBaseWritingDirection:, changeSpelling:,
783         deleteToMark:, insertLineBreak:, moveParagraphBackwardAndModifySelection:,
784         moveParagraphForwardAndModifySelection:, pageDownAndModifySelection:, pageUpAndModifySelection:,
785         selectToMark:, setMark:, swapWithMark:, takeFindStringFromSelection:, toggleBaseWritingDirection:,
786         and transpose:.
787
788 2007-12-20  Kevin Decker  <kdecker@apple.com>
789
790         Reviewed by Anders.
791         
792         Fixed: <rdar://problem/5638288> REGRESSION: Flash movies show up in other tabs above the page (16373)
793
794         * Plugins/WebBaseNetscapePluginView.mm:
795         (-[WebBaseNetscapePluginView updateAndSetWindow]): QuickDraw plug-ins must manually be told when to stop
796          writing to the window backing store. The problem was that change-set 28400 introduced an early return 
797          which prevented this necessary operation. The fix is to limit the scope of the early return to CG and GL
798          plug-ins and to tweak the needsFocus check to prevent an exception from occurring in QuickDraw-based plug-ins.
799
800 2007-12-19  Geoffrey Garen  <ggaren@apple.com>
801
802         Reviewed by Oliver Hunt.
803
804         Build fix.
805
806         * ForwardingHeaders/kjs/SymbolTable.h: Added.
807         * ForwardingHeaders/wtf/VectorTraits.h: Added.
808
809 2007-12-16  Mark Rowe  <mrowe@apple.com>
810
811         Reviewed by Maciej Stachowiak.
812
813         Refactor Mac plugin stream code to use the shared NetscapePlugInStreamLoader implementation.
814
815         * Plugins/WebBaseNetscapePluginStream.h:
816         * Plugins/WebNetscapePluginStream.h:
817         * Plugins/WebNetscapePluginStream.mm:
818         (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
819         (-[WebNetscapePluginStream dealloc]):
820         (-[WebNetscapePluginStream finalize]):
821         * Plugins/WebPlugInStreamLoaderDelegate.h: Moved from WebCore.
822         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h: Added.
823         (WebNetscapePlugInStreamLoaderClient::WebNetscapePlugInStreamLoaderClient):
824         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm: Added.
825         (WebNetscapePlugInStreamLoaderClient::didReceiveResponse): Call through to the equivalent WebPlugInStreamLoaderDelegate method.
826         (WebNetscapePlugInStreamLoaderClient::didReceiveData): Ditto.
827         (WebNetscapePlugInStreamLoaderClient::didFail): Ditto.
828         (WebNetscapePlugInStreamLoaderClient::didFinishLoading): Ditto.
829
830 2007-12-16  Alexey Proskuryakov  <ap@webkit.org>
831
832         Reviewed by Darin.
833
834         http://bugs.webkit.org/show_bug.cgi?id=14140
835         <rdar://problem/5270958> REGRESSION: Complex system KeyBindings don't work properly
836
837         * WebView/WebHTMLView.mm:
838         (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Made command replaying work
839         when handling keypress, too.
840         (-[WebHTMLView doCommandBySelector:]): Adapted for the new way to store commands in events.
841         (-[WebHTMLView insertText:]): Append a command, not replace the whole existing vector. Also,
842         restore the state for additional commands to be saved correctly.
843
844 2007-12-14  David D. Kilzer  <ddkilzer@apple.com>
845
846         <rdar://problem/5647272> Remove user agent string hack for flickr.com
847
848         Reviewed by Darin.
849
850         * WebView/WebView.mm:
851         (-[WebView _userAgentForURL:]): Removed hack.
852
853 2007-12-14  David D. Kilzer  <ddkilzer@apple.com>
854
855         <rdar://problem/5647261> Remove user agent string hack for yahoo.com
856
857         Reviewed by Darin.
858
859         * WebView/WebView.mm:
860         (-[WebView _userAgentForURL:]): Removed hack.
861
862 2007-12-14  Darin Adler  <darin@apple.com>
863
864         Reviewed by Brady.
865
866         - fix http://bugs.webkit.org/show_bug.cgi?id=16296
867           <rdar://problem/5635641> -[WebFrameLoadDelegate didReceiveIcon:forFrame:] never called
868
869         * WebView/WebView.mm:
870         (-[WebView setFrameLoadDelegate:]): Call [WebIconDatabase sharedIconDatabase] if the
871         a didReceiveIcon method is present.
872
873 2007-12-14  Darin Adler  <darin@apple.com>
874
875         Reviewed by Alexey.
876
877         - Changed a few more editing operations to use WebCore instead of WebKit.
878         - Removed some obsolete unused code.
879
880         * WebCoreSupport/WebFrameBridge.h: Moved declarations of methods that are both
881         defined and used on the WebKit side to here. These no longer belong on the bridge
882         and should be moved to the WebFrame class (or elsewhere).
883         * WebCoreSupport/WebFrameBridge.mm: Removed some unused methods.
884
885         * WebView/WebFrameView.mm:
886         (+[WebFrameView _viewTypesAllowImageTypeOmission:]): Fix typo in comment.
887
888         * WebView/WebHTMLView.mm:
889         (-[WebHTMLViewPrivate dealloc]): Removed unused firstResponderTextViewAtMouseDownTime.
890         (-[WebHTMLViewPrivate clear]): Ditto.
891         (-[WebHTMLView _setMouseDownEvent:]): Ditto.
892         (commandNameForSelector): Added special cases for pageDown:, pageDownAndModifySelection:,
893         pageUp:, and pageUpAndModifySelection:, since those names probably aren't specific enough
894         to be used in WebCore (what AppKit calls scrollPageDown: vs. pageDown: needs to be
895         disambiguated with the word "Move"). Added deleteBackward:,
896         deleteBackwardByDecomposingPreviousCharacter:, deleteForward:, deleteToBeginningOfLine:,
897         deleteToBeginningOfParagraph:, deleteToEndOfLine:, deleteToEndOfParagraph:, pageDown:,
898         pageDownAndModifySelection:, pageUp:, pageUpAndModifySelection:, selectLine:,
899         selectParagraph:, selectSentence:, and selectWord: to the list of commands that are
900         forwarded to WebCore.
901         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Eliminated the long list of
902         operations that we forward to WebCore. Instead, look up any command that WebCore can
903         handle, after any that we handle specially in WebHTMLView. Also fixed a bug where
904         an item that's not a menu item with changeBaseWritingDirection:NSWritingDirectionNatural
905         would end up enabled instead of disabled and streamlined the logic for toggleGrammarChecking:.
906         (-[WebHTMLView mouseDown:]): Removed unused firstResponderTextViewAtMouseDownTime.
907         (-[WebHTMLView becomeFirstResponder]): Removed unused willBecomeFirstResponderForNodeFocus.
908         (-[WebHTMLView resignFirstResponder]): Ditto.
909         (-[WebHTMLView checkSpelling:]): Took unneeded extra initialization of NSSpellChecker.
910
911         * WebView/WebHTMLViewInternal.h: Removed unused willBecomeFirstResponderForNodeFocus,
912         firstResponderTextViewAtMouseDownTime, _textViewWasFirstResponderAtMouseDownTime: and
913         _willMakeFirstResponderForNodeFocus.
914
915 2007-12-13  Alexey Proskuryakov  <ap@webkit.org>
916
917         Reviewed by Darin.
918
919         Turn on keyboard event processing quirks for feed views and old applications on Mac OS X.
920
921         * Misc/WebKitVersionChecks.h:
922         * WebView/WebView.mm:
923         (-[WebView _needsKeyboardEventHandlingQuirks]):
924         (-[WebView _preferencesChangedNotification:]):
925
926 2007-12-12  Brady Eidson  <beidson@apple.com>
927
928         Reviewed by Sam Weinig
929
930         Fix for <rdar://problem/4886844> and lay groundwork for <rdar://problem/4516170> (Back/Forward Cache on Windows)
931
932         * WebCoreSupport/WebCachedPagePlatformData.h: Added.
933         (WebCachedPagePlatformData::WebCachedPagePlatformData): Constructor takes a WebDocumentView for later restoration
934         (WebCachedPagePlatformData::clear):
935         (WebCachedPagePlatformData::webDocumentView):
936
937         * WebCoreSupport/WebFrameLoaderClient.h:
938         * WebCoreSupport/WebFrameLoaderClient.mm:
939         (WebFrameLoaderClient::savePlatformDataToCachedPage):
940         (WebFrameLoaderClient::transitionToCommittedFromCachedPage): Don't set the DocumentLoader to the Frame here, 
941           because that is now done in WebCore.
942         (WebFrameLoaderClient::transitionToCommittedForNewPage):
943
944 2007-12-12  Mark Rowe  <mrowe@apple.com>
945
946         Reviewed by Dave Kilzer.
947
948         Remove abuse of projectDirPath from WebKit.xcodeproj to fix Production builds.
949
950         * Configurations/WebKit.xcconfig:
951
952 2007-12-11  Sam Weinig  <sam@webkit.org>
953
954         Reviewed by Darin Adler.
955
956         Scrub URL out of the tree in preparation for renaming KURL to URL.
957
958         * WebCoreSupport/WebFrameLoaderClient.mm:
959         (WebFrameLoaderClient::actionDictionary):
960         * WebView/WebDataSource.mm:
961         (-[WebDataSource _URL]):
962         * WebView/WebView.mm:
963         (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
964
965 2007-12-11  Darin Adler  <darin@apple.com>
966
967         Reviewed by Geoff.
968
969         - change more editing commands to use WebCore::Editor
970         - change to use the new WebCore::Editor::command() function
971
972         * WebView/WebHTMLView.mm: Changed alignCenter, alignJustified, alignLeft,
973         alignRight, cut, copy, deleteToMark, indent, insertNewlineIgnoringFieldEditor,
974         insertTabIgnoringFieldEditor, outdent, selectAll, selectToMark, setMark,
975         subscript, superscript, swapWithMark, underline, unscript, yank, and yankAndSelect
976         to use the "forward to WebCore" macro instead of having hand-written implementations.
977         (kit): Added function to change a TriState to an AppKit-style tri-state value.
978         (-[WebHTMLView coreCommandBySelector:]): Added. No longer converts case of the
979         first character or copies the selector name, since the Editor commands are not case
980         sensitive any more. Returns a command object.
981         (-[WebHTMLView coreCommandByName:]): Added.
982         (-[WebHTMLView executeCoreCommandBySelector:]): Renamed from callWebCoreCommand:,
983         and changed to use the new coreCommandBySelector: method.
984         (-[WebHTMLView executeCoreCommandByName:]): Added.
985         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Changed all the
986         methods that call through to WebCore to also use the state() and isEnabled()
987         functions on the commands for the menu item state and user interface item enabling.
988         (-[WebHTMLView _handleStyleKeyEquivalent:]): Use ToggleBold and ToggleItalic by
989         name rather than having local methods for them; no need for methods with a single
990         call site.
991         (-[WebHTMLView insertParagraphSeparator:]): Use executeCoreCommandByName: rather
992         than the deprecated execCommand().
993         (-[WebHTMLView doCommandBySelector:]): Changed to use command().execute() rather
994         than the deprecated execCommand().
995         * WebView/WebHTMLViewInternal.h: Removed some unneeded method declarations.
996
997 2007-12-07  Alexey Proskuryakov  <ap@webkit.org>
998
999         Reviewed by Darin.
1000
1001         <rdar://problem/5535636>
1002         Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
1003
1004         http://bugs.webkit.org/show_bug.cgi?id=13916
1005         JavaScript detects Tab as a character input on a textfield validation
1006
1007         * WebCoreSupport/WebEditorClient.h:
1008         Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses.
1009         Renamed handleInputMethodKeypress() to handleInputMethodKeydown().
1010         * WebCoreSupport/WebEditorClient.mm:
1011         (WebEditorClient::handleKeyboardEvent): This change makes sense only remotely, but it helped
1012         to get tests working. I guess Mac keyboard event handling needs further refactoring.
1013
1014         * WebView/WebHTMLView.mm:
1015         (selectorToCommandName): Convert AppKit editing selector name to Editor command name - extracted
1016         from callWebCoreCommand:.
1017         (_interceptEditingKeyEvent:shouldSaveCommand:): Insert text from keypress.
1018
1019         * WebView/WebPDFView.mm:
1020         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
1021         Convert incoming platform KeyDown into RawKeyDown, as this is what the view is interested in.
1022
1023 2007-12-10  Brady Eidson  <beidson@apple.com>
1024
1025         Reviewed by John Sullivan
1026
1027         Fix for <rdar://problem/5640080> - Database UI delegate calls need to specify WebFrame
1028
1029         This is because a common UI case is to want to know the originating URL of a Database
1030
1031         * WebCoreSupport/WebChromeClient.mm:
1032         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
1033         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
1034
1035         * WebView/WebUIDelegatePrivate.h:
1036
1037         * WebView/WebView.mm:
1038         (CallDelegateReturningUnsignedLongLong):
1039         (CallUIDelegateReturningUnsignedLongLong):
1040         * WebView/WebViewInternal.h:
1041
1042 2007-12-10  Timothy Hatcher  <timothy@apple.com>
1043
1044         Reviewed by Mark Rowe.
1045
1046         <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
1047
1048         * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
1049           so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
1050
1051 2007-12-10  Kevin Decker  <kdecker@apple.com>
1052
1053         Reviewed by Darin.
1054
1055         Fixed: <rdar://problem/4290098> Right-mouse click on element doesn't call onmousedown handler
1056         
1057         * WebView/WebHTMLView.mm:
1058         (-[WebHTMLView menuForEvent:]): Match behavior of other browsers by sending an onmousedown event for right clicks.
1059
1060 2007-12-08  Oliver Hunt  <oliver@apple.com>
1061
1062         Reviewed by Sam W.
1063
1064         Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.
1065         
1066         Fixes <rdar://problem/5620249> Must disable SVG animation
1067         <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior
1068         
1069         Minor updates to the feature flags used.
1070
1071         * Configurations/WebKit.xcconfig:
1072         * DOM/WebDOMOperations.mm:
1073
1074 2007-12-07  Darin Adler  <darin@apple.com>
1075
1076         Reviewed by Kevin Decker and Tim Hatcher.
1077
1078         - speculative fix for <rdar://problem/5400159> CrashTracer: [USER] 726 crashes
1079           in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389
1080
1081         * WebView/WebHTMLView.mm:
1082         (-[WebHTMLView _frameOrBoundsChanged]): Only schedule the mouseover timer if we are in a window
1083         and not closed. That's because viewDidMoveToWindow and close are the entry points for cancelling.
1084         (-[WebHTMLView close]): Add code to cancel both timers. Needed for the case where the entire
1085         window goes away, and the view is never removed from the window.
1086         (-[WebHTMLView viewDidMoveToWindow]): Don't do work if the view is closed.
1087
1088 2007-12-07  Darin Adler  <darin@apple.com>
1089
1090         Reviewed by Mitz.
1091
1092         - http://bugs.webkit.org/show_bug.cgi?id=15981
1093           speed up visited-link code a bit
1094
1095         * History/WebHistory.mm: Removed unused Latin-1 code path.
1096         (-[_WebCoreHistoryProvider containsURL:length:]): Updated for method name change.
1097
1098 2007-12-07  Geoffrey Garen  <ggaren@apple.com>
1099
1100         Reviewed by Sam Weinig.
1101         
1102         Added a forwarding header, since we now #include nodes.h through some
1103         JavaScriptCore headers.
1104
1105         * ForwardingHeaders/wtf/ListRefPtr.h: Added.
1106
1107 2007-12-06  Brady Eidson  <beidson@apple.com>
1108
1109         Reviewed by Oliver's rubber stamp
1110
1111         Let's go ahead and call the correct UI Delegate method, shall we?
1112
1113         * WebCoreSupport/WebChromeClient.mm:
1114         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Call the correct UI delegate
1115
1116 2007-12-06  Adam Roben  <aroben@apple.com>
1117
1118         Remove some assertions we know can fire and replace them with a FIXME
1119
1120         Reviewed by Anders.
1121
1122         * WebCoreSupport/WebFrameLoaderClient.mm:
1123
1124 2007-12-06  Timothy Hatcher  <timothy@apple.com>
1125
1126         Change the ASSERT added for the previous fix. The ASSERT was firing for 10.5.0.
1127         Only assert if the major version is zero, since zero is handled in the other cases.
1128
1129         * WebView/WebView.mm:
1130         (callGestalt): Remove the ASSERT.
1131         (createMacOSXVersionString): ASSERT that major is not zero.
1132
1133 2007-12-06  Darin Adler  <darin@apple.com>
1134
1135         Reviewed by Tim Hatcher.
1136
1137         - fix <rdar://problem/5513394> No way to detect Tiger vs Leopard from Safari's user agent string
1138
1139         * WebView/WebView.mm:
1140         (callGestalt): Added.
1141         (createMacOSXVersionString): Added.
1142         (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Added Mac OS X version string,
1143         right after the string "Mac OS X", but with underscores instead of dots to avoid the dreaded
1144         "4." problem (old libraries that think a "4." anywhere in the user agent means Netscape 4).
1145         (-[WebView _userAgentForURL:]): Fixed incorrect bug numbers.
1146
1147 2007-12-04  Geoffrey Garen  <ggaren@apple.com>
1148
1149         Reviewed by Darin Adler.
1150
1151         Third step in refactoring JSGlobalObject: Moved data members and data
1152         member access from Interpreter to JSGlobalObject.
1153         
1154         * WebView/WebFrame.mm:
1155         (-[WebFrame _attachScriptDebugger]):
1156
1157 2007-12-04  Kevin McCullough  <kmccullough@apple.com>
1158
1159         Reviewed by Darin.
1160
1161         - <rdar://5621435>
1162         - Security Fix. Instead of having it off by default, WebKit now must
1163         explicitly turn off local-resource restriction when needed for backwards
1164         coimpatibility reasons.
1165
1166         * WebView/WebView.mm:
1167         (-[WebView _commonInitializationWithFrameName:groupName:]):
1168
1169 2007-12-05  Brady Eidson  <beidson@apple.com>
1170
1171         Reviewed by Kevin Deckers rubberstamp
1172
1173         Disclose and export the Databases Directory defaults key
1174
1175         * Storage/WebDatabaseManager.mm:
1176         * Storage/WebDatabaseManagerPrivate.h:
1177         * WebKit.exp:
1178
1179 2007-12-04  Kevin Decker  <kdecker@apple.com>
1180
1181         Reviewed by Anders.
1182
1183         <rdar://problem/5629125> PluginInfoStore needs the ability to return the name of a plug-in for a given MIME type
1184
1185         * WebCoreSupport/WebViewFactory.mm:
1186         (-[WebViewFactory pluginNameForMIMEType:]): Added.
1187
1188 2007-12-04  Brady Eidson  <beidson@apple.com>
1189
1190         Reviewed by Mark Rowe
1191
1192         Tweaked the way we typedef and cast these objc_msgSend calls
1193
1194         * WebView/WebView.mm:
1195         (CallDelegateReturningUnsignedLongLong):
1196
1197 2007-12-04  John Sullivan  <sullivan@apple.com>
1198
1199         Reviewed by Brady Eidson (with help from Mark Rowe)
1200         
1201         Fixed return values for unsigned-long-long delegate methods
1202
1203         * WebView/WebView.mm:
1204         (CallDelegateReturningUnsignedLongLong):
1205         redid the change that Brady did at home over the weekend but forgot to check in
1206
1207 2007-11-27  Adam Roben  <aroben@apple.com>
1208
1209         Remove -[WebFrameBridge setNeedsReapplyStyles]
1210
1211         This functionality is now WebCore's responsibility.
1212
1213         Reviewed by Hyatt.
1214
1215         * WebCoreSupport/WebFrameBridge.mm:
1216         * WebKit.order:
1217
1218 2007-12-04  John Sullivan  <sullivan@apple.com>
1219
1220         Reviewed by Darin
1221         
1222         Added deleteOrigin: SPI, which isn't fully implemented
1223
1224         * Storage/WebDatabaseManagerPrivate.h:
1225         * Storage/WebDatabaseManager.mm:
1226         (-[WebDatabaseManager deleteOrigin:]):
1227         just calls deleteDatabasesWithOrigin: for now, but needs to delete origin itself too
1228
1229 2007-12-04  Timothy Hatcher  <timothy@apple.com>
1230
1231         Reviewed by Mark Rowe.
1232
1233         Remove a check for early versions of Leopard CFNetwork now that
1234         Leopard has shipped.
1235
1236         * Misc/WebKitVersionChecks.h: Remove WEBKIT_FIRST_CFNETWORK_VERSION_WITH_LARGE_DISK_CACHE_FIX.
1237         * WebView/WebView.mm:
1238         (+[WebView _setCacheModel:]): Remove the early Leopard CFNetwork check.
1239
1240 2007-12-04  Kevin Decker  <kdecker@apple.com>
1241
1242         Reviewed by Darin.
1243
1244         Revised fix for: <rdar://problem/5586978> REGRESSION (Safari 2-3): WebKit sometimes doesn't invoke Flash's NPP_SetWindow function and causes a hang
1245
1246         This fix is exactly the same as chageset 28359 with the exception of an added early return in
1247         updateAndSetWindow to cover the additional case of when a plug-in isn't drawable.
1248         
1249         The CG-based Flash player would sometimes hang because (for CoreGraphics-based plug-ins) our code would
1250         only call into the NPP_SetWindow() function when we tell the plug-in to draw. This created havoc with 
1251         Flash because Flash expects the browser to call NPP_SetWindow() and provide a valid graphics context 
1252         regardless of whether or not it actually needs to draw. 
1253         
1254         * Plugins/WebBaseNetscapePluginView.mm:
1255         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed an incorrect comment and toned
1256         down an ASSERT that was too strict. 
1257         (-[WebBaseNetscapePluginView updateAndSetWindow]): Removed an early return for CoreGraphics-based plug-ins
1258         which would sometimes altogether prevent updating the PortState and calling into a plug-ins NPP_SetWindow()
1259         function. Also tweaked a comment and added an early return if the plug-in can't draw.
1260
1261 2007-12-04  Darin Adler  <darin@apple.com>
1262
1263         Reviewed by Kevin Decker.
1264
1265         * WebCoreSupport/WebFrameLoaderClient.h: Removed obsolete privateBrowsingEnabled.
1266         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
1267         * WebKit.order: Ditto.
1268
1269 2007-12-03  Dan Bernstein  <mitz@apple.com>
1270
1271         Reviewed by Dave Hyatt.
1272
1273         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
1274
1275         * WebView/WebHTMLView.mm:
1276         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Removed the code
1277         that checked if the view had resized and sent the resize event, since
1278         FrameView sends resize events now.
1279         * WebView/WebHTMLViewInternal.h:
1280
1281 2007-12-03  Timothy Hatcher  <timothy@apple.com>
1282
1283         Reviewed by Darin.
1284
1285         Change WebViewGetResourceLoadDelegateImplementations and WebViewGetFrameLoadDelegateImplementations
1286         to return a pointer to the implementation struct instead of a copy of the struct. This changes
1287         all of the callers to dereference the pointer to access the struct fields.
1288
1289         * Plugins/WebNullPluginView.mm:
1290         (-[WebNullPluginView reportFailure]):
1291         * WebCoreSupport/WebFrameBridge.mm:
1292         * WebCoreSupport/WebFrameLoaderClient.mm:
1293         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
1294         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
1295         (WebFrameLoaderClient::dispatchWillSendRequest):
1296         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
1297         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
1298         (WebFrameLoaderClient::dispatchDidReceiveResponse):
1299         (WebFrameLoaderClient::willCacheResponse):
1300         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
1301         (WebFrameLoaderClient::dispatchDidFinishLoading):
1302         (WebFrameLoaderClient::dispatchDidFailLoading):
1303         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
1304         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1305         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
1306         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
1307         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
1308         (WebFrameLoaderClient::dispatchWillClose):
1309         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1310         (WebFrameLoaderClient::dispatchDidReceiveTitle):
1311         (WebFrameLoaderClient::dispatchDidCommitLoad):
1312         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
1313         (WebFrameLoaderClient::dispatchDidFailLoad):
1314         (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
1315         (WebFrameLoaderClient::dispatchDidFinishLoad):
1316         (WebFrameLoaderClient::dispatchDidFirstLayout):
1317         * WebView/WebView.mm:
1318         (WebViewGetResourceLoadDelegateImplementations):
1319         (WebViewGetFrameLoadDelegateImplementations):
1320         (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
1321         * WebView/WebViewInternal.h:
1322
1323 2007-12-03  Timothy Hatcher  <timothy@apple.com>
1324
1325         Reviewed by Brady Eidson.
1326
1327         <rdar://problem/5539913> 188 crashes in WebViewGetFrameLoadDelegateImplementations
1328         <rdar://problem/5586095> CrashTracer: [USER] 5000+ crashes in Safari and Dashboard in dispatchDidFailLoading
1329         <rdar://problem/5607081> CrashTracer: [USER] 2150 crashes in Safari at com.apple.WebKit:
1330         WebViewGetResourceLoadDelegateImplementations + 28
1331
1332         * WebView/WebView.mm:
1333         (-[WebView _cacheResourceLoadDelegateImplementations]): If the delegate is nil, bzero the
1334         implementation cache. This just prevents us from calling getMethod() multiple times just to zero.
1335         (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto.
1336         (WebViewGetResourceLoadDelegateImplementations): Return a zeroed implementations struct
1337         if the WebView is nil. This fixes the crashes.
1338         (WebViewGetFrameLoadDelegateImplementations): Ditto.
1339
1340 2007-12-02  Geoffrey Garen  <ggaren@apple.com>
1341
1342         Reviewed by Eric Seidel.
1343
1344         Updated to match the JavaScriptCore change to move virtual methods from
1345         Interpreter to JSGlobalObject.
1346
1347         * WebView/WebFrame.mm:
1348         (-[WebFrame globalContext]): Use the toRef function instead of manually
1349         casting.
1350
1351 2007-12-01  Brady Eidson  <beidson@apple.com>
1352
1353         Reviewed by Tim
1354
1355         Added a default database quota of 5mb to the default WebPreferences
1356
1357         * WebView/WebPreferences.m:
1358         (+[WebPreferences initialize]):
1359
1360 2007-11-30  John Sullivan  <sullivan@apple.com>
1361
1362         Reviewed by Geoff Garen
1363         
1364         Added another symbol for WebDatabaseManager clients
1365
1366         * WebKit.exp:
1367         added .objc_class_name_WebSecurityOrigin
1368
1369 2007-11-30  Brady Eidson  <beidson@apple.com>
1370
1371         Reviewed by Geoff
1372
1373         Add isEqual operator to WebSecurityOrigin
1374
1375         * Storage/WebSecurityOrigin.mm:
1376         (-[WebSecurityOrigin isEqual:]):
1377
1378 2007-11-30  John Sullivan  <sullivan@apple.com>
1379
1380         Reviewed by Darin
1381         
1382         Tweaks to newly-declared NSString * constants to make them usable from clients
1383
1384         * Storage/WebDatabaseManagerPrivate.h:
1385         * Storage/WebDatabaseManager.mm:
1386         removed "const" from new NSNotification names and userInfo keys; these generate compiler warnings when used
1387         
1388         * WebKit.exp:
1389         export new NSNotification names and userInfo keys so clients can use them
1390
1391 2007-11-29  Anders Carlsson  <andersca@apple.com>
1392
1393         Reviewed by John.
1394
1395         Rename WebKitShrinksStandaloneImagesToFitKey to WebKitShrinksStandaloneImagesToFit.
1396         
1397         This is safe to do because the preference is off by default and Safari 3, which is the only client that turns it on,
1398         is using the setter and not messing around with NSUserDefaults.
1399         
1400         * WebView/WebPreferenceKeysPrivate.h:
1401         * WebView/WebPreferences.m:
1402         (+[WebPreferences initialize]):
1403         (-[WebPreferences shrinksStandaloneImagesToFit]):
1404         (-[WebPreferences setShrinksStandaloneImagesToFit:]):
1405
1406 2007-11-29  Brady Eidson  <beidson@apple.com>
1407
1408         Reviewed by Anders
1409
1410         Support for <rdar://problem/5556381> and <rdar://problem/5556379>
1411
1412         Hook up UI Delegate calls for the database engine feature and other small tweaks
1413
1414         * Storage/WebDatabaseManager.mm:
1415         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity
1416         (-[WebDatabaseManager deleteDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity
1417         * Storage/WebDatabaseManagerPrivate.h:
1418
1419         * Storage/WebDatabaseTrackerClient.h:
1420         * Storage/WebDatabaseTrackerClient.mm:
1421         (WebDatabaseTrackerClient::dispatchDidModifyDatabase): Renamed databaseName parameter to databaseIdentifier for clarity
1422
1423         * WebCoreSupport/WebChromeClient.h:
1424         * WebCoreSupport/WebChromeClient.mm:
1425         (WebChromeClient::requestQuotaIncreaseForNewDatabase): Call through to the UI Delegate
1426         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Ditto
1427
1428         * WebView/WebUIDelegatePrivate.h: Added the two UI Delegate methods
1429
1430         * WebView/WebView.mm:
1431         (CallDelegateReturningUnsignedLongLong):
1432         (CallUIDelegateReturningUnsignedLongLong):
1433         * WebView/WebViewInternal.h:
1434
1435 2007-11-28  Kevin McCullough  <kmccullough@apple.com>
1436
1437         Reviewed by Sam.
1438
1439         - Added recursive runloop guards.
1440
1441         * DefaultDelegates/WebScriptDebugServer.m:
1442         (-[WebScriptDebugServer suspendProcessIfPaused]):
1443
1444 2007-11-29  Mark Rowe  <mrowe@apple.com>
1445
1446         Reviewed by Oliver Hunt.
1447
1448         Fix an assertion failure seen on the layout tests, and when closing the window after
1449         visiting <http://www.coudal.com/losalamos/>.
1450
1451         * Plugins/WebBaseNetscapePluginStream.mm:
1452         (-[WebBaseNetscapePluginStream _destroyStream]): Unlink the file and close the file
1453         descriptor even when the stream is being destroyed without the load completing. This
1454         avoids leaking the path and file descriptor, and leaving the temporary file on disk.
1455
1456 2007-11-28  Adele Peterson  <adele@apple.com>
1457
1458         Reviewed by Darin.
1459
1460         Fix for <rdar://problem/5524216> CrashTracer: [USER] 496 crashes in Safari at com.apple.WebCore: WebCore::Frame::eventHandler const + 6
1461
1462         The CrashTracer shows a variety of crashes in different methods (including keyDown and keyUp). This change adds nil checks for the frame in 
1463         WebHTMLView to prevent future problems in other methods as well.
1464
1465         * WebView/WebHTMLView.mm:
1466         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
1467         (-[WebHTMLView keyDown:]):
1468         (-[WebHTMLView keyUp:]):
1469         (-[WebHTMLView flagsChanged:]):
1470         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
1471         (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
1472         (-[WebHTMLView checkSpelling:]):
1473         (-[WebHTMLView showGuessPanel:]):
1474         (-[WebHTMLView indent:]):
1475         (-[WebHTMLView outdent:]):
1476         (-[WebHTMLView paste:]):
1477         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
1478         (-[WebHTMLView insertText:]):
1479         (-[WebHTMLView selectionTextRects]):
1480
1481 2007-11-28  Dan Bernstein  <mitz@apple.com>
1482
1483         Reviewed by Maciej Stachowiak.
1484
1485         - fix <rdar://problem/5596160> fast/events/objc-event-api.html fails when run alone (or first)
1486
1487         * WebView/WebHTMLView.mm:
1488         (-[WebHTMLView setDataSource:]): This method calls addMouseMovedObserver
1489         because addMouseMovedObserver returns early if the dataSource
1490         is not nil. But if the dataSource is already set (which happens when
1491         a WebHTMLView is being reused) then addMouseMovedObserver must not
1492         be called again.
1493
1494 2007-11-27  Anders Carlsson  <andersca@apple.com>
1495
1496         Reviewed by Brady.
1497
1498         * Storage/WebDatabaseManager.mm:
1499         * Storage/WebDatabaseManagerPrivate.h:
1500         * Storage/WebDatabaseTrackerClient.mm:
1501         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
1502         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
1503         * Storage/WebSecurityOrigin.mm:
1504         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
1505         * Storage/WebSecurityOriginInternal.h:
1506
1507 2007-11-27  Kevin Decker  <kdecker@apple.com>
1508
1509         Reviewed by Darin, landed by Anders.
1510
1511         Fixed: <rdar://problem/4610818> CrashTracer: 1533 crashes in Safari at com.macromedia.Flash Player.plugin: native_ShockwaveFlash_TCallLabel + 271131
1512
1513         The problem was that some Leopard users were still inadvertently using the old Flash 8 plug-in, even though Leopard
1514         shipped with Flash 9. To avoid loading an older version of a plug-in when a newer version is installed, the plug-in
1515         database will compare bundle versions and always load the latest version.
1516
1517         * Plugins/WebBasePluginPackage.h:
1518         * Plugins/WebBasePluginPackage.m:
1519         (-[WebBasePluginPackage versionNumber]): New method. CFBundleGetVersionNumber doesn't work with all possible versioning schemes,
1520         but we think for now it's good enough for us.
1521         * Plugins/WebPluginDatabase.m:
1522         (considerCandidate): Added a C utility function which compares the current plug-in against a candidate plug-in's version number.
1523         If both plug-ins have the same bundle ID and the candiate is newer, the current plug-in becomes the candidate.
1524         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): Calls the new considerCandidate() function.
1525
1526 2007-11-26  Timothy Hatcher  <timothy@apple.com>
1527
1528         Reviewed by Dave Hyatt.
1529
1530         <rdar://problem/5569233> Add the ability to disable author and user CSS styles
1531
1532         * WebView/WebPreferenceKeysPrivate.h: Define WebKitRespectStandardStyleKeyEquivalentsPreferenceKey.
1533         * WebView/WebPreferences.m:
1534         (+[WebPreferences initialize]): Default WebKitRespectStandardStyleKeyEquivalentsPreferenceKey to YES.
1535         (-[WebPreferences authorAndUserStylesEnabled]): Return the setting's BOOL value.
1536         (-[WebPreferences setAuthorAndUserStylesEnabled:]): Set the setting's BOOL value.
1537         * WebView/WebPreferencesPrivate.h: Add authorAndUserStylesEnabled and setAuthorAndUserStylesEnabled:.
1538         * WebView/WebView.mm:
1539         (-[WebView _preferencesChangedNotification:]): Update WebCore::Settings::authorAndUserStylesEnabled.
1540
1541 2007-11-26  Brady Eidson  <beidson@apple.com>
1542
1543         Reviewed by Mark Rowe
1544
1545         Provide API for setting the default storage quota per database origin
1546
1547         * Misc/WebNSDictionaryExtras.h:
1548         * Misc/WebNSDictionaryExtras.m:
1549         (-[NSMutableDictionary _webkit_setUnsignedLongLong:forKey:]): Helper for UINT64 preferences
1550
1551         * WebView/WebPreferenceKeysPrivate.h:
1552         * WebView/WebPreferences.m:
1553         (-[WebPreferences _unsignedLongLongValueForKey:]): Helper for UINT64 prefs
1554         (-[WebPreferences _setUnsignedLongLongValue:forKey:]): Ditto
1555         (-[WebPreferences defaultDatabaseQuota]):
1556         (-[WebPreferences setDefaultDatabaseQuota:]):
1557         * WebView/WebPreferencesPrivate.h:
1558
1559         * WebView/WebView.mm:
1560         (-[WebView _preferencesChangedNotification:]): Set the WebCore Settings version of the default storage pref
1561
1562 2007-11-26  Darin Adler  <darin@apple.com>
1563
1564         Reviewed by Adele.
1565
1566         - some middle-mouse-button-related fixes
1567
1568         These don't affect Safari since it maps the middle mouse button to the command key,
1569         but that might not always be the case for future versions.
1570
1571         * WebView/WebHTMLView.mm:
1572         (-[WebHTMLView otherMouseDown:]): Pass through middle mouse down events to WebCore.
1573         (-[WebHTMLView otherMouseDragged:]): Ditto, for drag events.
1574         (-[WebHTMLView otherMouseUp:]): Ditto, for up events.
1575
1576         * WebView/WebPolicyDelegate.h: Fixed inaccurate documentation of WebActionButtonKey.
1577
1578 2007-11-26  Anders Carlsson  <andersca@apple.com>
1579
1580         Reviewed by Brady.
1581
1582         Get rid of the WebSecurityOriginPrivate object and store 
1583         the WebCore::SecurityOriginData pointer in the _private field of
1584         the WebSecurityOrigin object instead.
1585         
1586         * Storage/WebDatabaseManager.mm:
1587         (-[WebDatabaseManager databasesWithOrigin:]):
1588         (-[WebDatabaseManager detailsForDatabase:withOrigin:]):
1589         (-[WebDatabaseManager deleteDatabasesWithOrigin:]):
1590         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
1591         * Storage/WebSecurityOrigin.mm:
1592         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
1593         (-[WebSecurityOrigin protocol]):
1594         (-[WebSecurityOrigin domain]):
1595         (-[WebSecurityOrigin port]):
1596         (-[WebSecurityOrigin usage]):
1597         (-[WebSecurityOrigin quota]):
1598         (-[WebSecurityOrigin setQuota:]):
1599         (-[WebSecurityOrigin dealloc]):
1600         (-[WebSecurityOrigin finalize]):
1601         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
1602         (-[WebSecurityOrigin _core]):
1603         * Storage/WebSecurityOriginInternal.h:
1604
1605 2007-11-26  Timothy Hatcher  <timothy@apple.com>
1606
1607         Reviewed by Adam Roben.
1608
1609         Bug 16137: Web Inspector window on Leopard should have a unified toolbar and window title
1610         http://bugs.webkit.org/show_bug.cgi?id=16137
1611
1612         Create the Web Inspector window with the textured style. Set the content border
1613         thickness for the top of the window or the height of the toolbar. Also make the
1614         window's bottom corners square, since a normal textured window normally has
1615         rounded bottom corners.
1616
1617         * WebCoreSupport/WebInspectorClient.mm:
1618         (-[WebInspectorWindowController window]):
1619
1620 2007-11-24  Mark Rowe  <mrowe@apple.com>
1621
1622         Tiger build fix.
1623
1624         * Plugins/WebBaseNetscapePluginStream.mm:
1625         (CarbonPathFromPOSIXPath): Use WebCFAutorelease as this also works on Tiger.
1626
1627 2007-11-24  Mark Rowe  <mrowe@apple.com>
1628
1629         Reviewed by Tim Hatcher.
1630
1631         Fix <rdar://problem/5432686> 333MB RPRVT seems to leak @ www.43folders.com (1hr plug-in stream).
1632         http://bugs.webkit.org/show_bug.cgi?id=13705
1633
1634         Have NP_ASFILE and NP_ASFILEONLY streams write the data to disk as they receive it rather than
1635         dumping the data to disk in a single go when the stream has completed loading.  On a test case
1636         involving a 150MB Flash movie being streamed from a local web server this reduces memory consumption
1637         on page load from around 400MB to 22MB.
1638
1639         The only plugin I have found that uses NP_ASFILE or NP_ASFILEONLY on the Mac is our NetscapeMoviePlugin
1640         example code so the NP_ASFILE portion of this change has not had any testing with a real-world plugin.
1641
1642         * Plugins/WebBaseNetscapePluginStream.h:
1643         * Plugins/WebBaseNetscapePluginStream.mm:
1644         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
1645         (-[WebBaseNetscapePluginStream dealloc]):
1646         (-[WebBaseNetscapePluginStream finalize]):
1647         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
1648         (-[WebBaseNetscapePluginStream _destroyStream]): Update to work with paths as NSStrings.
1649         (-[WebBaseNetscapePluginStream _deliverDataToFile:]): Open the file if it is not already open, and write any data
1650         to disk.
1651         (-[WebBaseNetscapePluginStream finishedLoading]): If the stream is NP_ASFILE or NP_ASFILEONLY we need to ensure
1652         that the file exists before _destroyStream passes it to the plugin.  Simulating the arrival of an empty data block
1653         ensure that the file will be created if it has not already.
1654         (-[WebBaseNetscapePluginStream receivedData:]):
1655         (CarbonPathFromPOSIXPath):
1656         * Plugins/WebBaseNetscapePluginView.mm:
1657         (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]): Data is dealt with incrementally so there's no need to pass
1658         it to finishedLoading.
1659         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Ditto.
1660
1661 2007-11-23  Oliver Hunt  <oliver@apple.com>
1662
1663         Reviewed by Mark Rowe.
1664         
1665         Fixed <rdar://problem/3759190> allow input methods the option of processing mouse events themselves
1666
1667         * WebView/WebHTMLView.mm:
1668         (-[WebHTMLView mouseDown:]):
1669
1670 2007-11-22  Dan Bernstein  <mitz@apple.com>
1671
1672         Reviewed by Antti Koivisto.
1673
1674         - http://bugs.webkit.org/show_bug.cgi?id=15811
1675           WebKit plug-ins can re-enter WebKit under attach()
1676           <rdar://problem/5577978>
1677
1678         * Plugins/WebNullPluginView.mm:
1679         (-[WebNullPluginView viewDidMoveToWindow]): Removed workaround for the
1680         above bug that added as part of fixing
1681         <http://bugs.webkit.org/show_bug.cgi?id=15804>.
1682
1683 2007-11-21  Mark Rowe  <mrowe@apple.com>
1684
1685         Reviewed by Eric.
1686
1687         Fix WebKit to build without warnings under GCC 4.2.
1688
1689         * Configurations/Base.xcconfig:
1690
1691 2007-11-21  Mark Rowe  <mrowe@apple.com>
1692
1693         Reviewed by Tim Hatcher.
1694
1695         Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings
1696
1697         Update format strings to use format specifiers that match the argument types.
1698
1699         * Misc/WebGraphicsExtras.c:
1700         (WebConvertBGRAToARGB):
1701
1702 2007-11-19  Brady Eidson <beidson@apple.com>
1703
1704         Reviewed by Maciej
1705
1706         Finished hooking up the WebKit API for database management.
1707         Most of the API is actually implemented in WebCore and some of those methods might
1708         only be stubs for now.
1709
1710         * Storage/WebDatabaseManager.mm:
1711         (-[WebDatabaseManager origins]): Call through to the WebCore tracker and construct an API result
1712         (-[WebDatabaseManager databasesWithOrigin:]): Ditto
1713         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Ditto
1714
1715         * Storage/WebSecurityOrigin.mm:
1716         (-[WebSecurityOrigin usage]): Call through to WebCore
1717         (-[WebSecurityOrigin quota]): Ditto
1718         (-[WebSecurityOrigin setQuota:]): Ditto
1719         (-[WebSecurityOrigin _core]): Get WebCore version of this object
1720         * Storage/WebSecurityOriginInternal.h:
1721
1722 2007-11-17  Timothy Hatcher  <timothy@apple.com>
1723
1724         Reviewed by Mark Rowe.
1725
1726         Bug 13470: i18n: The Web Inspector is not localizable
1727         http://bugs.webkit.org/show_bug.cgi?id=13470
1728
1729         Implement the localizedStringsURL() client method to return the
1730         localized URL of InspectorLocalizedStrings.js in WebCore.
1731
1732         * WebCoreSupport/WebInspectorClient.h: Added localizedStringsURL.
1733         * WebCoreSupport/WebInspectorClient.mm:
1734         (WebInspectorClient::localizedStringsURL): Added.
1735         (WebInspectorClient::updateWindowTitle): Localized the window title.
1736         (-[WebInspectorWindowController init]): Remove a FIXME that dosen't make sense anymore.
1737         (-[WebInspectorWindowController initWithInspectedWebView:]): Code style cleanup.
1738
1739 2007-11-17  Alexey Proskuryakov  <ap@webkit.org>
1740
1741         Reviewed by Darin.
1742
1743         http://bugs.webkit.org/show_bug.cgi?id=15969
1744         Eliminate Editor::deleteRange()
1745
1746         * WebView/WebHTMLView.mm:
1747         (+[WebHTMLView initialize]):
1748         (-[WebHTMLView yank:]):
1749         (-[WebHTMLView yankAndSelect:]):
1750         (-[WebHTMLView setMark:]):
1751         (-[WebHTMLView deleteToMark:]):
1752         (-[WebHTMLView selectToMark:]):
1753         (-[WebHTMLView swapWithMark:]):
1754         Pushed all kill ring methods to WebCore. They were guilty of using Editor::deleteRange()!
1755
1756 2007-11-16  Mark Rowe  <mrowe@apple.com>
1757
1758         Reviewed by Tim Hatcher.
1759
1760         Build WebCore as a sub-framework of WebKit in all configurations.
1761
1762         * Configurations/WebKit.xcconfig:
1763
1764 2007-11-16  John Sullivan  <sullivan@apple.com>
1765
1766         Reviewed by Brady
1767
1768         * WebKit.exp:
1769         Exported some new database-related symbols
1770
1771 2007-11-16  Brady Eidson  <beidson@apple.com>
1772
1773         Reviewed by John
1774
1775         Database management API tweaks
1776
1777         Fleshed out "WebSecurityOrigin" to be the API object representing an origin.  This relieves some
1778         burden off WebDatabaseManager and allows usage/quota operations on the SecurityOrigin object itself
1779
1780         Also added a new subdirectory for Storage related API - Why are we afraid to add new directories to
1781         the WebKit tree?
1782
1783         * Misc/WebSecurityOrigin.mm: Removed.
1784         * Misc/WebSecurityOriginInternal.h: Removed.
1785         * Misc/WebSecurityOriginPrivate.h: Removed.
1786
1787         * Storage/WebDatabaseManager.mm: Work in terms of WebSecurityOrigin
1788         * Storage/WebDatabaseManagerPrivate.h:
1789
1790         * Storage/WebSecurityOrigin.mm: Added.
1791         (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]):
1792         (-[WebSecurityOriginPrivate initWithWebCoreSecurityOrigin:]):
1793         (-[WebSecurityOriginPrivate finalize]):
1794         (-[WebSecurityOriginPrivate dealloc]):
1795         (-[WebSecurityOrigin initWithProtocol:domain:]):
1796         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
1797         (-[WebSecurityOrigin protocol]):
1798         (-[WebSecurityOrigin domain]):
1799         (-[WebSecurityOrigin port]):
1800         (-[WebSecurityOrigin usage]): 
1801         (-[WebSecurityOrigin quota]):
1802         (-[WebSecurityOrigin setQuota:]): Clients will set quotas on the WebSecurityOrigin object itself
1803         (-[WebSecurityOrigin dealloc]):
1804         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
1805         * Storage/WebSecurityOriginInternal.h: Added.
1806         * Storage/WebSecurityOriginPrivate.h: Added.
1807
1808 2007-11-15  Brady Eidson  <beidson@apple.com>
1809
1810         Reviewed by John
1811
1812         Stubbing out everything required for a WebKit API for databases
1813
1814         These interfaces seem to provide everything we need for UI and management at the browser level
1815
1816         * Misc/WebDatabaseManager.h: Removed.
1817         * Misc/WebDatabaseManager.mm: Removed.
1818         * Misc/WebDatabaseManagerPrivate.h: Removed.
1819
1820         * Misc/WebSecurityOrigin.mm: Added. Object that acts as a container for the "SecurityOrigin tuple"
1821           (protocol, domain, and port)
1822         (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]):
1823         (-[WebSecurityOriginPrivate dealloc]):
1824         (-[WebSecurityOrigin initWithProtocol:domain:]):
1825         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
1826         (-[WebSecurityOrigin protocol]):
1827         (-[WebSecurityOrigin domain]):
1828         (-[WebSecurityOrigin port]):
1829         (-[WebSecurityOrigin dealloc]):
1830         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:WebCore::]):
1831         * Misc/WebSecurityOriginInternal.h: Added.
1832         * Misc/WebSecurityOriginPrivate.h: Added.
1833
1834         * Storage/WebDatabaseManager.mm: Added.
1835         (+[WebDatabaseManager sharedWebDatabaseManager]):
1836         (-[WebDatabaseManager origins]):  Get a list of all origins currently tracked
1837         (-[WebDatabaseManager detailsForOrigin:]): Get the current usage and current quota for the given origin
1838         (-[WebDatabaseManager databasesWithOrigin:]): Get all databases for a certain origin
1839         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Get all details about a specific database
1840         (-[WebDatabaseManager setQuota:forOrigin:]): Change origin-wide quota
1841         (-[WebDatabaseManager deleteAllDatabases]):
1842         (-[WebDatabaseManager deleteAllDatabasesWithOrigin:]):
1843         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
1844         * Storage/WebDatabaseManagerPrivate.h: Added.
1845         * Storage/WebDatabaseManagerInternal.h: Added.
1846         (WebKitInitializeDatabasesIfNecessary): One-time initialization of database-related things
1847
1848         * Storage/WebDatabaseTrackerClient.h: Added. Stubbed out client for notifications
1849         * Storage/WebDatabaseTrackerClient.mm: Added.
1850         (WebDatabaseTrackerClient::sharedWebDatabaseTrackerClient):
1851         (WebDatabaseTrackerClient::WebDatabaseTrackerClient):
1852         (WebDatabaseTrackerClient::~WebDatabaseTrackerClient):
1853         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
1854         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
1855
1856         * WebView/WebView.mm:
1857         (-[WebView _commonInitializationWithFrameName:groupName:]): Do one-time initialization of
1858           Database-related things here
1859
1860 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
1861
1862         Reviewed by Anders Carlsson.
1863         
1864         Renamed Shared to RefCounted.
1865
1866         * ForwardingHeaders/wtf/RefCounted.h: Copied from WebKit/mac/ForwardingHeaders/wtf/Shared.h.
1867         * ForwardingHeaders/wtf/Shared.h: Removed.
1868         * WebCoreSupport/WebContextMenuClient.h:
1869
1870 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
1871
1872         Reviewed by Sam Weinig.
1873
1874         Moved Shared.h into wtf so it could be used in more places.
1875
1876         * ChangeLog:
1877         * WebCoreSupport/WebContextMenuClient.h:
1878
1879 2007-11-13  John Sullivan  <sullivan@apple.com>
1880
1881         Reviewed by Darin.
1882
1883         removed recently-added PreferredType concept; we found a better way to do what
1884         ths was accomplishing
1885
1886         * WebCoreSupport/WebChromeClient.mm:
1887         (WebChromeClient::createWindow):
1888         removed use of PreferredType
1889
1890 2007-11-13  John Sullivan  <sullivan@apple.com>
1891
1892         Reviewed by Dan Bernstein.
1893         
1894         - fixed <rdar://problem/5567954> REGRESSION (Safari 2-3): Autofill no longer automatically fills in 
1895         form fields other than the one you're typing into
1896
1897         * WebCoreSupport/WebEditorClient.mm:
1898         (selectorForKeyEvent):
1899         correct the key identifier strings for Tab and Esc; these were updated in WebCore as part of r21445
1900         but didn't get updated here.
1901
1902 2007-11-12  Josh Aas  <joshmoz@gmail.com>
1903
1904         Reviewed by Darin.
1905
1906         - http://bugs.webkit.org/show_bug.cgi?id=15946
1907           add NPPValue NPPVpluginDrawingModel (Mozilla bug 403418 compat)
1908
1909         * Plugins/WebBaseNetscapePluginView.mm:
1910         (-[WebBaseNetscapePluginView setVariable:value:]):
1911
1912 2007-11-12  Alexey Proskuryakov  <ap@webkit.org>
1913
1914         Reviewed by Darin.
1915
1916         http://bugs.webkit.org/show_bug.cgi?id=15954
1917         Move DOM Selection operations out of SelectionController
1918
1919         * WebView/WebHTMLView.mm:
1920         (-[WebHTMLView _expandSelectionToGranularity:]):
1921         (-[WebHTMLView selectToMark:]):
1922         (-[WebHTMLView swapWithMark:]):
1923         * WebView/WebView.mm:
1924         (-[WebView setSelectedDOMRange:affinity:]):
1925         Adapted for SelectionController::setSelectedRange() now returning a bool.
1926
1927 2007-11-12  Oliver Hunt  <oliver@apple.com>
1928
1929         Reviewed by Darin and Geoff.
1930
1931         <rdar://problem/5522011> The content of the password field of 
1932         Safari is displayed by reconversion.
1933
1934         Some input methods (notably Kotoeri) can incorrectly provide 
1935         access to the raw text of a password field.  To work around 
1936         this we forcefully override the inputContext whenever a password
1937         field is active.
1938
1939         * WebView/WebHTMLView.mm:
1940         (-[WebHTMLView inputContext]):
1941
1942 2007-11-12  John Sullivan  <sullivan@apple.com>
1943
1944         Reviewed by Tim Hatcher
1945         
1946         - speculative fix for <rdar://problem/5509989> CrashTracer: [USER] 1 crash in Safari at com.apple.WebKit: 
1947         -[WebPDFView(FileInternal) _updatePreferencesSoon] + 56
1948         
1949         The crash is probably due to messaging a dealloc'ed dataSource ivar. The dataSource ivar isn't retained
1950         by this class, but should be. (It is retained by WebHTMLView, e.g.).
1951
1952         * WebView/WebPDFView.mm:
1953         (-[WebPDFView dealloc]):
1954         release dataSource ivar
1955         (-[WebPDFView setDataSource:]):
1956         retain dataSource ivar
1957
1958 2007-11-09  Tristan O'Tierney  <tristan@apple.com>
1959
1960         Reviewed by Timothy Hatcher.
1961         
1962         This patch is for the WebKit side of <rdar://problem/5591115>.
1963         We need a way to tell context menu navigations, such as "Open in New Window"
1964         to override any sort of browser preference for tab based navigation.
1965
1966         * WebCoreSupport/WebChromeClient.mm:
1967         (WebChromeClient::createWindow):
1968         Pass up the new preferredType parameter as a string.
1969         
1970 2007-11-09  Timothy Hatcher  <timothy@apple.com>
1971
1972         Reviewed by John.
1973
1974         <rdar://problem/5103720> REGRESSION: [WebView stringByEvaluatingJavaScriptFromString:] fails if "return" is used
1975
1976         Extend the linked on or after check to every application when a script passed to
1977         stringByEvaluatingJavaScriptFromString: has a return statement. Before the check
1978         was limited to VitalSource Bookshelf, but other developers are running into this.
1979
1980         * Misc/WebKitVersionChecks.h: Add the WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK define.
1981         * WebView/WebDocumentLoaderMac.mm:
1982         (needsDataLoadWorkaround): Use WEBKIT_FIRST_VERSION_WITHOUT_ADOBE_INSTALLER_QUIRK sicne the
1983           WebKitLinkedOnOrAfter check here was about the Adobe installer, not VitalSource.
1984         * WebView/WebView.mm:
1985         (-[WebView stringByEvaluatingJavaScriptFromString:]): Remove the bundle ID check and use
1986           WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK for the WebKitLinkedOnOrAfter call.
1987
1988 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
1989
1990         Build Fix.
1991
1992         * WebCoreSupport/WebFrameLoaderClient.h:
1993         * WebCoreSupport/WebFrameLoaderClient.mm:
1994         (WebFrameLoaderClient::windowObjectCleared):
1995
1996 2007-11-07  Darin Adler  <darin@apple.com>
1997
1998         Reviewed by Steve.
1999
2000         - removed some unused WebCore bridge methods
2001
2002         * WebCoreSupport/WebFrameBridge.mm: Removed issueTransposeCommand and overrideMediaType.
2003
2004         * WebCoreSupport/WebFrameLoaderClient.mm:
2005         (WebFrameLoaderClient::overrideMediaType): Changed to call WebView directly instead of
2006         using the bridge object.
2007
2008 2007-11-06  Mark Rowe  <mrowe@apple.com>
2009
2010         Rubber-stamped by Dave Kilzer.
2011
2012         Move Mac files from WebKit into WebKit/mac.
2013
2014         * Carbon: Copied from WebKit/Carbon.
2015         * ChangeLog: Copied from WebKit/ChangeLog.
2016         * ChangeLog-2002-12-03: Copied from WebKit/ChangeLog-2002-12-03.
2017         * ChangeLog-2006-02-09: Copied from WebKit/ChangeLog-2006-02-09.
2018         * ChangeLog-2007-10-14: Copied from WebKit/ChangeLog-2007-10-14.
2019         * Configurations: Copied from WebKit/Configurations.
2020         * DOM: Copied from WebKit/DOM.
2021         * DefaultDelegates: Copied from WebKit/DefaultDelegates.
2022         * ForwardingHeaders: Copied from WebKit/ForwardingHeaders.
2023         * History: Copied from WebKit/History.
2024         * Info.plist: Copied from WebKit/Info.plist.
2025         * MigrateHeaders.make: Copied from WebKit/MigrateHeaders.make.
2026         * Misc: Copied from WebKit/Misc.
2027         * Panels: Copied from WebKit/Panels.
2028         * Plugins: Copied from WebKit/Plugins.
2029         * PublicHeaderChangesFromTiger.txt: Copied from WebKit/PublicHeaderChangesFromTiger.txt.
2030         * Resources: Copied from WebKit/Resources.
2031         * WebCoreSupport: Copied from WebKit/WebCoreSupport.
2032         * WebInspector: Copied from WebKit/WebInspector.
2033         * WebKit.exp: Copied from WebKit/WebKit.exp.
2034         * WebKit.order: Copied from WebKit/WebKit.order.
2035         * WebKitPrefix.h: Copied from WebKit/WebKitPrefix.h.
2036         * WebView: Copied from WebKit/WebView.
2037         * icu: Copied from WebKit/icu.
2038
2039 2007-11-06  Alexey Proskuryakov  <ap@webkit.org>
2040
2041         Reviewed by Darin.
2042
2043         http://bugs.webkit.org/show_bug.cgi?id=15847
2044         Some editing cleanup
2045
2046         No change in functionality.
2047
2048         * WebView/WebHTMLView.mm:
2049         (-[WebHTMLView deleteToEndOfLine:]):
2050         (-[WebHTMLView deleteToEndOfParagraph:]):
2051         WebCore had a duplicate of the same logic already. We are passing a boundary value to
2052         a function that expects granularity, this may need to be straightened out in the future.
2053
2054 2007-11-05  John Sullivan  <sullivan@apple.com>
2055
2056         * WebView/WebView.mm:
2057         (-[WebView _searchWithSpotlightFromMenu:]):
2058
2059         Teeny style tweak to test svn access on other machine
2060
2061 2007-11-05  John Sullivan  <sullivan@apple.com>
2062
2063         * WebView/WebView.mm:
2064         (-[WebView computedStyleForElement:pseudoElement:]):
2065         
2066         Teeny style tweak to test svn access
2067
2068 2007-11-02  Tristan O'Tierney  <tristan@apple.com>
2069
2070         Reviewed by Darin Adler.
2071
2072         * DefaultDelegates/WebDefaultUIDelegate.m:
2073         (-[WebDefaultUIDelegate webView:createWebViewWithRequest:windowFeatures:]):
2074         Forward the UI delegate to call webView:createWebViewWithRequest: if
2075         this method doesn't exist.
2076         
2077         * WebCoreSupport/WebFrameLoaderClient.mm:
2078         (WebFrameLoaderClient::dispatchCreatePage):
2079         * Plugins/WebBaseNetscapePluginView.mm:
2080         (-[WebBaseNetscapePluginView loadPluginRequest:]):
2081         * WebView/WebView.mm:
2082         (-[WebView _openNewWindowWithRequest:]):
2083         Revised to use new webView:createWebViewWithRequest:windowFeatures: callback.
2084         
2085         * WebCoreSupport/WebChromeClient.h:
2086         * WebCoreSupport/WebChromeClient.mm:
2087         (WebChromeClient::createWindow):
2088         Added a new createWindow that accepts 3 parameters, so we can pass up windowFeatures to the chrome.
2089         Removed createModalDialog to use new createWindow function.
2090         
2091         * WebView/WebUIDelegatePrivate.h:
2092         Added new webView:createWebViewWithRequest:windowFeatures: method.
2093
2094 2007-11-05  Geoffrey Garen  <ggaren@apple.com>
2095
2096         Reviewed by Darin Adler.
2097         
2098         http://bugs.webkit.org/show_bug.cgi?id=15835
2099
2100         Small adaptations to new KJS::List class.
2101
2102         * ForwardingHeaders/kjs/value.h: Added.
2103
2104 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
2105
2106         Sort files(...); sections of Xcode project files.
2107
2108         Rubber-stamped by Darin.
2109
2110         * WebKit.xcodeproj/project.pbxproj:
2111
2112 2007-11-02  Antti Koivisto  <antti@apple.com>
2113
2114         Reviewed by Darin.
2115         
2116         Add method to enable video composition.
2117
2118         * WebCoreSupport/WebSystemInterface.m:
2119         (InitWebCoreSystemInterface):
2120
2121 2007-11-02  Darin Adler  <darin@apple.com>
2122
2123         Reviewed by Mitz.
2124
2125         - fix problem I ran into while doing some testing on Mac for
2126           <rdar://problem/5530185> WebKit does not show <object>
2127           fallback content when both URL and MIME type is omitted
2128
2129         I don't know how to reproduce this failure in DumpRenderTree, so there is no
2130         regression test.
2131
2132         * Plugins/WebNullPluginView.h: Removed some unneeded declarations, including
2133         the didSendError local variable. Instead we just set the error to nil once
2134         we've sent it.
2135         * Plugins/WebNullPluginView.mm:
2136         (-[WebNullPluginView initWithFrame:error:DOMElement:]): Refactored so that
2137         the null plug-in image code is separate from the rest of the function and
2138         so that the whole thing is not inside an if statement. Also don't hold a
2139         reference to the DOM element if there is no error to report.
2140         (-[WebNullPluginView reportFailure]): Added. Does the actual delegate
2141         callback. Happens back at the top level of the run loop so it doesn't
2142         fire deep inside layout. Also wrote this so that it is guaranteed not to
2143         reenter and so that it can handle the case where the delegate destroys
2144         the world (including this object). NOTE: This is not a real, general
2145         solution to the problem of plug-ins that do work inside layout. We will need
2146         a more general fix that works for other plug-ins, and we'll track that with
2147         a separate bug report.
2148         (-[WebNullPluginView viewDidMoveToWindow]): Removed most of the code;
2149         changed so it just does a performSelector:afterDelay:0.
2150
2151 2007-11-02  Mark Rowe  <mrowe@apple.com>
2152
2153         Reviewed by Darin Adler.
2154
2155         Fix http://bugs.webkit.org/show_bug.cgi?id=15780
2156         Bug 15780: WebFrameLoaderClient: WebActionElementKey wrong if view is scrolled
2157
2158         * WebCoreSupport/WebFrameLoaderClient.mm:
2159         (WebFrameLoaderClient::actionDictionary): Retrieve the mouse event coordinates
2160         in the page coordinate system rather than the client area coordinate system.
2161
2162 2007-11-01  Dan Bernstein  <mitz@apple.com>
2163
2164         Reviewed by Oliver Hunt.
2165
2166         - fix an assertion failure when Command-Tabbing out of Safari
2167
2168         * WebView/WebHTMLView.mm:
2169         (-[WebHTMLView flagsChanged:]): Avoid passing key code 0 down to
2170         WebCore.
2171
2172 2007-11-01  Justin Garcia  <justin.garcia@apple.com>
2173
2174         Reviewed by Oliver Hunt.
2175         
2176         <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
2177         
2178         No need to match style when pasting plain text, since the fragment we build for plain text
2179         won't have any style information on it.
2180
2181         * WebView/WebHTMLView.mm:
2182         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): There's no
2183         longer a need to know whether this function chosePlaintext.
2184         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
2185         (-[WebHTMLView _documentFragmentFromPasteboard:]):
2186
2187 2007-10-31  Timothy Hatcher  <timothy@apple.com>
2188
2189         Reviewed by John Sullivan.
2190
2191         Move the developer extras preference to WebPreferences.
2192
2193         * WebView/WebPreferenceKeysPrivate.h: Add WebKitDeveloperExtrasEnabledPreferenceKey
2194         * WebView/WebPreferences.m:
2195         (+[WebPreferences initialize]): Initialize WebKitDeveloperExtrasEnabledPreferenceKey to NO.
2196         (-[WebPreferences developerExtrasEnabled]): Check DisableWebKitDeveloperExtras, WebKitDeveloperExtras
2197           and IncludeDebugMenu in addition to WebKitDeveloperExtrasEnabledPreferenceKey.
2198         (-[WebPreferences setDeveloperExtrasEnabled:]): Set WebKitDeveloperExtrasEnabledPreferenceKey.
2199         * WebView/WebPreferencesPrivate.h: Add developerExtrasEnabled and setDeveloperExtrasEnabled:.
2200         * WebView/WebView.mm:
2201         (+[WebView _developerExtrasEnabled]): Removed.
2202         (-[WebView _preferencesChangedNotification:]): Check the WebPreferences object for developerExtrasEnabled.
2203         * WebView/WebViewPrivate.h: Removed _developerExtrasEnabled.
2204
2205 2007-10-30  David D. Kilzer  <ddkilzer@webkit.org>
2206
2207         Generated files missing from WebCore's Xcode project file
2208         <http://bugs.webkit.org/show_bug.cgi?id=15406>
2209
2210         Reviewed by Darin.
2211
2212         Added the following private header files to MigrateHeaders.make:
2213
2214         - DOMCSSStyleSheetPrivate.h
2215         - DOMEventPrivate.h
2216         - DOMHTMLCollectionPrivate.h
2217         - DOMHTMLEmbedElementPrivate.h
2218         - DOMHTMLIFrameElementPrivate.h
2219         - DOMHTMLObjectElementPrivate.h
2220         - DOMHTMLSelectElementPrivate.h
2221
2222         * MigrateHeaders.make:
2223
2224 2007-10-29  Antti Koivisto  <antti@apple.com>
2225
2226         Reviewed by Maciej.
2227         
2228         Some SPIs for media support.
2229
2230         * WebCoreSupport/WebSystemInterface.m:
2231         (InitWebCoreSystemInterface):
2232
2233 2007-10-29  Timothy Hatcher  <timothy@apple.com>
2234
2235         Reviewed by John Sullivan.
2236
2237         Various semi-related changes:
2238         - A WebView can now be asked for it's WebInspector. There is one
2239           WebInspector per WebView. 
2240         - Refactor the WebInspector class and move obsolete methods to
2241           a special category.
2242         - Add new WebInspector methods to show, hide and show the
2243           console/timeline panels.
2244         - Add an isDisabled method to WebCache.
2245         - Allow WebLocalizableStrings.h to be used in C files.
2246
2247         * Misc/WebCache.h: Add isDisabled.
2248         * Misc/WebCache.mm:
2249         (+[WebCache isDisabled]): New method.
2250
2251         * Misc/WebLocalizableStrings.h: Changes to allow use in plain C files.
2252
2253         * WebCoreSupport/WebInspectorClient.mm:
2254         (-[WebInspectorWindowController showWindow:]): Call super if already visible
2255           so the window will be ordered front.
2256         (-[WebInspectorWindowController showWebInspector:]): Method used by menu items,
2257           so they are enabled and work when the Inspector window is key.
2258         (-[WebInspectorWindowController showErrorConsole:]): Ditto.
2259         (-[WebInspectorWindowController showNetworkTimeline:]): Ditto.
2260
2261         * WebInspector/WebInspector.h: Add and remove methods.
2262         * WebInspector/WebInspector.mm:
2263         (-[WebInspector webViewClosed]): Called when the WebView is closed/dealloced.
2264           Clears the _webView pointer.
2265         (-[WebInspector show:]): Calls thru to the Page's InspectorController.
2266         (-[WebInspector showConsole:]): Ditto.
2267         (-[WebInspector showTimeline:]): Ditto.
2268         (-[WebInspector close:]): Ditto.
2269         (-[WebInspector attach:]): Ditto.
2270         (-[WebInspector detach:]): Ditto.
2271         (+[WebInspector sharedWebInspector]): Moved to the obsolete category.
2272         (+[WebInspector webInspector]): Ditto.
2273         (-[WebInspector setWebFrame:]): Ditto.
2274         (-[WebInspector window]): Ditto.
2275         (-[WebInspector showWindow:]): Ditto.
2276
2277         * WebView/WebView.mm:
2278         (-[WebViewPrivate dealloc]): Release the WebInspector.
2279         (-[WebView _close]): Call webViewClosed on the WebInspector.
2280         (-[WebView inspector]): Create a WebInspector if needed and return it.
2281         * WebView/WebViewPrivate.h: Add the inspector method.
2282
2283 2007-10-30  Adele Peterson  <adele@apple.com>
2284
2285         Reviewed by Darin.
2286
2287         WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
2288         <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
2289
2290         * WebView/WebHTMLView.mm:
2291         (-[WebHTMLView flagsChanged:]): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
2292         (+[WebHTMLView _postFlagsChangedEvent:]): Added a comment with a Radar number for why this isn't just in flagsChanged.
2293         (-[WebHTMLView scrollWheel:]): Instead of calling the next responder explicitly, we can just call super, which will take care of this.
2294
2295 2007-10-27  Mark Ambachtsheer  <mark.a@apple.com>
2296
2297         Reviewed by Darin.
2298
2299         Fix for bug 15710, When QD plugins draw to an offscreen bitmap and the plugin is not at 
2300         (0, 0) the clipping rectangle is not correct.
2301         Added the origin to the window clip rectangle coordinates to account for plugins that
2302         don't originate at (0,0); affects code for offscreen GWorlds only.
2303
2304         * Plugins/WebBaseNetscapePluginView.mm:
2305         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
2306
2307 2007-10-26  Adele Peterson  <adele@apple.com>
2308
2309         Reviewed by Oliver.
2310
2311         Adding WebKitSystemInterface support for the caps lock indicator
2312
2313         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
2314
2315 2007-10-25  David Hyatt  <hyatt@apple.com>
2316
2317         Fix for bug 15672, backgrounds don't tile properly inside transforms.  This patch fixes tiling
2318         of backgrounds inside CSS transforms and also of HTML content with background images inside SVG
2319         transforms.
2320
2321         Reviewed by aroben and mmitz
2322
2323         * WebCoreSupport/WebSystemInterface.m:
2324         (InitWebCoreSystemInterface):
2325         * WebKit.xcodeproj/project.pbxproj:
2326
2327 2007-10-25  John Sullivan  <sullivan@apple.com>
2328
2329         Reviewed by Tim Hatcher
2330         
2331         Removed the support for toggling whether WebKit uses the 10.5 PDFKit improvements. Now it
2332         always does, when available.
2333
2334         * WebView/WebPreferencesPrivate.h:
2335         removed _usePDFPreviewView and _setUsePDFPreviewView:. Note that these were guarded with
2336         a comment that says that they can be removed when no longer needed. That time is now.
2337
2338         * WebView/WebPreferences.m:
2339         (+[WebPreferences initialize]):
2340         removed WebKitUsePDFPreviewViewPreferenceKey
2341         (-[WebPreferences _usePDFPreviewView]):
2342         removed
2343         (-[WebPreferences _setUsePDFPreviewView:]):
2344         removed
2345
2346         * WebView/WebPDFView.mm:
2347         (-[WebPDFView initWithFrame:]):
2348         don't check _usePDFPreviewView
2349         
2350         * WebView/WebPreferenceKeysPrivate.h:
2351         removed WebKitUsePDFPreviewViewPreferenceKey
2352         
2353 2007-10-24  Timothy Hatcher  <timothy@apple.com>
2354
2355         Reviewed by Mark Rowe.
2356
2357         <rdar://problem/5069711> OpenSource version of libWebKitSystemInterface.a is Tiger only, causes issues if used on Leopard
2358
2359         Use the WebKitSystemInterface that matches the system version.
2360
2361         * Configurations/DebugRelease.xcconfig:
2362         * WebKit.xcodeproj/project.pbxproj:
2363
2364 2007-10-24  Brady Eidson  <beidson@apple.com>
2365
2366         Reviewed by Anders
2367
2368         <rdar://problem/5554130> DatabaseTracker.o has a global initializer
2369
2370         * Misc/WebDatabaseManager.mm:
2371         (WebKitSetWebDatabasesPathIfNecessary): Call the member function instead of a static one
2372
2373 2007-10-23  Mark Rowe  <mrowe@apple.com>
2374
2375         Build fix for Eric's build fix in r26916.
2376
2377         * MigrateHeaders.make:
2378
2379 2007-10-22  Eric Seidel  <eric@webkit.org>
2380
2381         Reviewed by Maciej.
2382
2383         * MigrateHeaders.make: copy over font-face related DOM headers
2384
2385 2007-10-22  Andrew Wellington  <proton@wiretapped.net>
2386
2387         Reviewed by Mark Rowe.
2388         
2389         Fix for local database support after r26879
2390         Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set
2391
2392         * Configurations/WebKit.xcconfig:
2393
2394 2007-10-19  Brady Eidson <beidson@apple.com>
2395
2396         Reviewed by Tim Hatcher
2397
2398         Added support for Chrome prompts required by the Storage API
2399         Added support API for future managing of databases from the WebKit client
2400         Added preference and initialization for the databases path
2401
2402         * Misc/WebDatabaseManager.h: Added.  WebDatabaseManager is how a WebKit application can list and
2403           remove the current available databases
2404         * Misc/WebDatabaseManager.mm: Added.
2405         (+[WebDatabaseManager origins]):
2406         (+[WebDatabaseManager databasesWithOrigin:]):
2407         (+[WebDatabaseManager deleteAllDatabases]):
2408         (+[WebDatabaseManager deleteAllDatabasesWithOrigin:]):
2409         (+[WebDatabaseManager deleteDatabaseWithOrigin:named:]):
2410         (WebKitSetWebDatabasesPathIfNecessary): Setup the database path
2411         * Misc/WebDatabaseManagerPrivate.h: Added.
2412
2413         * WebCoreSupport/WebChromeClient.h: Support for calling the delegate to run the prompt for 
2414           an origin exceeding its size limit
2415         * WebCoreSupport/WebChromeClient.mm:
2416         (WebChromeClient::runDatabaseSizeLimitPrompt):
2417         * WebKit.xcodeproj/project.pbxproj:
2418         * WebView/WebUIDelegate.h:
2419
2420         * WebView/WebView.mm:
2421         (-[WebView _commonInitializationWithFrameName:groupName:]): Setup the database path
2422         * WebView/WebViewInternal.h:
2423
2424 2007-10-19  John Sullivan  <sullivan@apple.com>
2425
2426         Reviewed by Tim Hatcher
2427         
2428         - fixed <rdar://problem/5540325> REGRESSION (2.0.4-3): History menu looks odd after clearing history
2429
2430         * History/WebHistory.mm:
2431         (-[WebHistoryPrivate removeAllItems]):
2432         This was fallout from r25275. We need to clear the orderedLastVisitedDays cache here, in addition
2433         to the other places where it's cleared.
2434
2435 2007-10-18  Dan Bernstein  <mitz@apple.com>
2436
2437         Tiger build fix.
2438
2439         * WebView/WebDataSource.mm:
2440         (-[WebDataSource _MIMETypeOfResponse:]):
2441
2442 2007-10-18  Dan Bernstein  <mitz@apple.com>
2443
2444         Reviewed by Adam Roben.
2445
2446         - fix <rdar://problem/5313523>
2447         REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
2448
2449         * WebCoreSupport/WebFrameLoaderClient.mm:
2450         (WebFrameLoaderClient::makeDocumentView): Changed to use _responseMIMEType.
2451         * WebView/WebDataSource.mm:
2452         (-[WebDataSource _MIMETypeOfResponse:]): Added. Works around
2453         <rdar://problem/5321972> by testing for the case of an NSHTTPURLResponse
2454         with a MIMEType of application/octet-stream and a Content-Type header
2455         starting with text/plain and returning text/plain as the MIME type in
2456         that case.
2457         (-[WebDataSource _responseMIMEType]): Added. Used to get the correct
2458         response MIME type.
2459         (-[WebDataSource _isDocumentHTML]): Changed to use _responseMIMEType.
2460         (-[WebDataSource _makeRepresentation]): Ditto.
2461         (-[WebDataSource mainResource]): Ditto.
2462         (-[WebDataSource subresources]): Changed to use _MIMETypeOfResponse and
2463         pass the MIME type explicitly.
2464         (-[WebDataSource subresourceForURL:]): Ditto.
2465         * WebView/WebDataSourcePrivate.h:
2466         * WebView/WebFrameView.mm:
2467         (-[WebFrameView _makeDocumentViewForDataSource:]): Changed to use
2468         _responseMIMEType.
2469         * WebView/WebResource.mm:
2470         (-[WebResource _initWithData:URL:response:MIMEType:]): Changed this
2471         method to take a MIME type instead of extracting it from the response,
2472         so that WebDataSource could pass the correct MIME type.
2473         * WebView/WebResourcePrivate.h:
2474
2475 2007-10-17  Darin Adler  <darin@apple.com>
2476
2477         Reviewed by Mark Rowe.
2478
2479         - fix <rdar://problem/5183775> Uninitialized memory in -[WebDynamicScrollBarsView updateScrollers]
2480
2481         * WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
2482         Change code path so it doesn't dispatch a method that returns an NSSize passing a nil object.
2483         It's safe to do that for functions that return integers or pointers, but not structures.
2484
2485 2007-10-16  David Kilzer  <ddkilzer@apple.com>
2486
2487         Reviewed by Timothy.
2488
2489         <rdar://problem/5544354> Wrong delegate method called in
2490         WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad()
2491
2492         * WebCoreSupport/WebFrameLoaderClient.mm:
2493         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Fixed selector name.
2494
2495 2007-10-16  Darin Adler  <darin@apple.com>
2496
2497         Reviewed by Adele.
2498
2499         - moved transpose command implementation into WebCore
2500
2501         * WebView/WebHTMLView.mm: Removed transpose: and replaced it with standard WebCore forwarding.
2502
2503 2007-10-16  Darin Adler  <darin@apple.com>
2504
2505         Reviewed by Maciej and Geoff (and looked over by Eric).
2506
2507         - http://bugs.webkit.org/show_bug.cgi?id=15519
2508           eliminate use of <ctype.h> for processing ASCII
2509
2510         * ForwardingHeaders/wtf/ASCIICType.h: Added.
2511         * ForwardingHeaders/wtf/DisallowCType.h: Added.
2512
2513         * WebKitPrefix.h: Include DisallowCType.h.
2514
2515         * Misc/WebNSURLExtras.mm: (-[NSURL _web_URLWithLowercasedScheme]): Use toASCIILower.
2516         * WebView/WebHTMLView.mm:
2517         (-[WebHTMLView callWebCoreCommand:]): Use toASCIIUpper.
2518         (-[WebTextCompleteController filterKeyDown:]): Add a list of specific character codes,
2519         instead of using ispunct.
2520
2521 2007-10-16  John Sullivan  <sullivan@apple.com>
2522
2523         Reviewed by Adam Roben
2524         
2525         Cleaned up localizable strings
2526
2527         * English.lproj/Localizable.strings:
2528         updated
2529         * StringsNotToBeLocalized.txt:
2530         updated
2531         * WebKit.xcodeproj/project.pbxproj:
2532         StringsNotToBeLocalized.txt recently moved but project file wasn't updated to match; now it is
2533
2534 2007-10-15  Kevin Decker  <kdecker@apple.com>
2535
2536         Reviewed by Darin Adler.
2537         
2538         Fixed: <rdar://problem/5520541> REGRESSION: Broken image when forwarding certain email on Tiger
2539         
2540         * WebCoreSupport/WebFrameBridge.mm: The problem was that we were loading Mail's WebKit plug-in
2541         too soon, which borked some necessary housekeeping on behalf of Mail. The fix is to add a quirk
2542         that treats Tiger Mail's WebKit plug-in like a Netscape plug-in, thus ensuring the plug-in will
2543         load during first layout and not attach time. For this plug-in, loading at first layout is 
2544         expected and is consistent with Safari 2 behavior.
2545
2546 2007-10-15  John Sullivan  <sullivan@apple.com>
2547
2548         Reviewed by Geoff Garen
2549         
2550         Replaced NS_DURING/NS_HANDLER with @try/@catch throughout WebKit
2551
2552         I made the following changes:
2553         - replaced NS_DURING with @try, and added opening brace if there wasn't one
2554         - replaced NS_HANDLER with @catch (NSException *localException), and added braces if there weren't any
2555         - removed NS_ENDHANDLER, and added a closing brace if there wasn't one
2556         - in a couple of places, fixed indentation therein
2557
2558         * Misc/WebIconDatabase.mm:
2559         (objectFromPathForKey):
2560         * WebView/WebHTMLView.mm:
2561         (-[WebHTMLView drawSingleRect:]):
2562         (-[WebHTMLView beginDocument]):
2563         (-[WebHTMLView deleteToMark:]):
2564         * WebView/WebView.mm:
2565         (-[WebView initWithCoder:]):
2566
2567 == Rolled over to ChangeLog-2007-10-14 ==