4f039ddbb7af89e9027af798a090026a577ca0af
[WebKit-https.git] / WebKit / mac / ChangeLog
1 2007-12-10  Kevin Decker  <kdecker@apple.com>
2
3         Reviewed by Darin.
4
5         Fixed: <rdar://problem/4290098> Right-mouse click on element doesn't call onmousedown handler
6         
7         * WebView/WebHTMLView.mm:
8         (-[WebHTMLView menuForEvent:]): Match behavior of other browsers by sending an onmousedown event for right clicks.
9
10 2007-12-08  Oliver Hunt  <oliver@apple.com>
11
12         Reviewed by Sam W.
13
14         Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.
15         
16         Fixes <rdar://problem/5620249> Must disable SVG animation
17         <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior
18         
19         Minor updates to the feature flags used.
20
21         * Configurations/WebKit.xcconfig:
22         * DOM/WebDOMOperations.mm:
23
24 2007-12-07  Darin Adler  <darin@apple.com>
25
26         Reviewed by Kevin Decker and Tim Hatcher.
27
28         - speculative fix for <rdar://problem/5400159> CrashTracer: [USER] 726 crashes
29           in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389
30
31         * WebView/WebHTMLView.mm:
32         (-[WebHTMLView _frameOrBoundsChanged]): Only schedule the mouseover timer if we are in a window
33         and not closed. That's because viewDidMoveToWindow and close are the entry points for cancelling.
34         (-[WebHTMLView close]): Add code to cancel both timers. Needed for the case where the entire
35         window goes away, and the view is never removed from the window.
36         (-[WebHTMLView viewDidMoveToWindow]): Don't do work if the view is closed.
37
38 2007-12-07  Darin Adler  <darin@apple.com>
39
40         Reviewed by Mitz.
41
42         - http://bugs.webkit.org/show_bug.cgi?id=15981
43           speed up visited-link code a bit
44
45         * History/WebHistory.mm: Removed unused Latin-1 code path.
46         (-[_WebCoreHistoryProvider containsURL:length:]): Updated for method name change.
47
48 2007-12-07  Geoffrey Garen  <ggaren@apple.com>
49
50         Reviewed by Sam Weinig.
51         
52         Added a forwarding header, since we now #include nodes.h through some
53         JavaScriptCore headers.
54
55         * ForwardingHeaders/wtf/ListRefPtr.h: Added.
56
57 2007-12-06  Brady Eidson  <beidson@apple.com>
58
59         Reviewed by Oliver's rubber stamp
60
61         Let's go ahead and call the correct UI Delegate method, shall we?
62
63         * WebCoreSupport/WebChromeClient.mm:
64         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Call the correct UI delegate
65
66 2007-12-06  Adam Roben  <aroben@apple.com>
67
68         Remove some assertions we know can fire and replace them with a FIXME
69
70         Reviewed by Anders.
71
72         * WebCoreSupport/WebFrameLoaderClient.mm:
73
74 2007-12-06  Timothy Hatcher  <timothy@apple.com>
75
76         Change the ASSERT added for the previous fix. The ASSERT was firing for 10.5.0.
77         Only assert if the major version is zero, since zero is handled in the other cases.
78
79         * WebView/WebView.mm:
80         (callGestalt): Remove the ASSERT.
81         (createMacOSXVersionString): ASSERT that major is not zero.
82
83 2007-12-06  Darin Adler  <darin@apple.com>
84
85         Reviewed by Tim Hatcher.
86
87         - fix <rdar://problem/5513394> No way to detect Tiger vs Leopard from Safari's user agent string
88
89         * WebView/WebView.mm:
90         (callGestalt): Added.
91         (createMacOSXVersionString): Added.
92         (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Added Mac OS X version string,
93         right after the string "Mac OS X", but with underscores instead of dots to avoid the dreaded
94         "4." problem (old libraries that think a "4." anywhere in the user agent means Netscape 4).
95         (-[WebView _userAgentForURL:]): Fixed incorrect bug numbers.
96
97 2007-12-04  Geoffrey Garen  <ggaren@apple.com>
98
99         Reviewed by Darin Adler.
100
101         Third step in refactoring JSGlobalObject: Moved data members and data
102         member access from Interpreter to JSGlobalObject.
103         
104         * WebView/WebFrame.mm:
105         (-[WebFrame _attachScriptDebugger]):
106
107 2007-12-04  Kevin McCullough  <kmccullough@apple.com>
108
109         Reviewed by Darin.
110
111         - <rdar://5621435>
112         - Security Fix. Instead of having it off by default, WebKit now must
113         explicitly turn off local-resource restriction when needed for backwards
114         coimpatibility reasons.
115
116         * WebView/WebView.mm:
117         (-[WebView _commonInitializationWithFrameName:groupName:]):
118
119 2007-12-05  Brady Eidson  <beidson@apple.com>
120
121         Reviewed by Kevin Deckers rubberstamp
122
123         Disclose and export the Databases Directory defaults key
124
125         * Storage/WebDatabaseManager.mm:
126         * Storage/WebDatabaseManagerPrivate.h:
127         * WebKit.exp:
128
129 2007-12-04  Kevin Decker  <kdecker@apple.com>
130
131         Reviewed by Anders.
132
133         <rdar://problem/5629125> PluginInfoStore needs the ability to return the name of a plug-in for a given MIME type
134
135         * WebCoreSupport/WebViewFactory.mm:
136         (-[WebViewFactory pluginNameForMIMEType:]): Added.
137
138 2007-12-04  Brady Eidson  <beidson@apple.com>
139
140         Reviewed by Mark Rowe
141
142         Tweaked the way we typedef and cast these objc_msgSend calls
143
144         * WebView/WebView.mm:
145         (CallDelegateReturningUnsignedLongLong):
146
147 2007-12-04  John Sullivan  <sullivan@apple.com>
148
149         Reviewed by Brady Eidson (with help from Mark Rowe)
150         
151         Fixed return values for unsigned-long-long delegate methods
152
153         * WebView/WebView.mm:
154         (CallDelegateReturningUnsignedLongLong):
155         redid the change that Brady did at home over the weekend but forgot to check in
156
157 2007-11-27  Adam Roben  <aroben@apple.com>
158
159         Remove -[WebFrameBridge setNeedsReapplyStyles]
160
161         This functionality is now WebCore's responsibility.
162
163         Reviewed by Hyatt.
164
165         * WebCoreSupport/WebFrameBridge.mm:
166         * WebKit.order:
167
168 2007-12-04  John Sullivan  <sullivan@apple.com>
169
170         Reviewed by Darin
171         
172         Added deleteOrigin: SPI, which isn't fully implemented
173
174         * Storage/WebDatabaseManagerPrivate.h:
175         * Storage/WebDatabaseManager.mm:
176         (-[WebDatabaseManager deleteOrigin:]):
177         just calls deleteDatabasesWithOrigin: for now, but needs to delete origin itself too
178
179 2007-12-04  Timothy Hatcher  <timothy@apple.com>
180
181         Reviewed by Mark Rowe.
182
183         Remove a check for early versions of Leopard CFNetwork now that
184         Leopard has shipped.
185
186         * Misc/WebKitVersionChecks.h: Remove WEBKIT_FIRST_CFNETWORK_VERSION_WITH_LARGE_DISK_CACHE_FIX.
187         * WebView/WebView.mm:
188         (+[WebView _setCacheModel:]): Remove the early Leopard CFNetwork check.
189
190 2007-12-04  Kevin Decker  <kdecker@apple.com>
191
192         Reviewed by Darin.
193
194         Revised fix for: <rdar://problem/5586978> REGRESSION (Safari 2-3): WebKit sometimes doesn't invoke Flash's NPP_SetWindow function and causes a hang
195
196         This fix is exactly the same as chageset 28359 with the exception of an added early return in
197         updateAndSetWindow to cover the additional case of when a plug-in isn't drawable.
198         
199         The CG-based Flash player would sometimes hang because (for CoreGraphics-based plug-ins) our code would
200         only call into the NPP_SetWindow() function when we tell the plug-in to draw. This created havoc with 
201         Flash because Flash expects the browser to call NPP_SetWindow() and provide a valid graphics context 
202         regardless of whether or not it actually needs to draw. 
203         
204         * Plugins/WebBaseNetscapePluginView.mm:
205         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed an incorrect comment and toned
206         down an ASSERT that was too strict. 
207         (-[WebBaseNetscapePluginView updateAndSetWindow]): Removed an early return for CoreGraphics-based plug-ins
208         which would sometimes altogether prevent updating the PortState and calling into a plug-ins NPP_SetWindow()
209         function. Also tweaked a comment and added an early return if the plug-in can't draw.
210
211 2007-12-04  Darin Adler  <darin@apple.com>
212
213         Reviewed by Kevin Decker.
214
215         * WebCoreSupport/WebFrameLoaderClient.h: Removed obsolete privateBrowsingEnabled.
216         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
217         * WebKit.order: Ditto.
218
219 2007-12-03  Dan Bernstein  <mitz@apple.com>
220
221         Reviewed by Dave Hyatt.
222
223         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
224
225         * WebView/WebHTMLView.mm:
226         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Removed the code
227         that checked if the view had resized and sent the resize event, since
228         FrameView sends resize events now.
229         * WebView/WebHTMLViewInternal.h:
230
231 2007-12-03  Timothy Hatcher  <timothy@apple.com>
232
233         Reviewed by Darin.
234
235         Change WebViewGetResourceLoadDelegateImplementations and WebViewGetFrameLoadDelegateImplementations
236         to return a pointer to the implementation struct instead of a copy of the struct. This changes
237         all of the callers to dereference the pointer to access the struct fields.
238
239         * Plugins/WebNullPluginView.mm:
240         (-[WebNullPluginView reportFailure]):
241         * WebCoreSupport/WebFrameBridge.mm:
242         * WebCoreSupport/WebFrameLoaderClient.mm:
243         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
244         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
245         (WebFrameLoaderClient::dispatchWillSendRequest):
246         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
247         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
248         (WebFrameLoaderClient::dispatchDidReceiveResponse):
249         (WebFrameLoaderClient::willCacheResponse):
250         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
251         (WebFrameLoaderClient::dispatchDidFinishLoading):
252         (WebFrameLoaderClient::dispatchDidFailLoading):
253         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
254         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
255         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
256         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
257         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
258         (WebFrameLoaderClient::dispatchWillClose):
259         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
260         (WebFrameLoaderClient::dispatchDidReceiveTitle):
261         (WebFrameLoaderClient::dispatchDidCommitLoad):
262         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
263         (WebFrameLoaderClient::dispatchDidFailLoad):
264         (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
265         (WebFrameLoaderClient::dispatchDidFinishLoad):
266         (WebFrameLoaderClient::dispatchDidFirstLayout):
267         * WebView/WebView.mm:
268         (WebViewGetResourceLoadDelegateImplementations):
269         (WebViewGetFrameLoadDelegateImplementations):
270         (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
271         * WebView/WebViewInternal.h:
272
273 2007-12-03  Timothy Hatcher  <timothy@apple.com>
274
275         Reviewed by Brady Eidson.
276
277         <rdar://problem/5539913> 188 crashes in WebViewGetFrameLoadDelegateImplementations
278         <rdar://problem/5586095> CrashTracer: [USER] 5000+ crashes in Safari and Dashboard in dispatchDidFailLoading
279         <rdar://problem/5607081> CrashTracer: [USER] 2150 crashes in Safari at com.apple.WebKit:
280         WebViewGetResourceLoadDelegateImplementations + 28
281
282         * WebView/WebView.mm:
283         (-[WebView _cacheResourceLoadDelegateImplementations]): If the delegate is nil, bzero the
284         implementation cache. This just prevents us from calling getMethod() multiple times just to zero.
285         (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto.
286         (WebViewGetResourceLoadDelegateImplementations): Return a zeroed implementations struct
287         if the WebView is nil. This fixes the crashes.
288         (WebViewGetFrameLoadDelegateImplementations): Ditto.
289
290 2007-12-02  Geoffrey Garen  <ggaren@apple.com>
291
292         Reviewed by Eric Seidel.
293
294         Updated to match the JavaScriptCore change to move virtual methods from
295         Interpreter to JSGlobalObject.
296
297         * WebView/WebFrame.mm:
298         (-[WebFrame globalContext]): Use the toRef function instead of manually
299         casting.
300
301 2007-12-01  Brady Eidson  <beidson@apple.com>
302
303         Reviewed by Tim
304
305         Added a default database quota of 5mb to the default WebPreferences
306
307         * WebView/WebPreferences.m:
308         (+[WebPreferences initialize]):
309
310 2007-11-30  John Sullivan  <sullivan@apple.com>
311
312         Reviewed by Geoff Garen
313         
314         Added another symbol for WebDatabaseManager clients
315
316         * WebKit.exp:
317         added .objc_class_name_WebSecurityOrigin
318
319 2007-11-30  Brady Eidson  <beidson@apple.com>
320
321         Reviewed by Geoff
322
323         Add isEqual operator to WebSecurityOrigin
324
325         * Storage/WebSecurityOrigin.mm:
326         (-[WebSecurityOrigin isEqual:]):
327
328 2007-11-30  John Sullivan  <sullivan@apple.com>
329
330         Reviewed by Darin
331         
332         Tweaks to newly-declared NSString * constants to make them usable from clients
333
334         * Storage/WebDatabaseManagerPrivate.h:
335         * Storage/WebDatabaseManager.mm:
336         removed "const" from new NSNotification names and userInfo keys; these generate compiler warnings when used
337         
338         * WebKit.exp:
339         export new NSNotification names and userInfo keys so clients can use them
340
341 2007-11-29  Anders Carlsson  <andersca@apple.com>
342
343         Reviewed by John.
344
345         Rename WebKitShrinksStandaloneImagesToFitKey to WebKitShrinksStandaloneImagesToFit.
346         
347         This is safe to do because the preference is off by default and Safari 3, which is the only client that turns it on,
348         is using the setter and not messing around with NSUserDefaults.
349         
350         * WebView/WebPreferenceKeysPrivate.h:
351         * WebView/WebPreferences.m:
352         (+[WebPreferences initialize]):
353         (-[WebPreferences shrinksStandaloneImagesToFit]):
354         (-[WebPreferences setShrinksStandaloneImagesToFit:]):
355
356 2007-11-29  Brady Eidson  <beidson@apple.com>
357
358         Reviewed by Anders
359
360         Support for <rdar://problem/5556381> and <rdar://problem/5556379>
361
362         Hook up UI Delegate calls for the database engine feature and other small tweaks
363
364         * Storage/WebDatabaseManager.mm:
365         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity
366         (-[WebDatabaseManager deleteDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity
367         * Storage/WebDatabaseManagerPrivate.h:
368
369         * Storage/WebDatabaseTrackerClient.h:
370         * Storage/WebDatabaseTrackerClient.mm:
371         (WebDatabaseTrackerClient::dispatchDidModifyDatabase): Renamed databaseName parameter to databaseIdentifier for clarity
372
373         * WebCoreSupport/WebChromeClient.h:
374         * WebCoreSupport/WebChromeClient.mm:
375         (WebChromeClient::requestQuotaIncreaseForNewDatabase): Call through to the UI Delegate
376         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Ditto
377
378         * WebView/WebUIDelegatePrivate.h: Added the two UI Delegate methods
379
380         * WebView/WebView.mm:
381         (CallDelegateReturningUnsignedLongLong):
382         (CallUIDelegateReturningUnsignedLongLong):
383         * WebView/WebViewInternal.h:
384
385 2007-11-28  Kevin McCullough  <kmccullough@apple.com>
386
387         Reviewed by Sam.
388
389         - Added recursive runloop guards.
390
391         * DefaultDelegates/WebScriptDebugServer.m:
392         (-[WebScriptDebugServer suspendProcessIfPaused]):
393
394 2007-11-29  Mark Rowe  <mrowe@apple.com>
395
396         Reviewed by Oliver Hunt.
397
398         Fix an assertion failure seen on the layout tests, and when closing the window after
399         visiting <http://www.coudal.com/losalamos/>.
400
401         * Plugins/WebBaseNetscapePluginStream.mm:
402         (-[WebBaseNetscapePluginStream _destroyStream]): Unlink the file and close the file
403         descriptor even when the stream is being destroyed without the load completing. This
404         avoids leaking the path and file descriptor, and leaving the temporary file on disk.
405
406 2007-11-28  Adele Peterson  <adele@apple.com>
407
408         Reviewed by Darin.
409
410         Fix for <rdar://problem/5524216> CrashTracer: [USER] 496 crashes in Safari at com.apple.WebCore: WebCore::Frame::eventHandler const + 6
411
412         The CrashTracer shows a variety of crashes in different methods (including keyDown and keyUp). This change adds nil checks for the frame in 
413         WebHTMLView to prevent future problems in other methods as well.
414
415         * WebView/WebHTMLView.mm:
416         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
417         (-[WebHTMLView keyDown:]):
418         (-[WebHTMLView keyUp:]):
419         (-[WebHTMLView flagsChanged:]):
420         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
421         (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
422         (-[WebHTMLView checkSpelling:]):
423         (-[WebHTMLView showGuessPanel:]):
424         (-[WebHTMLView indent:]):
425         (-[WebHTMLView outdent:]):
426         (-[WebHTMLView paste:]):
427         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
428         (-[WebHTMLView insertText:]):
429         (-[WebHTMLView selectionTextRects]):
430
431 2007-11-28  Dan Bernstein  <mitz@apple.com>
432
433         Reviewed by Maciej Stachowiak.
434
435         - fix <rdar://problem/5596160> fast/events/objc-event-api.html fails when run alone (or first)
436
437         * WebView/WebHTMLView.mm:
438         (-[WebHTMLView setDataSource:]): This method calls addMouseMovedObserver
439         because addMouseMovedObserver returns early if the dataSource
440         is not nil. But if the dataSource is already set (which happens when
441         a WebHTMLView is being reused) then addMouseMovedObserver must not
442         be called again.
443
444 2007-11-27  Anders Carlsson  <andersca@apple.com>
445
446         Reviewed by Brady.
447
448         * Storage/WebDatabaseManager.mm:
449         * Storage/WebDatabaseManagerPrivate.h:
450         * Storage/WebDatabaseTrackerClient.mm:
451         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
452         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
453         * Storage/WebSecurityOrigin.mm:
454         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
455         * Storage/WebSecurityOriginInternal.h:
456
457 2007-11-27  Kevin Decker  <kdecker@apple.com>
458
459         Reviewed by Darin, landed by Anders.
460
461         Fixed: <rdar://problem/4610818> CrashTracer: 1533 crashes in Safari at com.macromedia.Flash Player.plugin: native_ShockwaveFlash_TCallLabel + 271131
462
463         The problem was that some Leopard users were still inadvertently using the old Flash 8 plug-in, even though Leopard
464         shipped with Flash 9. To avoid loading an older version of a plug-in when a newer version is installed, the plug-in
465         database will compare bundle versions and always load the latest version.
466
467         * Plugins/WebBasePluginPackage.h:
468         * Plugins/WebBasePluginPackage.m:
469         (-[WebBasePluginPackage versionNumber]): New method. CFBundleGetVersionNumber doesn't work with all possible versioning schemes,
470         but we think for now it's good enough for us.
471         * Plugins/WebPluginDatabase.m:
472         (considerCandidate): Added a C utility function which compares the current plug-in against a candidate plug-in's version number.
473         If both plug-ins have the same bundle ID and the candiate is newer, the current plug-in becomes the candidate.
474         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): Calls the new considerCandidate() function.
475
476 2007-11-26  Timothy Hatcher  <timothy@apple.com>
477
478         Reviewed by Dave Hyatt.
479
480         <rdar://problem/5569233> Add the ability to disable author and user CSS styles
481
482         * WebView/WebPreferenceKeysPrivate.h: Define WebKitRespectStandardStyleKeyEquivalentsPreferenceKey.
483         * WebView/WebPreferences.m:
484         (+[WebPreferences initialize]): Default WebKitRespectStandardStyleKeyEquivalentsPreferenceKey to YES.
485         (-[WebPreferences authorAndUserStylesEnabled]): Return the setting's BOOL value.
486         (-[WebPreferences setAuthorAndUserStylesEnabled:]): Set the setting's BOOL value.
487         * WebView/WebPreferencesPrivate.h: Add authorAndUserStylesEnabled and setAuthorAndUserStylesEnabled:.
488         * WebView/WebView.mm:
489         (-[WebView _preferencesChangedNotification:]): Update WebCore::Settings::authorAndUserStylesEnabled.
490
491 2007-11-26  Brady Eidson  <beidson@apple.com>
492
493         Reviewed by Mark Rowe
494
495         Provide API for setting the default storage quota per database origin
496
497         * Misc/WebNSDictionaryExtras.h:
498         * Misc/WebNSDictionaryExtras.m:
499         (-[NSMutableDictionary _webkit_setUnsignedLongLong:forKey:]): Helper for UINT64 preferences
500
501         * WebView/WebPreferenceKeysPrivate.h:
502         * WebView/WebPreferences.m:
503         (-[WebPreferences _unsignedLongLongValueForKey:]): Helper for UINT64 prefs
504         (-[WebPreferences _setUnsignedLongLongValue:forKey:]): Ditto
505         (-[WebPreferences defaultDatabaseQuota]):
506         (-[WebPreferences setDefaultDatabaseQuota:]):
507         * WebView/WebPreferencesPrivate.h:
508
509         * WebView/WebView.mm:
510         (-[WebView _preferencesChangedNotification:]): Set the WebCore Settings version of the default storage pref
511
512 2007-11-26  Darin Adler  <darin@apple.com>
513
514         Reviewed by Adele.
515
516         - some middle-mouse-button-related fixes
517
518         These don't affect Safari since it maps the middle mouse button to the command key,
519         but that might not always be the case for future versions.
520
521         * WebView/WebHTMLView.mm:
522         (-[WebHTMLView otherMouseDown:]): Pass through middle mouse down events to WebCore.
523         (-[WebHTMLView otherMouseDragged:]): Ditto, for drag events.
524         (-[WebHTMLView otherMouseUp:]): Ditto, for up events.
525
526         * WebView/WebPolicyDelegate.h: Fixed inaccurate documentation of WebActionButtonKey.
527
528 2007-11-26  Anders Carlsson  <andersca@apple.com>
529
530         Reviewed by Brady.
531
532         Get rid of the WebSecurityOriginPrivate object and store 
533         the WebCore::SecurityOriginData pointer in the _private field of
534         the WebSecurityOrigin object instead.
535         
536         * Storage/WebDatabaseManager.mm:
537         (-[WebDatabaseManager databasesWithOrigin:]):
538         (-[WebDatabaseManager detailsForDatabase:withOrigin:]):
539         (-[WebDatabaseManager deleteDatabasesWithOrigin:]):
540         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
541         * Storage/WebSecurityOrigin.mm:
542         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
543         (-[WebSecurityOrigin protocol]):
544         (-[WebSecurityOrigin domain]):
545         (-[WebSecurityOrigin port]):
546         (-[WebSecurityOrigin usage]):
547         (-[WebSecurityOrigin quota]):
548         (-[WebSecurityOrigin setQuota:]):
549         (-[WebSecurityOrigin dealloc]):
550         (-[WebSecurityOrigin finalize]):
551         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
552         (-[WebSecurityOrigin _core]):
553         * Storage/WebSecurityOriginInternal.h:
554
555 2007-11-26  Timothy Hatcher  <timothy@apple.com>
556
557         Reviewed by Adam Roben.
558
559         Bug 16137: Web Inspector window on Leopard should have a unified toolbar and window title
560         http://bugs.webkit.org/show_bug.cgi?id=16137
561
562         Create the Web Inspector window with the textured style. Set the content border
563         thickness for the top of the window or the height of the toolbar. Also make the
564         window's bottom corners square, since a normal textured window normally has
565         rounded bottom corners.
566
567         * WebCoreSupport/WebInspectorClient.mm:
568         (-[WebInspectorWindowController window]):
569
570 2007-11-24  Mark Rowe  <mrowe@apple.com>
571
572         Tiger build fix.
573
574         * Plugins/WebBaseNetscapePluginStream.mm:
575         (CarbonPathFromPOSIXPath): Use WebCFAutorelease as this also works on Tiger.
576
577 2007-11-24  Mark Rowe  <mrowe@apple.com>
578
579         Reviewed by Tim Hatcher.
580
581         Fix <rdar://problem/5432686> 333MB RPRVT seems to leak @ www.43folders.com (1hr plug-in stream).
582         http://bugs.webkit.org/show_bug.cgi?id=13705
583
584         Have NP_ASFILE and NP_ASFILEONLY streams write the data to disk as they receive it rather than
585         dumping the data to disk in a single go when the stream has completed loading.  On a test case
586         involving a 150MB Flash movie being streamed from a local web server this reduces memory consumption
587         on page load from around 400MB to 22MB.
588
589         The only plugin I have found that uses NP_ASFILE or NP_ASFILEONLY on the Mac is our NetscapeMoviePlugin
590         example code so the NP_ASFILE portion of this change has not had any testing with a real-world plugin.
591
592         * Plugins/WebBaseNetscapePluginStream.h:
593         * Plugins/WebBaseNetscapePluginStream.mm:
594         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
595         (-[WebBaseNetscapePluginStream dealloc]):
596         (-[WebBaseNetscapePluginStream finalize]):
597         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
598         (-[WebBaseNetscapePluginStream _destroyStream]): Update to work with paths as NSStrings.
599         (-[WebBaseNetscapePluginStream _deliverDataToFile:]): Open the file if it is not already open, and write any data
600         to disk.
601         (-[WebBaseNetscapePluginStream finishedLoading]): If the stream is NP_ASFILE or NP_ASFILEONLY we need to ensure
602         that the file exists before _destroyStream passes it to the plugin.  Simulating the arrival of an empty data block
603         ensure that the file will be created if it has not already.
604         (-[WebBaseNetscapePluginStream receivedData:]):
605         (CarbonPathFromPOSIXPath):
606         * Plugins/WebBaseNetscapePluginView.mm:
607         (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]): Data is dealt with incrementally so there's no need to pass
608         it to finishedLoading.
609         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Ditto.
610
611 2007-11-23  Oliver Hunt  <oliver@apple.com>
612
613         Reviewed by Mark Rowe.
614         
615         Fixed <rdar://problem/3759190> allow input methods the option of processing mouse events themselves
616
617         * WebView/WebHTMLView.mm:
618         (-[WebHTMLView mouseDown:]):
619
620 2007-11-22  Dan Bernstein  <mitz@apple.com>
621
622         Reviewed by Antti Koivisto.
623
624         - http://bugs.webkit.org/show_bug.cgi?id=15811
625           WebKit plug-ins can re-enter WebKit under attach()
626           <rdar://problem/5577978>
627
628         * Plugins/WebNullPluginView.mm:
629         (-[WebNullPluginView viewDidMoveToWindow]): Removed workaround for the
630         above bug that added as part of fixing
631         <http://bugs.webkit.org/show_bug.cgi?id=15804>.
632
633 2007-11-21  Mark Rowe  <mrowe@apple.com>
634
635         Reviewed by Eric.
636
637         Fix WebKit to build without warnings under GCC 4.2.
638
639         * Configurations/Base.xcconfig:
640
641 2007-11-21  Mark Rowe  <mrowe@apple.com>
642
643         Reviewed by Tim Hatcher.
644
645         Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings
646
647         Update format strings to use format specifiers that match the argument types.
648
649         * Misc/WebGraphicsExtras.c:
650         (WebConvertBGRAToARGB):
651
652 2007-11-19  Brady Eidson <beidson@apple.com>
653
654         Reviewed by Maciej
655
656         Finished hooking up the WebKit API for database management.
657         Most of the API is actually implemented in WebCore and some of those methods might
658         only be stubs for now.
659
660         * Storage/WebDatabaseManager.mm:
661         (-[WebDatabaseManager origins]): Call through to the WebCore tracker and construct an API result
662         (-[WebDatabaseManager databasesWithOrigin:]): Ditto
663         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Ditto
664
665         * Storage/WebSecurityOrigin.mm:
666         (-[WebSecurityOrigin usage]): Call through to WebCore
667         (-[WebSecurityOrigin quota]): Ditto
668         (-[WebSecurityOrigin setQuota:]): Ditto
669         (-[WebSecurityOrigin _core]): Get WebCore version of this object
670         * Storage/WebSecurityOriginInternal.h:
671
672 2007-11-17  Timothy Hatcher  <timothy@apple.com>
673
674         Reviewed by Mark Rowe.
675
676         Bug 13470: i18n: The Web Inspector is not localizable
677         http://bugs.webkit.org/show_bug.cgi?id=13470
678
679         Implement the localizedStringsURL() client method to return the
680         localized URL of InspectorLocalizedStrings.js in WebCore.
681
682         * WebCoreSupport/WebInspectorClient.h: Added localizedStringsURL.
683         * WebCoreSupport/WebInspectorClient.mm:
684         (WebInspectorClient::localizedStringsURL): Added.
685         (WebInspectorClient::updateWindowTitle): Localized the window title.
686         (-[WebInspectorWindowController init]): Remove a FIXME that dosen't make sense anymore.
687         (-[WebInspectorWindowController initWithInspectedWebView:]): Code style cleanup.
688
689 2007-11-17  Alexey Proskuryakov  <ap@webkit.org>
690
691         Reviewed by Darin.
692
693         http://bugs.webkit.org/show_bug.cgi?id=15969
694         Eliminate Editor::deleteRange()
695
696         * WebView/WebHTMLView.mm:
697         (+[WebHTMLView initialize]):
698         (-[WebHTMLView yank:]):
699         (-[WebHTMLView yankAndSelect:]):
700         (-[WebHTMLView setMark:]):
701         (-[WebHTMLView deleteToMark:]):
702         (-[WebHTMLView selectToMark:]):
703         (-[WebHTMLView swapWithMark:]):
704         Pushed all kill ring methods to WebCore. They were guilty of using Editor::deleteRange()!
705
706 2007-11-16  Mark Rowe  <mrowe@apple.com>
707
708         Reviewed by Tim Hatcher.
709
710         Build WebCore as a sub-framework of WebKit in all configurations.
711
712         * Configurations/WebKit.xcconfig:
713
714 2007-11-16  John Sullivan  <sullivan@apple.com>
715
716         Reviewed by Brady
717
718         * WebKit.exp:
719         Exported some new database-related symbols
720
721 2007-11-16  Brady Eidson  <beidson@apple.com>
722
723         Reviewed by John
724
725         Database management API tweaks
726
727         Fleshed out "WebSecurityOrigin" to be the API object representing an origin.  This relieves some
728         burden off WebDatabaseManager and allows usage/quota operations on the SecurityOrigin object itself
729
730         Also added a new subdirectory for Storage related API - Why are we afraid to add new directories to
731         the WebKit tree?
732
733         * Misc/WebSecurityOrigin.mm: Removed.
734         * Misc/WebSecurityOriginInternal.h: Removed.
735         * Misc/WebSecurityOriginPrivate.h: Removed.
736
737         * Storage/WebDatabaseManager.mm: Work in terms of WebSecurityOrigin
738         * Storage/WebDatabaseManagerPrivate.h:
739
740         * Storage/WebSecurityOrigin.mm: Added.
741         (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]):
742         (-[WebSecurityOriginPrivate initWithWebCoreSecurityOrigin:]):
743         (-[WebSecurityOriginPrivate finalize]):
744         (-[WebSecurityOriginPrivate dealloc]):
745         (-[WebSecurityOrigin initWithProtocol:domain:]):
746         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
747         (-[WebSecurityOrigin protocol]):
748         (-[WebSecurityOrigin domain]):
749         (-[WebSecurityOrigin port]):
750         (-[WebSecurityOrigin usage]): 
751         (-[WebSecurityOrigin quota]):
752         (-[WebSecurityOrigin setQuota:]): Clients will set quotas on the WebSecurityOrigin object itself
753         (-[WebSecurityOrigin dealloc]):
754         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
755         * Storage/WebSecurityOriginInternal.h: Added.
756         * Storage/WebSecurityOriginPrivate.h: Added.
757
758 2007-11-15  Brady Eidson  <beidson@apple.com>
759
760         Reviewed by John
761
762         Stubbing out everything required for a WebKit API for databases
763
764         These interfaces seem to provide everything we need for UI and management at the browser level
765
766         * Misc/WebDatabaseManager.h: Removed.
767         * Misc/WebDatabaseManager.mm: Removed.
768         * Misc/WebDatabaseManagerPrivate.h: Removed.
769
770         * Misc/WebSecurityOrigin.mm: Added. Object that acts as a container for the "SecurityOrigin tuple"
771           (protocol, domain, and port)
772         (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]):
773         (-[WebSecurityOriginPrivate dealloc]):
774         (-[WebSecurityOrigin initWithProtocol:domain:]):
775         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
776         (-[WebSecurityOrigin protocol]):
777         (-[WebSecurityOrigin domain]):
778         (-[WebSecurityOrigin port]):
779         (-[WebSecurityOrigin dealloc]):
780         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:WebCore::]):
781         * Misc/WebSecurityOriginInternal.h: Added.
782         * Misc/WebSecurityOriginPrivate.h: Added.
783
784         * Storage/WebDatabaseManager.mm: Added.
785         (+[WebDatabaseManager sharedWebDatabaseManager]):
786         (-[WebDatabaseManager origins]):  Get a list of all origins currently tracked
787         (-[WebDatabaseManager detailsForOrigin:]): Get the current usage and current quota for the given origin
788         (-[WebDatabaseManager databasesWithOrigin:]): Get all databases for a certain origin
789         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Get all details about a specific database
790         (-[WebDatabaseManager setQuota:forOrigin:]): Change origin-wide quota
791         (-[WebDatabaseManager deleteAllDatabases]):
792         (-[WebDatabaseManager deleteAllDatabasesWithOrigin:]):
793         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
794         * Storage/WebDatabaseManagerPrivate.h: Added.
795         * Storage/WebDatabaseManagerInternal.h: Added.
796         (WebKitInitializeDatabasesIfNecessary): One-time initialization of database-related things
797
798         * Storage/WebDatabaseTrackerClient.h: Added. Stubbed out client for notifications
799         * Storage/WebDatabaseTrackerClient.mm: Added.
800         (WebDatabaseTrackerClient::sharedWebDatabaseTrackerClient):
801         (WebDatabaseTrackerClient::WebDatabaseTrackerClient):
802         (WebDatabaseTrackerClient::~WebDatabaseTrackerClient):
803         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
804         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
805
806         * WebView/WebView.mm:
807         (-[WebView _commonInitializationWithFrameName:groupName:]): Do one-time initialization of
808           Database-related things here
809
810 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
811
812         Reviewed by Anders Carlsson.
813         
814         Renamed Shared to RefCounted.
815
816         * ForwardingHeaders/wtf/RefCounted.h: Copied from WebKit/mac/ForwardingHeaders/wtf/Shared.h.
817         * ForwardingHeaders/wtf/Shared.h: Removed.
818         * WebCoreSupport/WebContextMenuClient.h:
819
820 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
821
822         Reviewed by Sam Weinig.
823
824         Moved Shared.h into wtf so it could be used in more places.
825
826         * ChangeLog:
827         * WebCoreSupport/WebContextMenuClient.h:
828
829 2007-11-13  John Sullivan  <sullivan@apple.com>
830
831         Reviewed by Darin.
832
833         removed recently-added PreferredType concept; we found a better way to do what
834         ths was accomplishing
835
836         * WebCoreSupport/WebChromeClient.mm:
837         (WebChromeClient::createWindow):
838         removed use of PreferredType
839
840 2007-11-13  John Sullivan  <sullivan@apple.com>
841
842         Reviewed by Dan Bernstein.
843         
844         - fixed <rdar://problem/5567954> REGRESSION (Safari 2-3): Autofill no longer automatically fills in 
845         form fields other than the one you're typing into
846
847         * WebCoreSupport/WebEditorClient.mm:
848         (selectorForKeyEvent):
849         correct the key identifier strings for Tab and Esc; these were updated in WebCore as part of r21445
850         but didn't get updated here.
851
852 2007-11-12  Josh Aas  <joshmoz@gmail.com>
853
854         Reviewed by Darin.
855
856         - http://bugs.webkit.org/show_bug.cgi?id=15946
857           add NPPValue NPPVpluginDrawingModel (Mozilla bug 403418 compat)
858
859         * Plugins/WebBaseNetscapePluginView.mm:
860         (-[WebBaseNetscapePluginView setVariable:value:]):
861
862 2007-11-12  Alexey Proskuryakov  <ap@webkit.org>
863
864         Reviewed by Darin.
865
866         http://bugs.webkit.org/show_bug.cgi?id=15954
867         Move DOM Selection operations out of SelectionController
868
869         * WebView/WebHTMLView.mm:
870         (-[WebHTMLView _expandSelectionToGranularity:]):
871         (-[WebHTMLView selectToMark:]):
872         (-[WebHTMLView swapWithMark:]):
873         * WebView/WebView.mm:
874         (-[WebView setSelectedDOMRange:affinity:]):
875         Adapted for SelectionController::setSelectedRange() now returning a bool.
876
877 2007-11-12  Oliver Hunt  <oliver@apple.com>
878
879         Reviewed by Darin and Geoff.
880
881         <rdar://problem/5522011> The content of the password field of 
882         Safari is displayed by reconversion.
883
884         Some input methods (notably Kotoeri) can incorrectly provide 
885         access to the raw text of a password field.  To work around 
886         this we forcefully override the inputContext whenever a password
887         field is active.
888
889         * WebView/WebHTMLView.mm:
890         (-[WebHTMLView inputContext]):
891
892 2007-11-12  John Sullivan  <sullivan@apple.com>
893
894         Reviewed by Tim Hatcher
895         
896         - speculative fix for <rdar://problem/5509989> CrashTracer: [USER] 1 crash in Safari at com.apple.WebKit: 
897         -[WebPDFView(FileInternal) _updatePreferencesSoon] + 56
898         
899         The crash is probably due to messaging a dealloc'ed dataSource ivar. The dataSource ivar isn't retained
900         by this class, but should be. (It is retained by WebHTMLView, e.g.).
901
902         * WebView/WebPDFView.mm:
903         (-[WebPDFView dealloc]):
904         release dataSource ivar
905         (-[WebPDFView setDataSource:]):
906         retain dataSource ivar
907
908 2007-11-09  Tristan O'Tierney  <tristan@apple.com>
909
910         Reviewed by Timothy Hatcher.
911         
912         This patch is for the WebKit side of <rdar://problem/5591115>.
913         We need a way to tell context menu navigations, such as "Open in New Window"
914         to override any sort of browser preference for tab based navigation.
915
916         * WebCoreSupport/WebChromeClient.mm:
917         (WebChromeClient::createWindow):
918         Pass up the new preferredType parameter as a string.
919         
920 2007-11-09  Timothy Hatcher  <timothy@apple.com>
921
922         Reviewed by John.
923
924         <rdar://problem/5103720> REGRESSION: [WebView stringByEvaluatingJavaScriptFromString:] fails if "return" is used
925
926         Extend the linked on or after check to every application when a script passed to
927         stringByEvaluatingJavaScriptFromString: has a return statement. Before the check
928         was limited to VitalSource Bookshelf, but other developers are running into this.
929
930         * Misc/WebKitVersionChecks.h: Add the WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK define.
931         * WebView/WebDocumentLoaderMac.mm:
932         (needsDataLoadWorkaround): Use WEBKIT_FIRST_VERSION_WITHOUT_ADOBE_INSTALLER_QUIRK sicne the
933           WebKitLinkedOnOrAfter check here was about the Adobe installer, not VitalSource.
934         * WebView/WebView.mm:
935         (-[WebView stringByEvaluatingJavaScriptFromString:]): Remove the bundle ID check and use
936           WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK for the WebKitLinkedOnOrAfter call.
937
938 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
939
940         Build Fix.
941
942         * WebCoreSupport/WebFrameLoaderClient.h:
943         * WebCoreSupport/WebFrameLoaderClient.mm:
944         (WebFrameLoaderClient::windowObjectCleared):
945
946 2007-11-07  Darin Adler  <darin@apple.com>
947
948         Reviewed by Steve.
949
950         - removed some unused WebCore bridge methods
951
952         * WebCoreSupport/WebFrameBridge.mm: Removed issueTransposeCommand and overrideMediaType.
953
954         * WebCoreSupport/WebFrameLoaderClient.mm:
955         (WebFrameLoaderClient::overrideMediaType): Changed to call WebView directly instead of
956         using the bridge object.
957
958 2007-11-06  Mark Rowe  <mrowe@apple.com>
959
960         Rubber-stamped by Dave Kilzer.
961
962         Move Mac files from WebKit into WebKit/mac.
963
964         * Carbon: Copied from WebKit/Carbon.
965         * ChangeLog: Copied from WebKit/ChangeLog.
966         * ChangeLog-2002-12-03: Copied from WebKit/ChangeLog-2002-12-03.
967         * ChangeLog-2006-02-09: Copied from WebKit/ChangeLog-2006-02-09.
968         * ChangeLog-2007-10-14: Copied from WebKit/ChangeLog-2007-10-14.
969         * Configurations: Copied from WebKit/Configurations.
970         * DOM: Copied from WebKit/DOM.
971         * DefaultDelegates: Copied from WebKit/DefaultDelegates.
972         * ForwardingHeaders: Copied from WebKit/ForwardingHeaders.
973         * History: Copied from WebKit/History.
974         * Info.plist: Copied from WebKit/Info.plist.
975         * MigrateHeaders.make: Copied from WebKit/MigrateHeaders.make.
976         * Misc: Copied from WebKit/Misc.
977         * Panels: Copied from WebKit/Panels.
978         * Plugins: Copied from WebKit/Plugins.
979         * PublicHeaderChangesFromTiger.txt: Copied from WebKit/PublicHeaderChangesFromTiger.txt.
980         * Resources: Copied from WebKit/Resources.
981         * WebCoreSupport: Copied from WebKit/WebCoreSupport.
982         * WebInspector: Copied from WebKit/WebInspector.
983         * WebKit.exp: Copied from WebKit/WebKit.exp.
984         * WebKit.order: Copied from WebKit/WebKit.order.
985         * WebKitPrefix.h: Copied from WebKit/WebKitPrefix.h.
986         * WebView: Copied from WebKit/WebView.
987         * icu: Copied from WebKit/icu.
988
989 2007-11-06  Alexey Proskuryakov  <ap@webkit.org>
990
991         Reviewed by Darin.
992
993         http://bugs.webkit.org/show_bug.cgi?id=15847
994         Some editing cleanup
995
996         No change in functionality.
997
998         * WebView/WebHTMLView.mm:
999         (-[WebHTMLView deleteToEndOfLine:]):
1000         (-[WebHTMLView deleteToEndOfParagraph:]):
1001         WebCore had a duplicate of the same logic already. We are passing a boundary value to
1002         a function that expects granularity, this may need to be straightened out in the future.
1003
1004 2007-11-05  John Sullivan  <sullivan@apple.com>
1005
1006         * WebView/WebView.mm:
1007         (-[WebView _searchWithSpotlightFromMenu:]):
1008
1009         Teeny style tweak to test svn access on other machine
1010
1011 2007-11-05  John Sullivan  <sullivan@apple.com>
1012
1013         * WebView/WebView.mm:
1014         (-[WebView computedStyleForElement:pseudoElement:]):
1015         
1016         Teeny style tweak to test svn access
1017
1018 2007-11-02  Tristan O'Tierney  <tristan@apple.com>
1019
1020         Reviewed by Darin Adler.
1021
1022         * DefaultDelegates/WebDefaultUIDelegate.m:
1023         (-[WebDefaultUIDelegate webView:createWebViewWithRequest:windowFeatures:]):
1024         Forward the UI delegate to call webView:createWebViewWithRequest: if
1025         this method doesn't exist.
1026         
1027         * WebCoreSupport/WebFrameLoaderClient.mm:
1028         (WebFrameLoaderClient::dispatchCreatePage):
1029         * Plugins/WebBaseNetscapePluginView.mm:
1030         (-[WebBaseNetscapePluginView loadPluginRequest:]):
1031         * WebView/WebView.mm:
1032         (-[WebView _openNewWindowWithRequest:]):
1033         Revised to use new webView:createWebViewWithRequest:windowFeatures: callback.
1034         
1035         * WebCoreSupport/WebChromeClient.h:
1036         * WebCoreSupport/WebChromeClient.mm:
1037         (WebChromeClient::createWindow):
1038         Added a new createWindow that accepts 3 parameters, so we can pass up windowFeatures to the chrome.
1039         Removed createModalDialog to use new createWindow function.
1040         
1041         * WebView/WebUIDelegatePrivate.h:
1042         Added new webView:createWebViewWithRequest:windowFeatures: method.
1043
1044 2007-11-05  Geoffrey Garen  <ggaren@apple.com>
1045
1046         Reviewed by Darin Adler.
1047         
1048         http://bugs.webkit.org/show_bug.cgi?id=15835
1049
1050         Small adaptations to new KJS::List class.
1051
1052         * ForwardingHeaders/kjs/value.h: Added.
1053
1054 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
1055
1056         Sort files(...); sections of Xcode project files.
1057
1058         Rubber-stamped by Darin.
1059
1060         * WebKit.xcodeproj/project.pbxproj:
1061
1062 2007-11-02  Antti Koivisto  <antti@apple.com>
1063
1064         Reviewed by Darin.
1065         
1066         Add method to enable video composition.
1067
1068         * WebCoreSupport/WebSystemInterface.m:
1069         (InitWebCoreSystemInterface):
1070
1071 2007-11-02  Darin Adler  <darin@apple.com>
1072
1073         Reviewed by Mitz.
1074
1075         - fix problem I ran into while doing some testing on Mac for
1076           <rdar://problem/5530185> WebKit does not show <object>
1077           fallback content when both URL and MIME type is omitted
1078
1079         I don't know how to reproduce this failure in DumpRenderTree, so there is no
1080         regression test.
1081
1082         * Plugins/WebNullPluginView.h: Removed some unneeded declarations, including
1083         the didSendError local variable. Instead we just set the error to nil once
1084         we've sent it.
1085         * Plugins/WebNullPluginView.mm:
1086         (-[WebNullPluginView initWithFrame:error:DOMElement:]): Refactored so that
1087         the null plug-in image code is separate from the rest of the function and
1088         so that the whole thing is not inside an if statement. Also don't hold a
1089         reference to the DOM element if there is no error to report.
1090         (-[WebNullPluginView reportFailure]): Added. Does the actual delegate
1091         callback. Happens back at the top level of the run loop so it doesn't
1092         fire deep inside layout. Also wrote this so that it is guaranteed not to
1093         reenter and so that it can handle the case where the delegate destroys
1094         the world (including this object). NOTE: This is not a real, general
1095         solution to the problem of plug-ins that do work inside layout. We will need
1096         a more general fix that works for other plug-ins, and we'll track that with
1097         a separate bug report.
1098         (-[WebNullPluginView viewDidMoveToWindow]): Removed most of the code;
1099         changed so it just does a performSelector:afterDelay:0.
1100
1101 2007-11-02  Mark Rowe  <mrowe@apple.com>
1102
1103         Reviewed by Darin Adler.
1104
1105         Fix http://bugs.webkit.org/show_bug.cgi?id=15780
1106         Bug 15780: WebFrameLoaderClient: WebActionElementKey wrong if view is scrolled
1107
1108         * WebCoreSupport/WebFrameLoaderClient.mm:
1109         (WebFrameLoaderClient::actionDictionary): Retrieve the mouse event coordinates
1110         in the page coordinate system rather than the client area coordinate system.
1111
1112 2007-11-01  Dan Bernstein  <mitz@apple.com>
1113
1114         Reviewed by Oliver Hunt.
1115
1116         - fix an assertion failure when Command-Tabbing out of Safari
1117
1118         * WebView/WebHTMLView.mm:
1119         (-[WebHTMLView flagsChanged:]): Avoid passing key code 0 down to
1120         webCore.
1121
1122 2007-11-01  Justin Garcia  <justin.garcia@apple.com>
1123
1124         Reviewed by Oliver Hunt.
1125         
1126         <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
1127         
1128         No need to match style when pasting plain text, since the fragment we build for plain text
1129         won't have any style information on it.
1130
1131         * WebView/WebHTMLView.mm:
1132         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): There's no
1133         longer a need to know whether this function chosePlaintext.
1134         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
1135         (-[WebHTMLView _documentFragmentFromPasteboard:]):
1136
1137 2007-10-31  Timothy Hatcher  <timothy@apple.com>
1138
1139         Reviewed by John Sullivan.
1140
1141         Move the developer extras preference to WebPreferences.
1142
1143         * WebView/WebPreferenceKeysPrivate.h: Add WebKitDeveloperExtrasEnabledPreferenceKey
1144         * WebView/WebPreferences.m:
1145         (+[WebPreferences initialize]): Initialize WebKitDeveloperExtrasEnabledPreferenceKey to NO.
1146         (-[WebPreferences developerExtrasEnabled]): Check DisableWebKitDeveloperExtras, WebKitDeveloperExtras
1147           and IncludeDebugMenu in addition to WebKitDeveloperExtrasEnabledPreferenceKey.
1148         (-[WebPreferences setDeveloperExtrasEnabled:]): Set WebKitDeveloperExtrasEnabledPreferenceKey.
1149         * WebView/WebPreferencesPrivate.h: Add developerExtrasEnabled and setDeveloperExtrasEnabled:.
1150         * WebView/WebView.mm:
1151         (+[WebView _developerExtrasEnabled]): Removed.
1152         (-[WebView _preferencesChangedNotification:]): Check the WebPreferences object for developerExtrasEnabled.
1153         * WebView/WebViewPrivate.h: Removed _developerExtrasEnabled.
1154
1155 2007-10-30  David D. Kilzer  <ddkilzer@webkit.org>
1156
1157         Generated files missing from WebCore's Xcode project file
1158         <http://bugs.webkit.org/show_bug.cgi?id=15406>
1159
1160         Reviewed by Darin.
1161
1162         Added the following private header files to MigrateHeaders.make:
1163
1164         - DOMCSSStyleSheetPrivate.h
1165         - DOMEventPrivate.h
1166         - DOMHTMLCollectionPrivate.h
1167         - DOMHTMLEmbedElementPrivate.h
1168         - DOMHTMLIFrameElementPrivate.h
1169         - DOMHTMLObjectElementPrivate.h
1170         - DOMHTMLSelectElementPrivate.h
1171
1172         * MigrateHeaders.make:
1173
1174 2007-10-29  Antti Koivisto  <antti@apple.com>
1175
1176         Reviewed by Maciej.
1177         
1178         Some SPIs for media support.
1179
1180         * WebCoreSupport/WebSystemInterface.m:
1181         (InitWebCoreSystemInterface):
1182
1183 2007-10-29  Timothy Hatcher  <timothy@apple.com>
1184
1185         Reviewed by John Sullivan.
1186
1187         Various semi-related changes:
1188         - A WebView can now be asked for it's WebInspector. There is one
1189           WebInspector per WebView. 
1190         - Refactor the WebInspector class and move obsolete methods to
1191           a special category.
1192         - Add new WebInspector methods to show, hide and show the
1193           console/timeline panels.
1194         - Add an isDisabled method to WebCache.
1195         - Allow WebLocalizableStrings.h to be used in C files.
1196
1197         * Misc/WebCache.h: Add isDisabled.
1198         * Misc/WebCache.mm:
1199         (+[WebCache isDisabled]): New method.
1200
1201         * Misc/WebLocalizableStrings.h: Changes to allow use in plain C files.
1202
1203         * WebCoreSupport/WebInspectorClient.mm:
1204         (-[WebInspectorWindowController showWindow:]): Call super if already visible
1205           so the window will be ordered front.
1206         (-[WebInspectorWindowController showWebInspector:]): Method used by menu items,
1207           so they are enabled and work when the Inspector window is key.
1208         (-[WebInspectorWindowController showErrorConsole:]): Ditto.
1209         (-[WebInspectorWindowController showNetworkTimeline:]): Ditto.
1210
1211         * WebInspector/WebInspector.h: Add and remove methods.
1212         * WebInspector/WebInspector.mm:
1213         (-[WebInspector webViewClosed]): Called when the WebView is closed/dealloced.
1214           Clears the _webView pointer.
1215         (-[WebInspector show:]): Calls thru to the Page's InspectorController.
1216         (-[WebInspector showConsole:]): Ditto.
1217         (-[WebInspector showTimeline:]): Ditto.
1218         (-[WebInspector close:]): Ditto.
1219         (-[WebInspector attach:]): Ditto.
1220         (-[WebInspector detach:]): Ditto.
1221         (+[WebInspector sharedWebInspector]): Moved to the obsolete category.
1222         (+[WebInspector webInspector]): Ditto.
1223         (-[WebInspector setWebFrame:]): Ditto.
1224         (-[WebInspector window]): Ditto.
1225         (-[WebInspector showWindow:]): Ditto.
1226
1227         * WebView/WebView.mm:
1228         (-[WebViewPrivate dealloc]): Release the WebInspector.
1229         (-[WebView _close]): Call webViewClosed on the WebInspector.
1230         (-[WebView inspector]): Create a WebInspector if needed and return it.
1231         * WebView/WebViewPrivate.h: Add the inspector method.
1232
1233 2007-10-30  Adele Peterson  <adele@apple.com>
1234
1235         Reviewed by Darin.
1236
1237         WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
1238         <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
1239
1240         * WebView/WebHTMLView.mm:
1241         (-[WebHTMLView flagsChanged:]): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
1242         (+[WebHTMLView _postFlagsChangedEvent:]): Added a comment with a Radar number for why this isn't just in flagsChanged.
1243         (-[WebHTMLView scrollWheel:]): Instead of calling the next responder explicitly, we can just call super, which will take care of this.
1244
1245 2007-10-27  Mark Ambachtsheer  <mark.a@apple.com>
1246
1247         Reviewed by Darin.
1248
1249         Fix for bug 15710, When QD plugins draw to an offscreen bitmap and the plugin is not at 
1250         (0, 0) the clipping rectangle is not correct.
1251         Added the origin to the window clip rectangle coordinates to account for plugins that
1252         don't originate at (0,0); affects code for offscreen GWorlds only.
1253
1254         * Plugins/WebBaseNetscapePluginView.mm:
1255         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1256
1257 2007-10-26  Adele Peterson  <adele@apple.com>
1258
1259         Reviewed by Oliver.
1260
1261         Adding WebKitSystemInterface support for the caps lock indicator
1262
1263         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
1264
1265 2007-10-25  David Hyatt  <hyatt@apple.com>
1266
1267         Fix for bug 15672, backgrounds don't tile properly inside transforms.  This patch fixes tiling
1268         of backgrounds inside CSS transforms and also of HTML content with background images inside SVG
1269         transforms.
1270
1271         Reviewed by aroben and mmitz
1272
1273         * WebCoreSupport/WebSystemInterface.m:
1274         (InitWebCoreSystemInterface):
1275         * WebKit.xcodeproj/project.pbxproj:
1276
1277 2007-10-25  John Sullivan  <sullivan@apple.com>
1278
1279         Reviewed by Tim Hatcher
1280         
1281         Removed the support for toggling whether WebKit uses the 10.5 PDFKit improvements. Now it
1282         always does, when available.
1283
1284         * WebView/WebPreferencesPrivate.h:
1285         removed _usePDFPreviewView and _setUsePDFPreviewView:. Note that these were guarded with
1286         a comment that says that they can be removed when no longer needed. That time is now.
1287
1288         * WebView/WebPreferences.m:
1289         (+[WebPreferences initialize]):
1290         removed WebKitUsePDFPreviewViewPreferenceKey
1291         (-[WebPreferences _usePDFPreviewView]):
1292         removed
1293         (-[WebPreferences _setUsePDFPreviewView:]):
1294         removed
1295
1296         * WebView/WebPDFView.mm:
1297         (-[WebPDFView initWithFrame:]):
1298         don't check _usePDFPreviewView
1299         
1300         * WebView/WebPreferenceKeysPrivate.h:
1301         removed WebKitUsePDFPreviewViewPreferenceKey
1302         
1303 2007-10-24  Timothy Hatcher  <timothy@apple.com>
1304
1305         Reviewed by Mark Rowe.
1306
1307         <rdar://problem/5069711> OpenSource version of libWebKitSystemInterface.a is Tiger only, causes issues if used on Leopard
1308
1309         Use the WebKitSystemInterface that matches the system version.
1310
1311         * Configurations/DebugRelease.xcconfig:
1312         * WebKit.xcodeproj/project.pbxproj:
1313
1314 2007-10-24  Brady Eidson  <beidson@apple.com>
1315
1316         Reviewed by Anders
1317
1318         <rdar://problem/5554130> DatabaseTracker.o has a global initializer
1319
1320         * Misc/WebDatabaseManager.mm:
1321         (WebKitSetWebDatabasesPathIfNecessary): Call the member function instead of a static one
1322
1323 2007-10-23  Mark Rowe  <mrowe@apple.com>
1324
1325         Build fix for Eric's build fix in r26916.
1326
1327         * MigrateHeaders.make:
1328
1329 2007-10-22  Eric Seidel  <eric@webkit.org>
1330
1331         Reviewed by Maciej.
1332
1333         * MigrateHeaders.make: copy over font-face related DOM headers
1334
1335 2007-10-22  Andrew Wellington  <proton@wiretapped.net>
1336
1337         Reviewed by Mark Rowe.
1338         
1339         Fix for local database support after r26879
1340         Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set
1341
1342         * Configurations/WebKit.xcconfig:
1343
1344 2007-10-19  Brady Eidson <beidson@apple.com>
1345
1346         Reviewed by Tim Hatcher
1347
1348         Added support for Chrome prompts required by the Storage API
1349         Added support API for future managing of databases from the WebKit client
1350         Added preference and initialization for the databases path
1351
1352         * Misc/WebDatabaseManager.h: Added.  WebDatabaseManager is how a WebKit application can list and
1353           remove the current available databases
1354         * Misc/WebDatabaseManager.mm: Added.
1355         (+[WebDatabaseManager origins]):
1356         (+[WebDatabaseManager databasesWithOrigin:]):
1357         (+[WebDatabaseManager deleteAllDatabases]):
1358         (+[WebDatabaseManager deleteAllDatabasesWithOrigin:]):
1359         (+[WebDatabaseManager deleteDatabaseWithOrigin:named:]):
1360         (WebKitSetWebDatabasesPathIfNecessary): Setup the database path
1361         * Misc/WebDatabaseManagerPrivate.h: Added.
1362
1363         * WebCoreSupport/WebChromeClient.h: Support for calling the delegate to run the prompt for 
1364           an origin exceeding its size limit
1365         * WebCoreSupport/WebChromeClient.mm:
1366         (WebChromeClient::runDatabaseSizeLimitPrompt):
1367         * WebKit.xcodeproj/project.pbxproj:
1368         * WebView/WebUIDelegate.h:
1369
1370         * WebView/WebView.mm:
1371         (-[WebView _commonInitializationWithFrameName:groupName:]): Setup the database path
1372         * WebView/WebViewInternal.h:
1373
1374 2007-10-19  John Sullivan  <sullivan@apple.com>
1375
1376         Reviewed by Tim Hatcher
1377         
1378         - fixed <rdar://problem/5540325> REGRESSION (2.0.4-3): History menu looks odd after clearing history
1379
1380         * History/WebHistory.mm:
1381         (-[WebHistoryPrivate removeAllItems]):
1382         This was fallout from r25275. We need to clear the orderedLastVisitedDays cache here, in addition
1383         to the other places where it's cleared.
1384
1385 2007-10-18  Dan Bernstein  <mitz@apple.com>
1386
1387         Tiger build fix.
1388
1389         * WebView/WebDataSource.mm:
1390         (-[WebDataSource _MIMETypeOfResponse:]):
1391
1392 2007-10-18  Dan Bernstein  <mitz@apple.com>
1393
1394         Reviewed by Adam Roben.
1395
1396         - fix <rdar://problem/5313523>
1397         REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
1398
1399         * WebCoreSupport/WebFrameLoaderClient.mm:
1400         (WebFrameLoaderClient::makeDocumentView): Changed to use _responseMIMEType.
1401         * WebView/WebDataSource.mm:
1402         (-[WebDataSource _MIMETypeOfResponse:]): Added. Works around
1403         <rdar://problem/5321972> by testing for the case of an NSHTTPURLResponse
1404         with a MIMEType of application/octet-stream and a Content-Type header
1405         starting with text/plain and returning text/plain as the MIME type in
1406         that case.
1407         (-[WebDataSource _responseMIMEType]): Added. Used to get the correct
1408         response MIME type.
1409         (-[WebDataSource _isDocumentHTML]): Changed to use _responseMIMEType.
1410         (-[WebDataSource _makeRepresentation]): Ditto.
1411         (-[WebDataSource mainResource]): Ditto.
1412         (-[WebDataSource subresources]): Changed to use _MIMETypeOfResponse and
1413         pass the MIME type explicitly.
1414         (-[WebDataSource subresourceForURL:]): Ditto.
1415         * WebView/WebDataSourcePrivate.h:
1416         * WebView/WebFrameView.mm:
1417         (-[WebFrameView _makeDocumentViewForDataSource:]): Changed to use
1418         _responseMIMEType.
1419         * WebView/WebResource.mm:
1420         (-[WebResource _initWithData:URL:response:MIMEType:]): Changed this
1421         method to take a MIME type instead of extracting it from the response,
1422         so that WebDataSource could pass the correct MIME type.
1423         * WebView/WebResourcePrivate.h:
1424
1425 2007-10-17  Darin Adler  <darin@apple.com>
1426
1427         Reviewed by Mark Rowe.
1428
1429         - fix <rdar://problem/5183775> Uninitialized memory in -[WebDynamicScrollBarsView updateScrollers]
1430
1431         * WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
1432         Change code path so it doesn't dispatch a method that returns an NSSize passing a nil object.
1433         It's safe to do that for functions that return integers or pointers, but not structures.
1434
1435 2007-10-16  David Kilzer  <ddkilzer@apple.com>
1436
1437         Reviewed by Timothy.
1438
1439         <rdar://problem/5544354> Wrong delegate method called in
1440         WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad()
1441
1442         * WebCoreSupport/WebFrameLoaderClient.mm:
1443         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Fixed selector name.
1444
1445 2007-10-16  Darin Adler  <darin@apple.com>
1446
1447         Reviewed by Adele.
1448
1449         - moved transpose command implementation into WebCore
1450
1451         * WebView/WebHTMLView.mm: Removed transpose: and replaced it with standard WebCore forwarding.
1452
1453 2007-10-16  Darin Adler  <darin@apple.com>
1454
1455         Reviewed by Maciej and Geoff (and looked over by Eric).
1456
1457         - http://bugs.webkit.org/show_bug.cgi?id=15519
1458           eliminate use of <ctype.h> for processing ASCII
1459
1460         * ForwardingHeaders/wtf/ASCIICType.h: Added.
1461         * ForwardingHeaders/wtf/DisallowCType.h: Added.
1462
1463         * WebKitPrefix.h: Include DisallowCType.h.
1464
1465         * Misc/WebNSURLExtras.mm: (-[NSURL _web_URLWithLowercasedScheme]): Use toASCIILower.
1466         * WebView/WebHTMLView.mm:
1467         (-[WebHTMLView callWebCoreCommand:]): Use toASCIIUpper.
1468         (-[WebTextCompleteController filterKeyDown:]): Add a list of specific character codes,
1469         instead of using ispunct.
1470
1471 2007-10-16  John Sullivan  <sullivan@apple.com>
1472
1473         Reviewed by Adam Roben
1474         
1475         Cleaned up localizable strings
1476
1477         * English.lproj/Localizable.strings:
1478         updated
1479         * StringsNotToBeLocalized.txt:
1480         updated
1481         * WebKit.xcodeproj/project.pbxproj:
1482         StringsNotToBeLocalized.txt recently moved but project file wasn't updated to match; now it is
1483
1484 2007-10-15  Kevin Decker  <kdecker@apple.com>
1485
1486         Reviewed by Darin Adler.
1487         
1488         Fixed: <rdar://problem/5520541> REGRESSION: Broken image when forwarding certain email on Tiger
1489         
1490         * WebCoreSupport/WebFrameBridge.mm: The problem was that we were loading Mail's WebKit plug-in
1491         too soon, which borked some necessary housekeeping on behalf of Mail. The fix is to add a quirk
1492         that treats Tiger Mail's WebKit plug-in like a Netscape plug-in, thus ensuring the plug-in will
1493         load during first layout and not attach time. For this plug-in, loading at first layout is 
1494         expected and is consistent with Safari 2 behavior.
1495
1496 2007-10-15  John Sullivan  <sullivan@apple.com>
1497
1498         Reviewed by Geoff Garen
1499         
1500         Replaced NS_DURING/NS_HANDLER with @try/@catch throughout WebKit
1501
1502         I made the following changes:
1503         - replaced NS_DURING with @try, and added opening brace if there wasn't one
1504         - replaced NS_HANDLER with @catch (NSException *localException), and added braces if there weren't any
1505         - removed NS_ENDHANDLER, and added a closing brace if there wasn't one
1506         - in a couple of places, fixed indentation therein
1507
1508         * Misc/WebIconDatabase.mm:
1509         (objectFromPathForKey):
1510         * WebView/WebHTMLView.mm:
1511         (-[WebHTMLView drawSingleRect:]):
1512         (-[WebHTMLView beginDocument]):
1513         (-[WebHTMLView deleteToMark:]):
1514         * WebView/WebView.mm:
1515         (-[WebView initWithCoder:]):
1516
1517 == Rolled over to ChangeLog-2007-10-14 ==