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