i Implemented rendering of diacriticals.
[WebKit-https.git] / WebKit / ChangeLog
1 2002-11-01  Richard Williamson   <rjw@apple.com>
2
3         Implemented rendering of diacriticals.
4         
5         * Misc.subproj/WebUnicode.h:
6         * Misc.subproj/WebUnicode.m:
7         (_unicodeDigitValue):
8         (_unicodeCategory):
9         (_unicodeDirection):
10         (_unicodeJoining):
11         (_unicodeDecompositionTag):
12         (_unicodeMirrored):
13         (_unicodeCombiningClass):
14         (_unicodeLower):
15         (_unicodeUpper):
16         * WebCoreSupport.subproj/WebTextRenderer.m:
17         (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
18         (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
19         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
20
21 2002-11-01  Darin Adler  <darin@apple.com>
22
23         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
24
25 2002-11-01  Chris Blumenberg  <cblu@apple.com>
26
27         Check that the plug-in is loaded before calling it.
28
29         * Plugins.subproj/WebBaseNetscapePluginStream.h:
30         * Plugins.subproj/WebBaseNetscapePluginStream.m:
31         (-[WebBaseNetscapePluginStream dealloc]):
32         (-[WebBaseNetscapePluginStream setPluginPointer:]):
33         (-[WebBaseNetscapePluginStream setResponse:]):
34         (-[WebBaseNetscapePluginStream receivedData:]):
35         (-[WebBaseNetscapePluginStream destroyStreamWithReason:]):
36         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
37         * Plugins.subproj/WebBasePluginPackage.h:
38         * Plugins.subproj/WebBasePluginPackage.m:
39         (-[WebBasePluginPackage isLoaded]):
40         * Plugins.subproj/WebNetscapePluginDocumentView.m:
41         (-[WebNetscapePluginDocumentView setDataSource:]):
42         * Plugins.subproj/WebNetscapePluginPackage.m:
43         (-[WebNetscapePluginPackage isLoaded]):
44         * Plugins.subproj/WebNetscapePluginRepresentation.m:
45         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
46
47 2002-11-01  Chris Blumenberg  <cblu@apple.com>
48
49         - Moved plug-in error handling to WebResourceLoadDelegate
50         - Report plug-in load failure, java load failure, and plug-in not found errors.
51         - Added WebPluginError, subclass of WebError.
52         - Attempted fix: 3090675 - Standalone WMP (Window Media Player) content crashes Alexander
53
54         * English.lproj/Localizable.strings:
55         * Misc.subproj/WebKitErrors.h:
56         * Plugins.subproj/WebBaseNetscapePluginView.m:
57         (-[WebBaseNetscapePluginView sendEvent:]): don't send event to null function
58         * Plugins.subproj/WebNetscapePluginDocumentView.m:
59         (-[WebNetscapePluginDocumentView setDataSource:]): report plug-in load failure
60         * Plugins.subproj/WebNullPluginView.h:
61         * Plugins.subproj/WebNullPluginView.m: take a WebPluginError
62         (-[WebNullPluginView dealloc]):
63         (-[WebNullPluginView viewDidMoveToWindow]):
64         * Plugins.subproj/WebPluginError.h: Added.
65         * Plugins.subproj/WebPluginError.m: Added.
66         (-[WebPluginErrorPrivate dealloc]):
67         (-[WebPluginError dealloc]):
68         (-[WebPluginError pluginPageURL]):
69         (-[WebPluginError pluginName]):
70         (-[WebPluginError MIMEType]):
71         * WebCoreSupport.subproj/WebBridge.m:
72         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): report plug-in load failure
73         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): report plug-in load failure
74         * WebKit.pbproj/project.pbxproj:
75         * WebView.subproj/WebController.m:
76         (-[WebResourceLoadDelegate pluginFailedWithError:dataSource:]): added, does nothing
77         * WebView.subproj/WebControllerPolicyDelegate.h:
78         * WebView.subproj/WebResourceLoadDelegate.h:
79         * WebView.subproj/WebView.m:
80         (+[WebView initialize]): added new error strings
81
82 2002-11-01  John Sullivan  <sullivan@apple.com>
83
84         - some weaning of WebBookmark API from WebBookmarkGroup
85
86         * Bookmarks.subproj/WebBookmark.m:
87         (-[WebBookmark dealloc]):
88         set group to nil instead of asserting that it's non-nil
89
90         * Bookmarks.subproj/WebBookmarkGroup.h:
91         removed obsolete ivar _bookmarksByID
92         * Bookmarks.subproj/WebBookmarkGroup.m:
93         (-[WebBookmarkGroup initWithFile:]):
94         removed obsolete ivar _bookmarksByID
95         (-[WebBookmarkGroup dealloc]):
96         removed obsolete ivar _bookmarksByID
97         (-[WebBookmarkGroup removeBookmark:]):
98         removed this unnecessary method; callers need to use
99         [[bookmark parent] removeChild:bookmark] instead
100
101 2002-11-01  Trey Matteson  <trey@apple.com>
102
103         Moved involved code for loading URLs from WebBridge up to WebFrame, with a little
104         consolidation along the way.  I need to get all this stuff in one place in prep
105         for doing back-forward properly with frames.  There should be no change in
106         functionality as a result of these changes.
107
108         * WebCoreSupport.subproj/WebBridge.m:
109         (-[WebBridge loadURL:reload:]):
110         (-[WebBridge postWithURL:data:contentType:]):
111         (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
112         Much of the guts of these is moved to WebFramePrivate.
113         * WebView.subproj/WebDataSourcePrivate.h:
114         * WebView.subproj/WebDataSourcePrivate.m:
115         (-[WebDataSource _setIsClientRedirect:]):
116         (-[WebDataSource _isClientRedirect]):
117         Keep state of whether we're processing a redirect in DataSource.  I had previously
118         to do this with a loadType, but that failed because cliRedir is orthogonal.
119         * WebView.subproj/WebFramePrivate.h:
120         WebFrameLoadTypeClientRedirect is gone.
121         * WebView.subproj/WebFramePrivate.m:
122         (-[WebFramePrivate init]):
123         Initialize loadType explicitly.
124         (-[WebFrame _transitionToCommitted]):
125         Test [dataSource _isClientRedirect] instead of looking at loadType.
126         (-[WebFrame _isLoadComplete]):
127         Nuke WebFrameLoadTypeClientRedirect
128         (-[WebFrame _goToItem:withFrameLoadType:]):
129         Nuke WebFrameLoadTypeClientRedirect.
130         (-[WebFrame _loadRequest:]):
131         Helper method moved from WebBridge.
132         (-[WebFrame _loadURL:loadType:clientRedirect:]):
133         Core impl moved up from WebBridge.
134         (-[WebFrame _postWithURL:data:contentType:]):
135         Core impl moved up from WebBridge.
136
137 2002-11-01  Darin Adler  <darin@apple.com>
138
139         - implemented loop counts
140
141         * WebCoreSupport.subproj/WebImageRenderer.h: Added repetitionsComplete field.
142         * WebCoreSupport.subproj/WebImageRenderer.m:
143         (-[WebImageRenderer repetitionCount]): Get NSImageLoopCount.
144         (-[WebImageRenderer nextFrame:]): Check repetitionCount and stop once we hit it.
145
146 2002-10-31  Darin Adler  <darin@apple.com>
147
148         * WebView.subproj/WebFrame.m: (-[WebFrame setController:]): Add an assert,
149         hoping to catch a reported bug earlier or disprove one theory.
150
151 2002-10-31  Trey Matteson  <trey@apple.com>
152
153         Added API to support 3072505 - SnapBack for user-entered page address
154         Refixed 3041616 - Extra page added in back button history
155         Previous fix was stepped on by a later checkin.  Re-established that fix, then
156         went on to make sure we have the final URL and title in the BF item in the
157         case of a client redirect.  Also handles redirects that happen within frames.
158         Fixed 3078560 - div added to "back" list
159
160         * History.subproj/WebBackForwardList.h:
161         * History.subproj/WebBackForwardList.m:
162         (-[WebBackForwardList containsEntry:]):
163         Added new API for 3072505.
164         * WebCoreSupport.subproj/WebBridge.h:
165         * WebCoreSupport.subproj/WebBridge.m:
166         (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
167         (-[WebBridge reportClientRedirectCancelled]):
168         (-[WebBridge loadURL:reload:]):
169         Added logging.  Renamed flag.  Establish the right loadtype and set BF items
170         from the old dataSource onto the new dataSource in the case of a client redirect.
171         * WebView.subproj/WebDataSourcePrivate.h:
172         * WebView.subproj/WebDataSourcePrivate.m:
173         (-[WebDataSource _setRequest:]):
174         Add logging.
175         (-[WebDataSource _addBackForwardItem:]):
176         (-[WebDataSource _addBackForwardItems:]):
177         (-[WebDataSource _backForwardItems]):
178         New setters/getters to support setting up the new dataSource of a client redirect.
179         * WebView.subproj/WebFramePrivate.h:
180         New loadType WebFrameLoadTypeClientRedirect.
181         * WebView.subproj/WebFramePrivate.m:
182         (-[WebFrame _transitionToCommitted]):
183         Update the URL in the BF list in the client redirect case.
184         (-[WebFrame _isLoadComplete]):
185         NOP case for WebFrameLoadTypeClientRedirect
186         (-[WebFrame _goToItem:withFrameLoadType:]):
187         ASSERT_NOT_REACHED case for WebFrameLoadTypeClientRedirect
188
189 2002-10-31  Richard Williamson  <rjw@apple.com>
190
191         Corrected extern definitions of lookup tables.
192         
193         * Misc.subproj/WebUnicode.h:
194         * Misc.subproj/WebUnicode.m:
195         (_unicodeDirection):
196         * WebCoreSupport.subproj/WebTextRenderer.m:
197         (+[WebTextRenderer initialize]):
198
199 === Alexander-30 ===
200
201 2002-10-30  Richard Williamson  <rjw@apple.com>
202
203         More work on bidi and contextual forms.
204         Table lookup code for unicode characters attributes.
205
206         * Misc.subproj/WebUnicode.h: Added.
207         * Misc.subproj/WebUnicode.m: Added.
208         (_unicodeDigitValue):
209         (_unicodeCategory):
210         (_unicodeDirection):
211         (_unicodeJoining):
212         (_unicodeDecompositionTag):
213         (_unicodeMirrored):
214         (_unicodeMirroredChar):
215         (_unicodeCombiningClass):
216         (_unicodeLower):
217         (_unicodeUpper):
218         (WebKitInitializeUnicode):
219         * Misc.subproj/WebUnicodeTables.m: Added.
220         * WebKit.pbproj/project.pbxproj:
221
222         Additional logging parameter.
223         
224         * Misc.subproj/WebKitLogging.h:
225         * Misc.subproj/WebKitLogging.m:
226
227 2002-10-30  Maciej Stachowiak  <mjs@apple.com>
228
229         Pass WebResourceRequest rather than just NSURL to URL policy
230         delegate method.
231         
232         * WebView.subproj/WebControllerPolicyDelegate.h:
233         * WebView.subproj/WebDefaultPolicyDelegate.h:
234         * WebView.subproj/WebDefaultPolicyDelegate.m:
235         (+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
236         (-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
237         * WebView.subproj/WebFramePrivate.m:
238         (-[WebFrame _shouldShowRequest:]):
239
240 2002-10-30  Darin Adler  <darin@apple.com>
241
242         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
243
244 2002-10-30  Chris Blumenberg  <cblu@apple.com>
245
246         Fixed: 3088122 - Assertion failure/crash closing window with QuickTime streaming in
247
248         * WebView.subproj/WebDataSourcePrivate.m:
249         (-[WebDataSource _setMainDocumentError:]): call receivedError on the representation.
250
251 2002-10-30  Darin Adler  <darin@apple.com>
252
253         - fixed memory leaks in plugin package creation code
254
255         * Plugins.subproj/WebNetscapePluginPackage.m:
256         (-[WebNetscapePluginPackage initWithPath:]): Rearrange this code, and make sure
257         that it does a [self release] if it's going to return nil instead of self.
258         (-[WebNetscapePluginPackage unload]): Set bundle to 0 when we release it.
259         (-[WebNetscapePluginPackage dealloc]): Release the bundle if it's not 0.
260
261         * Plugins.subproj/WebPluginPackage.m:
262         (-[WebPluginPackage initWithPath:]): Rearrange this code, and make sure
263         that it does a [self release] if it's going to return nil instead of self.
264
265 2002-10-30  Darin Adler  <darin@apple.com>
266
267         - fixed 3086564 -- REGRESSION: meta-refresh to the same page doesn't refresh
268
269         The key is to respect the new reload: parameter from the bridge.
270
271         * WebCoreSupport.subproj/WebBridge.m:
272         (-[WebBridge loadURL:reload:]): Don't ever treat a reload as a redirect.
273         Set the cache policy to WebRequestCachePolicyLoadFromOrigin if it's a reload.
274
275         - fixed 3087214 -- REGRESSION: <WebKit/WebKit.h> contains #import of non-existent header
276
277         * Misc.subproj/WebKit.h: Removed import of WebControllerSets.h, which is private.
278
279 2002-10-30  Maciej Stachowiak  <mjs@apple.com>
280
281         Another step towards the policy API change - add request argument
282         to file URL policy and remove isDirectory argument.
283         
284         * WebView.subproj/WebControllerPolicyDelegate.h:
285         * WebView.subproj/WebDefaultPolicyDelegate.m:
286         (-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
287         * WebView.subproj/WebFrame.m:
288         (-[WebFrame setProvisionalDataSource:]):
289         * WebView.subproj/WebFramePrivate.h:
290         * WebView.subproj/WebFramePrivate.m:
291         (-[WebFrame _shouldShowRequest:]):
292         * WebView.subproj/WebMainResourceClient.m:
293         (-[WebMainResourceClient handle:willSendRequest:]):
294
295 2002-10-29  Maciej Stachowiak  <mjs@apple.com>
296
297         First step towards policy API change. Pass request instead of URL
298         to content policy delegate method.
299         
300         * WebView.subproj/WebControllerPolicyDelegate.h:
301         * WebView.subproj/WebDefaultPolicyDelegate.m:
302         * WebView.subproj/WebMainResourceClient.m:
303         (-[WebMainResourceClient handle:didReceiveResponse:]):
304
305 2002-10-29  Maciej Stachowiak  <mjs@apple.com>
306
307         - fixed 3087548 - REGRESSION: two windows open for netflix confirmation
308         
309         * WebView.subproj/WebControllerPrivate.h:
310         * WebView.subproj/WebControllerPrivate.m:
311         (-[WebController _findFrameInThisWindowNamed:]): Added this function back,
312         and added check for top-level frame name.
313         (-[WebController _findFrameNamed:]): Use
314         _findFrameInThisWindowNamed: to make sure top-level frame names
315         get checked.
316
317 2002-10-29  Chris Blumenberg  <cblu@apple.com>
318
319         Created Downloads.subproj to hold the to-be-implemented download decoders.
320
321         * Downloads.subproj/WebDownloadDecoder.h: Added.
322         * Downloads.subproj/WebDownloadHandler.h: Added.
323         * Downloads.subproj/WebDownloadHandler.m: Added.
324         (-[WebDownloadHandler initWithDataSource:]):
325         (-[WebDownloadHandler dealloc]):
326         (-[WebDownloadHandler errorWithCode:]):
327         (-[WebDownloadHandler receivedResponse:]):
328         (-[WebDownloadHandler receivedData:]):
329         (-[WebDownloadHandler finishedLoading]):
330         (-[WebDownloadHandler cancel]):
331         * Misc.subproj/WebDownloadHandler.h: Removed.
332         * Misc.subproj/WebDownloadHandler.m: Removed.
333         * WebKit.pbproj/project.pbxproj:
334
335 2002-10-28  Darin Adler  <darin@apple.com>
336
337         - fixed crash I just introduced
338
339         * Plugins.subproj/WebPluginDatabase.m: (-[WebPluginDatabase init]):
340         Remove the release call here. When I added the autorelease, I didn't realize that
341         the caller was doing a release.
342
343 2002-10-28  Trey Matteson  <trey@apple.com>
344
345         Fixed 3041616 - Extra page added in back button history
346
347         Client-side redirects would always put an extra item in the backforward list.
348         According to Darin this is a regression all the way back from functionality moving
349         from WebBrowser to WebKit.      
350
351         * WebCoreSupport.subproj/WebBridge.h:
352         Added state to know if we're doing an "internal" type of load
353         * WebCoreSupport.subproj/WebBridge.m:
354         (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
355         Set internalLoad bit if delay==0
356         (-[WebBridge reportClientRedirectCancelled]):
357         Clear internalLoad
358         (-[WebBridge loadURL:]):
359         Set frame's loadType if doing an internal load (similar to what we do when loading
360         child frames)
361
362 2002-10-28  Darin Adler  <darin@apple.com>
363
364         - fixed storage leak of WebNetscapePluginPackage objects
365
366         * Plugins.subproj/WebBasePluginPackage.m:
367         (+[WebBasePluginPackage pluginWithPath:]): Add missing autorelease.
368
369         * Plugins.subproj/WebBasePluginPackage.h:
370         * Plugins.subproj/WebPluginController.h:
371         * Plugins.subproj/WebPluginController.m:
372         * Plugins.subproj/WebPluginPackage.h:
373         * Plugins.subproj/WebPluginPackage.m:
374         Not __MyCompanyName__, but rather Apple Computer.
375
376 2002-10-28  Darin Adler  <darin@apple.com>
377
378         - fixed bug that caused us to leak all WebResourceHandles used for subresources
379
380         * WebCoreSupport.subproj/WebSubresourceClient.m:
381         (-[WebSubresourceClient dealloc]): Remove bogus "currentURL == nil" assert.
382         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
383         Use the new loadWithRequest: call instead of making handle and doing loadWithDelegate:.
384         This is where the leak was, because no one ever released the handle, but releasing it
385         right away would be too soon.
386
387         * WebView.subproj/WebBaseResourceHandleDelegate.h: Added defersCallbacks field,
388         loadWithRequest: method, and setDefersCallbacks: method. Removed handle method.
389         * WebView.subproj/WebBaseResourceHandleDelegate.m:
390         (-[WebBaseResourceHandleDelegate loadWithRequest:]): New method. Sets up the handle,
391         set the defersCallbacks state on it, and calls loadWithDelegate:.
392         (-[WebBaseResourceHandleDelegate setDefersCallbacks:]): Stores defersCallbacks state,
393         and also sets it on the handle, if any.
394         (-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Remove code to set up
395         the handle, since we now do that at loadWithRequest: time.
396
397         * WebView.subproj/WebDataSourcePrivate.h: Remove mainHandle field.
398         * WebView.subproj/WebDataSourcePrivate.m:
399         (-[WebDataSourcePrivate dealloc]): Don't release mainHandle.
400         (-[WebDataSource _setPrimaryLoadComplete:]): Ditto.
401         (-[WebDataSource _startLoading]): Use loadWithRequest: on the client, no need to deal
402         with the handle directly at all.
403         (-[WebDataSource _addSubresourceClient:]): Call setDefersCallbacks: on the client.
404         (-[WebDataSource _defersCallbacksChanged]): Ditto.
405
406         * WebView.subproj/WebControllerPrivate.m: Remove unneeded include.
407         * WebView.subproj/WebMainResourceClient.m: Ditto.
408
409 2002-10-28  Chris Blumenberg  <cblu@apple.com>
410
411         Fixed: 3056726 - View Source window always displays the source in current system encoding
412         Fixed: 3019352 - Text encoding is not handled when viewing plain text
413
414         * WebView.subproj/WebDataSource.h:
415         * WebView.subproj/WebDataSource.m:
416         (-[WebDataSource stringWithData:]): added, creates a string using the specified encoding.
417         * WebView.subproj/WebHTMLRepresentation.m:
418         (-[WebHTMLRepresentation documentSource]): uses the bridge specified encoding when creating the string
419         * WebView.subproj/WebTextView.h:
420         * WebView.subproj/WebTextView.m:
421         (-[WebTextView dataSourceUpdated:]): use stringWithData: 
422         (-[WebTextView supportsTextEncoding]): Yup
423
424 2002-10-28  Richard Williamson   <rjw@apple.com>
425
426         Fixed crasher.
427         
428         * WebCoreSupport.subproj/WebTextRenderer.m:
429         (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
430
431 2002-10-28  John Sullivan  <sullivan@apple.com>
432
433         * Bookmarks.subproj/WebBookmark.h:
434         * Bookmarks.subproj/WebBookmark.m:
435         (-[WebBookmark contentMatches:]): new method, returns YES if
436         two bookmarks are the same, ignoring group and parent.
437
438 2002-10-28  Trey Matteson  <trey@apple.com>
439
440         Finished 2998200 - access to most-recent in submenu of back & forward buttons
441
442         * WebView.subproj/WebDataSourcePrivate.h:
443         The BF items we are going to and from were moved here from
444         WebFrame because of timing problems among multiple data sources
445         when using the BF buttons during a load.
446         In addition, the datasource has a list of relevant BF items for
447         which it keeps their titles up to date.
448         * WebView.subproj/WebDataSourcePrivate.m:
449         (-[WebDataSourcePrivate dealloc]):
450         Free new state.
451         (-[WebDataSource _setTitle:]):
452         Update titles of BF items.
453         (-[WebDataSource _provisionalBackForwardItem]):
454         (-[WebDataSource _setProvisionalBackForwardItem:]):
455         (-[WebDataSource _previousBackForwardItem]):
456         (-[WebDataSource _setPreviousBackForwardItem:]):
457         (-[WebDataSource _addBackForwardItem:]):
458         Maintain new state.
459         (-[WebDataSource _commitIfReady]):
460         Free up previous and provisional BF items after commit.
461         * WebCoreSupport.subproj/WebBridge.m:
462         (-[WebBridge loadURL:]):
463         Add the new BF item to the datasource.
464         (-[WebBridge saveDocumentState:]):
465         Use the right BF item to save the doc state.
466         * WebView.subproj/WebFramePrivate.h:
467         Previous and provisional BF are moved to datasource.
468         * WebView.subproj/WebFramePrivate.m:
469         (-[WebFrame _transitionToCommitted]):
470         Use provisional BF from datasource to set position in BF list.
471         Add new BF item to datasource.
472         (-[WebFrame _isLoadComplete]):
473         (-[WebFrame _checkLoadComplete]):
474         Comments, whitespace.
475         (-[WebFrame _goToItem:withFrameLoadType:]):
476         Set item we will use to saveDocState at commit time.
477
478 2002-10-27  Darin Adler  <darin@apple.com>
479
480         - WebKit part of filename width fix
481
482         * WebCoreSupport.subproj/WebFileButton.m:
483         (-[WebFileButton drawRect:]): Compute left position by starting at
484         the right side of the button frame rather than by starting at the right
485         side of the overall bounds. Removes dependency on fixed-width filename area.
486         (-[WebFileButton updateLabel]): Added. Computes ellipsized filename.
487         (-[WebFileButton setFilename:]): Use updateLabel instead of code in line here.
488         (-[WebFileButton setFrameSize:]): Call updateLabel.
489         (-[WebFileButton bestVisualFrameSizeForCharacterCount:]): Compute a width based
490         on the count passed in rather than a hardcoded 200-pixel constant.
491
492 2002-10-27  Darin Adler  <darin@apple.com>
493
494         - fixed 3037369 -- Status text not cleared after start of drag from page
495
496         * WebView.subproj/WebHTMLView.m:
497         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
498         Find the highest-level enclosing WebHTMLView, and call _updateMouseoverWithEvent:
499         with the mouseUp event after the drag is done.
500         (-[WebHTMLView mouseMovedNotification:]): Just call _updateMouseoverWithEvent:,
501         the code from here was moved into there.
502
503         * WebView.subproj/WebHTMLViewPrivate.h: Declare _updateMouseoverWithEvent.
504         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _updateMouseoverWithEvent:]):
505         Moved all the code from mouseMovedNotification: in here so it could be used twice.
506
507 2002-10-27  Don Melton  <gramps@apple.com>
508
509         * WebView.subproj/WebController.m:
510         (-[WebController userAgentForURL:]):
511
512         Changed default user agent to Mozilla 1.1.
513
514 2002-10-27  Darin Adler  <darin@apple.com>
515
516         * Bookmarks.subproj/WebBookmarkProxy.m: (-[WebBookmarkProxy dealloc]):
517         Added, so we don't leak the title.
518
519         * Bookmarks.subproj/WebBookmarkGroup.m: (-[WebBookmarkGroup removeBookmark:]):
520         * Bookmarks.subproj/WebBookmarkList.m: (-[WebBookmarkList removeChild:]):
521         Added retain/release pairs so we don't use an object after it's deallocated.
522         In practice this doesn't happen the way these are used by Alex since they are
523         in an array, but they have windows of vulnerability depending on exactly how
524         they are used.
525
526 2002-10-26  Darin Adler  <darin@apple.com>
527
528         * WebCoreSupport.subproj/WebViewFactory.m:
529         (-[WebViewFactory inputElementAltText]): Added.
530         (-[WebViewFactory resetButtonDefaultLabel]): Added.
531         (-[WebViewFactory searchableIndexIntroduction]): Added.
532         (-[WebViewFactory submitButtonDefaultLabel]): Added.
533         (-[WebViewFactory defaultLanguageCode]): Added.
534
535         * English.lproj/Localizable.strings: Update.
536         * English.lproj/StringsNotToBeLocalized.txt: Update.
537
538 2002-10-25  Darin Adler  <darin@apple.com>
539
540         * WebCoreSupport.subproj/WebViewFactory.m:
541         (-[WebViewFactory runJavaScriptAlertPanelWithMessage:]): Added.
542         (-[WebViewFactory runJavaScriptConfirmPanelWithMessage:]): Added.
543
544         * English.lproj/Localizable.strings: Update.
545         * English.lproj/StringsNotToBeLocalized.txt: Update.
546
547 2002-10-25  Richard Williamson   <rjw@apple.com>
548
549         Implemented support for bidi text layout.
550         
551         * WebCoreSupport.subproj/WebTextRenderer.m:
552         (_drawGlyphs):
553         (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
554
555 2002-10-25  Chris Blumenberg  <cblu@apple.com>
556
557         Made frameNamed private in WebController and renamed it to _findFrameNamed. Got rid of _frameInThisWindowNamed in WebController because it isn't needed anymore.
558
559         * WebView.subproj/WebController.h:
560         * WebView.subproj/WebController.m:
561         (-[WebController _goToItem:withFrameLoadType:]): call _findFrameNamed
562         * WebView.subproj/WebControllerPrivate.h:
563         * WebView.subproj/WebControllerPrivate.m:
564         (-[WebController _findFrameNamed:]): renamed, made private, got rid of call to _frameInThisWindowNamed as it is not needed
565         * WebView.subproj/WebFrame.m:
566         (-[WebFrame findFrameNamed:]): call [WebController _findFrameNamed:]
567
568 2002-10-25  Chris Blumenberg  <cblu@apple.com>
569
570         - Fix case where we would name a new window _blank
571         - If a data source can't be created for a plug-in request, don't create the frame or open a window.
572         - cleaned up plug-in stream notifications
573
574         * Plugins.subproj/WebBaseNetscapePluginView.h:
575         * Plugins.subproj/WebBaseNetscapePluginView.m:
576         (-[WebBaseNetscapePluginView initWithFrame:]): create streamNotifications dict
577         (-[WebBaseNetscapePluginView dealloc]): release streamNotifications dict
578         (-[WebBaseNetscapePluginView frameStateChanged:]): cleaned up
579         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): create data source before frame
580         * Plugins.subproj/WebPluginController.m:
581         (-[WebPluginController showURL:inFrame:]): create data source before frame
582         * WebView.subproj/WebControllerPrivate.m:
583         (-[WebController _setTopLevelFrameName:]): don't allow _blank frames
584         * WebView.subproj/WebFrame.m:
585         (-[WebFrame findOrCreateFramedNamed:]): no need to check for _blank
586
587 2002-10-25  Darin Adler  <darin@apple.com>
588
589         Tighten up the code that observes mouse moved events.
590
591         * WebView.subproj/WebHTMLView.m:
592         (-[WebHTMLView initWithFrame:]): Don't set up observers here.
593         (-[WebHTMLView addMouseMovedObserver]): Added some assertions.
594         (-[WebHTMLView viewWillMoveToWindow:]): Stop observing the "become main" and "resign main"
595         notifications here.
596         (-[WebHTMLView viewDidMoveToWindow]): Start observing them here.
597         (-[WebHTMLView windowDidBecomeMain:]): Assert that the notification is for this window,
598         instead of checking with if.
599         (-[WebHTMLView windowDidResignMain:]): Assert that the notification is for this window.
600
601 2002-10-25  Chris Blumenberg  <cblu@apple.com>
602
603         Cleaned up the frame searching shenanigans. Things are much cleaner and clearer now.
604
605         * Plugins.subproj/WebBaseNetscapePluginView.m:
606         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): call findOrCreateFramedNamed
607         * Plugins.subproj/WebPluginController.m:
608         (-[WebPluginController showURL:inFrame:]): call findOrCreateFramedNamed
609         * WebCoreSupport.subproj/WebBridge.m:
610         (-[WebBridge childFrames]): moved
611         (-[WebBridge mainFrame]): moved
612         (-[WebBridge findOrCreateFramedNamed:]): call findOrCreateFramedNamed on the frame
613         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): call _pluginController
614         * WebView.subproj/WebControllerPrivate.m:
615         (-[WebController _frameInThisWindowNamed:]): call _descendantFrameNamed
616         * WebView.subproj/WebFrame.h:
617         * WebView.subproj/WebFrame.m:
618         (-[WebFrame findFrameNamed:]): was frameNamed. First checks special-case frame names, descendant frames, then the whole controller, then other controllers.
619         (-[WebFrame findOrCreateFramedNamed:]): calls findFrameNamed, opens new window if necessary 
620         * WebView.subproj/WebFramePrivate.h:
621         * WebView.subproj/WebFramePrivate.m:
622         (-[WebFrame _descendantFrameNamed:]): searches children, children's children etc.
623         (-[WebFrame _pluginController]): this method needed an "_"
624         * WebView.subproj/WebHTMLView.m:
625         (-[WebHTMLView addSubview:]): call _pluginController
626         * WebView.subproj/WebHTMLViewPrivate.m:
627         (-[WebHTMLView _elementAtPoint:]): no need to special case for "_blank" since findFrameNamed will return nil for that name
628
629 2002-10-25  Trey Matteson  <trey@apple.com>
630         
631         2919039 - Implement limit on back/forward history list
632         2998200 - access to most-recent in submenu of back & forward buttons
633         3022566 - need WebKit API for accessing and visiting back/forward list items
634         3084051 - forward button incorrectly enabled after going forward all the way
635
636         Remaining issues at this point are getting the title of the pages
637         into the menu items (instead of the URL), and saving document
638         state properly when you jump around in the list.  Solutions are
639         known and coming soon.
640
641         * History.subproj/WebBackForwardList.h:
642         Added doc comments to API.  Made ivars private.  Replaced index-
643         based API with item-based API.  Added a sizelimit to the overall
644         list.  Tweaked API to get back and forward lists.
645         * History.subproj/WebBackForwardList.m:
646         Straightforward impl of the above, with the note that I dumped
647         WebHistoryList from the API and impl in favor of an NSArray,
648         which is efficient for this sort of use (queue, stack).
649         (-[WebBackForwardList init]):
650         (-[WebBackForwardList dealloc]):
651         (-[WebBackForwardList goBack]):
652         (-[WebBackForwardList goForward]):
653         (-[WebBackForwardList goToEntry:]):
654         (-[WebBackForwardList backEntry]):
655         (-[WebBackForwardList forwardEntry]):
656         (-[WebBackForwardList maximumSize]):
657         (-[WebBackForwardList setMaximumSize:]):
658         (-[WebBackForwardList description]):
659         * History.subproj/WebHistoryList.h: Removed.
660         Nuked from API, per above.
661         * History.subproj/WebHistoryList.m: Removed.
662         * Misc.subproj/WebKit.h:
663         WebHistoryList gone from API.
664         * WebCoreSupport.subproj/WebBridge.m:
665         (-[WebBridge loadURL:]):
666         Use if/else instead of buried "return;", so next person doesn;t
667         make the same mis-read I did.
668         (-[WebBridge saveDocumentState:]):
669         Site of future work.
670         * WebKit.pbproj/project.pbxproj:
671         Nuked WebHistoryList.
672         * WebView.subproj/WebController.h:
673         * WebView.subproj/WebController.m:
674         (-[WebController goBackOrForwardToItem:]):
675         New method to support random access nav in backforward list.
676         * WebView.subproj/WebDataSourcePrivate.m:
677         (-[WebDataSource _setTitle:]):
678         Site of future work (fixing title in items)
679         * WebView.subproj/WebFramePrivate.h:
680         WebFrameLoadTypeIndexedBack/WebFrameLoadTypeIndexedForward are
681         collapsed into WebFrameLoadTypeIndexedBackForward.  Vestigial
682         WebFrameLoadTypeIntermediateBack is nuked.
683         * WebView.subproj/WebFramePrivate.m:
684         (-[WebFramePrivate setBackForwardItem:]):
685         (-[WebFrame _setBackForwardItem:]):
686         (-[WebFrame _backForwardItem]):
687         Must remember the BF item we're going to so we can update the
688         BF list on commit.
689         (-[WebFrame _transitionToCommitted]):
690         Update the BF list on commit.
691         (-[WebFrame _isLoadComplete]):
692         (-[WebFrame _goToItem:withFrameLoadType:]):
693         Update BF list on within-page nav.
694         Remember BF item we are going to for later update on commit.
695
696 2002-10-25  Chris Blumenberg  <cblu@apple.com>
697
698         Minor non-mentionable clean-up.
699
700         * WebCoreSupport.subproj/WebBridge.m:
701         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
702
703 2002-10-25  Chris Blumenberg  <cblu@apple.com>
704
705         Cleaned up the plug-in API headers so they can be sent to other groups.
706
707         * Plugins.subproj/WebPlugin.h:
708         * Plugins.subproj/WebPluginContainer.h:
709         * Plugins.subproj/WebPluginViewFactory.h:
710
711 2002-10-24  Richard Williamson   <rjw@apple.com>
712
713         Fixed many font substitution related bugs, at least including:
714         3006966, 3026675, 3071106, and more... (each of these bugs
715         has a list of related bugs). 
716         
717         Needs little more cleanup to correctly deal with non base characters.
718         
719         * WebCoreSupport.subproj/WebTextRenderer.h:
720         * WebCoreSupport.subproj/WebTextRenderer.m:
721         (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
722         (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:]):
723         (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
724         
725         Against Darin's better judgement prevent extra layout when not in live resize.  If
726         this introduces any regressions I owe darin a good bottle of wine.
727         
728         * WebView.subproj/WebDynamicScrollBarsView.m:
729         (-[WebDynamicScrollBarsView updateScrollers]):
730
731 2002-10-24  Chris Blumenberg  <cblu@apple.com>
732
733         New Java plug-in works! Much faster to load and no spinny cursor! Unfortunately, it very unstable.
734
735         * Plugins.subproj/WebPluginController.m: cleaned-up the logging messages.
736         (-[WebPluginController addPluginView:]):
737         (-[WebPluginController didAddPluginView:]):
738         (-[WebPluginController startAllPlugins]):
739         (-[WebPluginController stopAllPlugins]):
740         (-[WebPluginController destroyAllPlugins]):
741         * WebCoreSupport.subproj/WebBridge.m:
742         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): make height and width an attribute.
743
744 2002-10-24  Chris Blumenberg  <cblu@apple.com>
745
746         Some clean-up and bug fixes for new plug-in support.
747
748         * Plugins.subproj/WebPluginController.m:
749         (-[WebPluginController initWithWebFrame:]): need a colon after windowWillClose
750         (-[WebPluginController addPluginView:]): added logging
751         (-[WebPluginController didAddPluginView:]): added logging
752         (-[WebPluginController startAllPlugins]): added logging
753         (-[WebPluginController stopAllPlugins]): added logging
754         (-[WebPluginController destroyAllPlugins]): added logging
755         * Plugins.subproj/WebPluginPackage.m:
756         (-[WebPluginPackage getMIMEInformation]): use correct dict key for getting MIME descriptions
757         * WebCoreSupport.subproj/WebBridge.m: no more didAddSubview
758         * WebView.subproj/WebFramePrivate.h: no more didAddSubview
759         * WebView.subproj/WebFramePrivate.m: no more didAddSubview
760         * WebView.subproj/WebHTMLView.m:
761         (-[WebHTMLView addSubview:]): call didAddPluginView on WebPluginController
762
763 2002-10-24  John Sullivan  <sullivan@apple.com>
764
765         * WebCoreSupport.subproj/WebBridge.m:
766         (-[WebBridge objectLoadedFromCache:response:size:]):
767         added ASSERT(response != nil), leftover from debugging
768         session on Tuesday, seems worth leaving in.
769
770 2002-10-24  Darin Adler  <darin@apple.com>
771
772         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
773
774 2002-10-24  Chris Blumenberg  <cblu@apple.com>
775
776         Changed some method names in WebPluginController.
777
778         * Plugins.subproj/WebPluginController.h:
779         * Plugins.subproj/WebPluginController.m:
780         (-[WebPluginController didAddPluginView:]):
781         (-[WebPluginController startAllPlugins]):
782         (-[WebPluginController stopAllPlugins]):
783         (-[WebPluginController destroyAllPlugins]):
784         (-[WebPluginController windowWillClose:]):
785         * WebView.subproj/WebFramePrivate.m:
786         (-[WebFrame _transitionToCommitted]):
787         (-[WebFrame _didAddSubview:]):
788
789 === Alexander-29 ===
790
791 2002-10-24  Richard Williamson   <rjw@apple.com>
792
793         Don't leak request.
794         
795         * WebView.subproj/WebBaseResourceHandleDelegate.m:
796         (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
797
798 2002-10-24  Richard Williamson   <rjw@apple.com>
799
800         Always copy request, we can't count on it being immutable.
801         This was the cause of the ASSERT from last night's checkin.
802         
803         * WebView.subproj/WebBaseResourceHandleDelegate.m:
804         (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
805         
806         Only send serverRedirectedForDataSource: if URL changed.
807         
808         * WebView.subproj/WebDataSourcePrivate.m:
809         (-[WebDataSource _setRequest:]):
810
811 2002-10-24  Chris Blumenberg  <cblu@apple.com>
812         
813         - Use "MIMEType" instead of "serviceType".
814
815         * Plugins.subproj/WebBasePluginPackage.h:
816         * Plugins.subproj/WebBasePluginPackage.m:
817         (-[WebBasePluginPackage load]):
818         (-[WebBasePluginPackage dealloc]):
819         (-[WebBasePluginPackage filename]):
820         (-[WebBasePluginPackage setPath:]):
821         * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
822         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
823         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributes:]):
824         * Plugins.subproj/WebNetscapePluginPackage.m:
825         (-[WebNetscapePluginPackage getMIMEInformation]): changed name.
826         (-[WebNetscapePluginPackage initWithPath:]):
827         * Plugins.subproj/WebNullPluginView.h:
828         * Plugins.subproj/WebNullPluginView.m:
829         (-[WebNullPluginView initWithFrame:MIMEType:attributes:]):
830         (-[WebNullPluginView dealloc]):
831         (-[WebNullPluginView viewDidMoveToWindow]): send missing plug-ins notification here
832         * Plugins.subproj/WebPluginPackage.m:
833         (-[WebPluginPackage getMIMEInformation]): new, gets MIME info from plist
834         (-[WebPluginPackage initWithPath:]):
835         (-[WebPluginPackage dealloc]):
836         (-[WebPluginPackage viewFactory]):
837         (-[WebPluginPackage load]):
838         (-[WebPluginPackage unload]):
839         * WebCoreSupport.subproj/WebBridge.m:
840         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
841         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
842
843 2002-10-24  Richard Williamson   <rjw@apple.com>
844
845         Flag error instead of ASSERTing as a result of fix to 3083013.
846         Not clear why this condition occurs, but better than ASSERTing
847         for Alex 29.
848         
849         * WebView.subproj/WebDataSourcePrivate.m:
850         (-[WebDataSource _setRequest:]):
851
852 2002-10-24  Darin Adler  <darin@apple.com>
853
854         - fixed a crash I ran into in the new delegate code
855
856         * WebView.subproj/WebBaseResourceHandleDelegate.m:
857         (-[WebBaseResourceHandleDelegate _releaseResources]): Retain self across this
858         deallocation to avoid reentering and being deallocated midstream. This happens
859         because the handle holds the only reference to us, and we may be releasing the
860         last reference to it.
861         (-[WebBaseResourceHandleDelegate dealloc]): Add call to [super dealloc].
862
863         * Plugins.subproj/WebBasePluginPackage.m: (-[WebBasePluginPackage dealloc]):
864         Add call to [super dealloc].
865
866         * WebView.subproj/WebMainResourceClient.m: Tweak.
867
868 2002-10-23  Darin Adler  <darin@apple.com>
869
870         - fixed 3083013 -- REGRESSION: Cookie refused at http://directory/ even on reload
871
872         Restore a bit of the cruft.
873
874         * WebView.subproj/WebMainResourceClient.m:
875         (-[WebMainResourceClient handle:willSendRequest:]):
876         We need to change the request on the data source when a redirect happens,
877         because the data source goes on to ultimately communicate this to WebCore.
878         Restored the code that did that, with some changes to fit into the new regime.
879
880 2002-10-23  Richard Williamson  <rjw@apple.com>
881
882         Cleaned up months of accumulated cruft.
883         Added base class to the three WebResourceHandleDelegate implementors.
884         Removed superfluous handle references to controller callbacks.
885         More can still be done.
886         All in the name of fixing 3076050.
887         
888         * Misc.subproj/WebKitErrors.h:
889         * Plugins.subproj/WebBaseNetscapePluginStream.m:
890         (-[WebBaseNetscapePluginStream setResponse:]):
891         * Plugins.subproj/WebNetscapePluginRepresentation.m:
892         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
893         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
894         (-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
895         * Plugins.subproj/WebNetscapePluginStream.h:
896         * Plugins.subproj/WebNetscapePluginStream.m:
897         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
898         (-[WebNetscapePluginStream dealloc]):
899         (-[WebNetscapePluginStream start]):
900         (-[WebNetscapePluginStream stop]):
901         (-[WebNetscapePluginStream handle:willSendRequest:]):
902         (-[WebNetscapePluginStream handle:didReceiveResponse:]):
903         (-[WebNetscapePluginStream handle:didReceiveData:]):
904         (-[WebNetscapePluginStream handleDidFinishLoading:]):
905         (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
906         * WebCoreSupport.subproj/WebBridge.m:
907         (-[WebBridge reportBadURL:]):
908         * WebCoreSupport.subproj/WebSubresourceClient.h:
909         * WebCoreSupport.subproj/WebSubresourceClient.m:
910         (-[WebSubresourceClient initWithLoader:dataSource:]):
911         (-[WebSubresourceClient dealloc]):
912         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
913         (-[WebSubresourceClient receivedError:]):
914         (-[WebSubresourceClient handle:willSendRequest:]):
915         (-[WebSubresourceClient handle:didReceiveResponse:]):
916         (-[WebSubresourceClient handle:didReceiveData:]):
917         (-[WebSubresourceClient handleDidFinishLoading:]):
918         (-[WebSubresourceClient handle:didFailLoadingWithError:]):
919         (-[WebSubresourceClient cancel]):
920         * WebView.subproj/WebBaseResourceHandleDelegate.h:
921         * WebView.subproj/WebBaseResourceHandleDelegate.m:
922         (-[WebBaseResourceHandleDelegate init]):
923         (-[WebBaseResourceHandleDelegate _releaseResources]):
924         (-[WebBaseResourceHandleDelegate dealloc]):
925         (-[WebBaseResourceHandleDelegate setDataSource:]):
926         (-[WebBaseResourceHandleDelegate dataSource]):
927         (-[WebBaseResourceHandleDelegate resourceLoadDelegate]):
928         (-[WebBaseResourceHandleDelegate downloadDelegate]):
929         (-[WebBaseResourceHandleDelegate setIsDownload:]):
930         (-[WebBaseResourceHandleDelegate isDownload]):
931         (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
932         (-[WebBaseResourceHandleDelegate handle:didReceiveResponse:]):
933         (-[WebBaseResourceHandleDelegate handle:didReceiveData:]):
934         (-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
935         (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
936         (-[WebBaseResourceHandleDelegate cancel]):
937         (-[WebBaseResourceHandleDelegate handle]):
938         * WebView.subproj/WebControllerPrivate.h:
939         * WebView.subproj/WebControllerPrivate.m:
940         (-[WebController _mainReceivedBytesSoFar:fromDataSource:complete:]):
941         (-[WebController _receivedError:fromDataSource:]):
942         (-[WebController _mainReceivedError:fromDataSource:]):
943         * WebView.subproj/WebDataSource.h:
944         * WebView.subproj/WebDataSource.m:
945         * WebView.subproj/WebDataSourcePrivate.h:
946         * WebView.subproj/WebDataSourcePrivate.m:
947         (-[WebDataSourcePrivate dealloc]):
948         (-[WebDataSource _startLoading]):
949         (-[WebDataSource _stopLoading]):
950         (-[WebDataSource _clearErrors]):
951         * WebView.subproj/WebFramePrivate.m:
952         (-[WebFrame _isLoadComplete]):
953         * WebView.subproj/WebMainResourceClient.h:
954         * WebView.subproj/WebMainResourceClient.m:
955         (-[WebMainResourceClient initWithDataSource:]):
956         (-[WebMainResourceClient dealloc]):
957         (-[WebMainResourceClient receivedError:]):
958         (-[WebMainResourceClient cancel]):
959         (-[WebMainResourceClient handle:willSendRequest:]):
960         (-[WebMainResourceClient _notifyDelegatesOfInterruptionByPolicyChange]):
961         (-[WebMainResourceClient handle:didReceiveResponse:]):
962         (-[WebMainResourceClient handle:didReceiveData:]):
963         (-[WebMainResourceClient handleDidFinishLoading:]):
964         (-[WebMainResourceClient handle:didFailLoadingWithError:]):
965         * WebView.subproj/WebResourceLoadDelegate.h:
966
967 2002-10-23  Chris Blumenberg  <cblu@apple.com>
968
969         Support for new plug-in API. This is about as much as I can do without the new java plug-in and java root.
970
971         * Plugins.subproj/WebPluginController.h:
972         * Plugins.subproj/WebPluginController.m:
973         (-[WebPluginController initWithWebFrame:]): observe window close changes
974         (-[WebPluginController dealloc]): remove observer, assert if we're still tracking plug-ins
975         (-[WebPluginController didAddSubview:]): start the plug-in
976         (-[WebPluginController stopAllPlugins]): stop and destroy all plug-ins.
977         (-[WebPluginController windowWillClose:]): call stopAllPlugins if the window in question is closing
978         * WebView.subproj/WebFramePrivate.m:
979         (-[WebFrame _transitionToCommitted]): call stopAllPlugins on WebPluginController
980
981 2002-10-23  Chris Blumenberg  <cblu@apple.com>
982
983         Changed the plug-in package API to return key enumerators instead dictionaries.
984
985         * Plugins.subproj/WebBasePluginPackage.h:
986         * Plugins.subproj/WebBasePluginPackage.m:
987         (-[WebBasePluginPackage initWithPath:]):
988         (-[WebBasePluginPackage load]):
989         (-[WebBasePluginPackage unload]):
990         (-[WebBasePluginPackage dealloc]):
991         (-[WebBasePluginPackage extensionEnumerator]):
992         (-[WebBasePluginPackage MIMETypeEnumerator]):
993         (-[WebBasePluginPackage descriptionForMIMEType:]):
994         (-[WebBasePluginPackage MIMETypeForExtension:]):
995         (-[WebBasePluginPackage extensionsForMIMEType:]):
996         (-[WebBasePluginPackage setName:]):
997         (-[WebBasePluginPackage setPath:]):
998         (-[WebBasePluginPackage setFilename:]):
999         (-[WebBasePluginPackage setPluginDescription:]):
1000         (-[WebBasePluginPackage setMIMEToDescriptionDictionary:]):
1001         (-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
1002         * Plugins.subproj/WebNetscapePluginPackage.h:
1003         * Plugins.subproj/WebNetscapePluginPackage.m:
1004         (-[WebNetscapePluginPackage getPluginInfo]):
1005         (-[WebNetscapePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
1006         (-[WebNetscapePluginPackage initWithPath:]):
1007         (-[WebNetscapePluginPackage executableType]):
1008         * Plugins.subproj/WebPluginController.h:
1009         * Plugins.subproj/WebPluginController.m:
1010         (-[WebPluginController didAddSubview:]):
1011         * Plugins.subproj/WebPluginDatabase.h:
1012         * Plugins.subproj/WebPluginDatabase.m:
1013         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
1014         (-[WebPluginDatabase pluginForMIMEType:]):
1015         (-[WebPluginDatabase pluginForExtension:]):
1016         (-[WebPluginDatabase MIMETypes]):
1017         (-[WebPluginDatabase init]):
1018         * WebCoreSupport.subproj/WebBridge.m:
1019         (-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
1020         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
1021         (-[WebBridge didAddSubview:]): new
1022         * WebView.subproj/WebFramePrivate.h:
1023         * WebView.subproj/WebFramePrivate.m:
1024         (-[WebFrame _didAddSubview:]): new 
1025
1026 2002-10-23  Darin Adler  <darin@apple.com>
1027
1028         - finished up the job of moving the file button here from WebCore.
1029
1030         I did this mainly for localization reasons.
1031
1032         * WebCoreSupport.subproj/WebFileButton.m:
1033         (-[WebFileButton initWithFrame:]): Set up button control size, font, bezel style,
1034         target, and action. Also add it as a subview.
1035         (-[WebFileButton drawRect:]): Center icon in the "visual frame" part of the view,
1036         not the entire bounds.
1037         (-[WebFileButton setFilename:]): Don't show any icon when the filename is empty.
1038         (-[WebFileButton bestVisualFrameSize]): Implemented this.
1039         (-[WebFileButton visualFrame]): Ditto.
1040         (-[WebFileButton setVisualFrame:]): Ditto.
1041         (-[WebFileButton baseline]): Ditto.
1042         (-[WebFileButton beginSheet]): Added. Shared between button presses and other clicks.
1043         (-[WebFileButton chooseButtonPressed:]): Call beginSheet.
1044         (-[WebFileButton mouseDown:]): Ditto.
1045         (-[WebFileButton openPanelDidEnd:returnCode:contextInfo:]): Send the notification,
1046         WebCoreFileButtonFilenameChanged, when the filename is changed.
1047
1048         * WebView.subproj/WebController.m: (-[WebController policyDelegate]):
1049         Add a FIXME about the leak I found here.
1050
1051 2002-10-23  Chris Blumenberg  <cblu@apple.com>
1052
1053         Call the arguments for plug-ins "attributes" everywhere.
1054
1055         * Plugins.subproj/WebBaseNetscapePluginView.h:
1056         * Plugins.subproj/WebBaseNetscapePluginView.m:
1057         (-[WebBaseNetscapePluginView setAttributes:]):
1058         * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
1059         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
1060         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:attributes:]):
1061         * Plugins.subproj/WebNullPluginView.h:
1062         * Plugins.subproj/WebNullPluginView.m:
1063         (-[WebNullPluginView initWithFrame:mimeType:attributes:]):
1064         (-[WebNullPluginView drawRect:]):
1065         * Plugins.subproj/WebPluginController.h:
1066         * Plugins.subproj/WebPluginController.m:
1067         (-[WebPluginController initWithWebFrame:]):
1068         (-[WebPluginController dealloc]):
1069         (-[WebPluginController addPluginView:]):
1070         * Plugins.subproj/WebPluginPackage.h:
1071         * Plugins.subproj/WebPluginPackage.m:
1072         (-[WebPluginPackage viewFactory]):
1073         * WebCoreSupport.subproj/WebBridge.m:
1074         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
1075         (-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
1076         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
1077
1078 2002-10-23  Chris Blumenberg  <cblu@apple.com>
1079
1080         * WebCoreSupport.subproj/WebBridge.m:
1081         (-[WebBridge requestedURL]):
1082         (-[WebBridge viewForPluginWithURL:serviceType:arguments:baseURL:]):
1083         (-[WebBridge viewForJavaAppletWithFrame:baseURL:parameters:]):
1084         * WebCoreSupport.subproj/WebViewFactory.m:
1085         (-[WebViewFactory fileButton]):
1086         (-[WebViewFactory pluginsInfo]):
1087
1088 2002-10-23  Darin Adler  <darin@apple.com>
1089
1090         - fix bug where plugins crashed closing a stream that was never opened
1091
1092         * Plugins.subproj/WebBaseNetscapePluginStream.h: Change type for parameter of
1093         receivedError: to NPReason. It's not NPError.
1094         * Plugins.subproj/WebBaseNetscapePluginStream.m:
1095         (-[WebBaseNetscapePluginStream dealloc]): Assert that stream is destroyed by
1096         checking stream.ndata.
1097         (-[WebBaseNetscapePluginStream setResponse:]): Set stream.ndata to nil if the
1098         stream is not successfully created by NPP_NewStream.
1099         (-[WebBaseNetscapePluginStream destroyStreamWithReason:]): Added. Destroys the
1100         stream, but only if it's present. Also set stream.ndata to nil. This was the bug fix.
1101         (-[WebBaseNetscapePluginStream receivedError:]): Call destroyStreamWithReason:.
1102         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Call destroyStreamWithReason:.
1103
1104         * English.lproj/Localizable.strings: Update.
1105         * English.lproj/StringsNotToBeLocalized.txt: Update.
1106
1107 2002-10-23  Chris Blumenberg  <cblu@apple.com>
1108
1109         Forgot to add WebPluginController back to the project after I had a project conflict.
1110
1111         * WebKit.pbproj/project.pbxproj:
1112
1113 2002-10-23  Chris Blumenberg  <cblu@apple.com>
1114
1115         Added WebPluginController which controls and reacts to plug-in requests. Its owned by the WebFrame.
1116
1117         * Plugins.subproj/WebPluginController.h: Added.
1118         * Plugins.subproj/WebPluginController.m: Added.
1119         (-[WebPluginController initWithWebFrame:]):
1120         (-[WebPluginController showURL:inFrame:]):
1121         (-[WebPluginController showStatus:]):
1122         * WebView.subproj/WebFramePrivate.h:
1123         * WebView.subproj/WebFramePrivate.m:
1124         (-[WebFramePrivate dealloc]):
1125         (-[WebFrame pluginController]):
1126
1127 2002-10-23  Darin Adler  <darin@apple.com>
1128
1129         Add WebFileButton, to be used by WebCore soon. It's about 1/2
1130         done right now. Compiles but not used yet.
1131
1132         * WebCoreSupport.subproj/WebViewFactory.m: (-[WebViewFactory fileButton]): Added.
1133
1134         * WebCoreSupport.subproj/WebFileButton.h: Added.
1135         * WebCoreSupport.subproj/WebFileButton.m: Added.
1136         * WebKit.pbproj/project.pbxproj: Added WebFileButton files.
1137
1138         * WebCoreSupport.subproj/WebSubresourceClient.m:
1139         (-[WebSubresourceClient handle:didReceiveResponse:]): Add an assertion.
1140
1141 2002-10-23  Maciej Stachowiak  <mjs@apple.com>
1142
1143         - fixed 2876448 - The authentication panel should give a note when
1144         the user tried to log in and failed
1145
1146         Also, made the message different (and more helpful) when the
1147         authentication is for a proxy server.
1148         
1149         * Panels.subproj/WebAuthenticationPanel.m:
1150         (-[WebAuthenticationPanel setUpForRequest:]): Use different
1151         messages depending on proxy and previous failure count.
1152
1153         Updated localized strings:
1154         
1155         * English.lproj/Localizable.strings:
1156         * English.lproj/StringsNotToBeLocalized.txt:
1157
1158 2002-10-23  Maciej Stachowiak  <mjs@apple.com>
1159
1160         - fixed 2876446 - The label in the authentication panel needs to
1161         adjust its height depending on content
1162
1163         Also improved [NSControl sizeToFitAndAdjustWindowHeight] method.
1164         
1165         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Adjusted
1166         springs.
1167         * Panels.subproj/WebAuthenticationPanel.m:
1168         (-[WebAuthenticationPanel setUpForRequest:]): Use
1169         sizeToFitAndAdjustWindowHeight on main label.
1170         
1171         * Misc.subproj/WebNSControlExtras.m:
1172         (-[NSControl sizeToFitAndAdjustWindowHeight]): Improved the logic
1173         so the best height is picked while leaving the width
1174         alone. Before, the label would always come out to be a very wide
1175         single line.
1176
1177 2002-10-22  Maciej Stachowiak  <mjs@apple.com>
1178
1179         * WebKit.pbproj/project.pbxproj: Made WebControllerSets.h
1180         private. Also alphabetized headers in target pane and subproject
1181         folders.
1182
1183 2002-10-22  Chris Blumenberg  <cblu@apple.com>
1184
1185         load and unload is only a WebNetscapePluginPackage thing since you can't unload an NSBundle.
1186
1187         * Plugins.subproj/WebBasePluginPackage.h:
1188         * Plugins.subproj/WebBasePluginPackage.m:
1189         * Plugins.subproj/WebNetscapePluginPackage.h:
1190
1191 2002-10-22  Chris Blumenberg  <cblu@apple.com>
1192
1193         More moving stuff around for the new plug-in API. Added WebBasePluginPackage and added subclass WebPluginPackage. Also made WebNetscapePluginPackage a subclass of WebBasePluginPackage. 
1194
1195         * Plugins.subproj/WebBasePluginPackage.h: Added.
1196         * Plugins.subproj/WebBasePluginPackage.m: Added.
1197         (+[WebBasePluginPackage pluginWithPath:]): creates a WebPluginPackage or WebNetscapePluginPackage
1198         (-[WebBasePluginPackage initWithPath:]):
1199         (-[WebBasePluginPackage name]):
1200         (-[WebBasePluginPackage path]):
1201         (-[WebBasePluginPackage filename]):
1202         (-[WebBasePluginPackage pluginDescription]):
1203         (-[WebBasePluginPackage extensionToMIMEDictionary]):
1204         (-[WebBasePluginPackage MIMEToExtensionsDictionary]):
1205         (-[WebBasePluginPackage MIMEToDescriptionDictionary]):
1206         (-[WebBasePluginPackage load]):
1207         (-[WebBasePluginPackage unload]):
1208         (-[WebBasePluginPackage isLoaded]):
1209         (-[WebBasePluginPackage description]):
1210         * Plugins.subproj/WebNetscapePluginDocumentView.m:
1211         (-[WebNetscapePluginDocumentView setDataSource:]):
1212         * Plugins.subproj/WebNetscapePluginPackage.h:
1213         * Plugins.subproj/WebNetscapePluginPackage.m:
1214         (-[WebNetscapePluginPackage initWithPath:]):
1215         * Plugins.subproj/WebPluginDatabase.h:
1216         * Plugins.subproj/WebPluginDatabase.m:
1217         (-[WebPluginDatabase pluginForMIMEType:]):
1218         (-[WebPluginDatabase pluginForExtension:]):
1219         (-[WebPluginDatabase pluginForFilename:]):
1220         (-[WebPluginDatabase MIMETypes]):
1221         (-[WebPluginDatabase init]):
1222         * Plugins.subproj/WebPluginPackage.h: Added.
1223         * Plugins.subproj/WebPluginPackage.m: Added.
1224         (-[WebPluginPackage initWithPath:]):
1225         * WebCoreSupport.subproj/WebViewFactory.m:
1226         (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): check the class of the plug-in when deciding which view to create.
1227         (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]): same here.
1228         * WebKit.pbproj/project.pbxproj:
1229
1230 2002-10-22  David Hyatt  <hyatt@apple.com>
1231
1232         Getting XML docs at least made for XML files...
1233         
1234         * WebView.subproj/WebHTMLRepresentation.m:
1235         (-[WebHTMLRepresentation setDataSource:]):
1236
1237 2002-10-22  Chris Blumenberg  <cblu@apple.com>
1238
1239         Made new plug-in API headers private.
1240
1241         * WebKit.pbproj/project.pbxproj:
1242
1243 2002-10-22  Darin Adler  <darin@apple.com>
1244
1245         * Misc.subproj/WebKitErrors.h:
1246         * WebView.subproj/WebMainResourceClient.m:
1247         (-[WebMainResourceClient handle:willSendRequest:]):
1248         (-[WebMainResourceClient handle:didReceiveResponse:]):
1249         Rename WebErrorLocationChangeInterruptedByURLPolicyChange to
1250         WebErrorLocationChangeInterruptedByPolicyChange.
1251
1252 2002-10-22  Darin Adler  <darin@apple.com>
1253
1254         * WebView.subproj/WebMainResourceClient.m:
1255         (-[WebMainResourceClient handle:didReceiveResponse:]):
1256         Send the new error whenever a policy change happens. The old code was
1257         sending a successful completion in the download and ignore cases.
1258
1259 2002-10-22  John Sullivan  <sullivan@apple.com>
1260
1261         - fixed 3080873 -- Error in console when no bookmark file 
1262         found -[WebBookmarkGroup _loadBookmarkGroupGuts]
1263
1264         * Bookmarks.subproj/WebBookmarkGroup.m:
1265         (-[WebBookmarkGroup _loadBookmarkGroupGuts]):
1266         removed ERROR that was useful only long ago.
1267
1268 2002-10-22  Richard Williamson  <rjw@apple.com>
1269
1270         Added stubs from common WebResourceHandleDelegate base
1271         class.
1272         
1273         * Plugins.subproj/WebBaseNetscapePluginStream.h:
1274         * Plugins.subproj/WebNetscapePluginStream.h:
1275         * WebCoreSupport.subproj/WebSubresourceClient.h:
1276         * WebKit.pbproj/project.pbxproj:
1277         * WebView.subproj/WebBaseResourceHandleDelegate.h: Added.
1278         * WebView.subproj/WebBaseResourceHandleDelegate.m: Added.
1279         * WebView.subproj/WebMainResourceClient.h:
1280
1281 2002-10-22  Darin Adler  <darin@apple.com>
1282
1283         Make the panel position itself above the main window.
1284         Too bad we can't use a sheet, but this is better than a random position.
1285
1286         * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m:
1287         (-[WebJavaScriptTextInputPanel initWithPrompt:text:]):
1288         Use the new [NSWindow sizeToFitAndAdjustWindowHeight]
1289         and [NSControl sizeToFitAndAdjustWindowHeight].
1290
1291         * Misc.subproj/WebNSControlExtras.h: Added.
1292         * Misc.subproj/WebNSControlExtras.m: Added.
1293         * Misc.subproj/WebNSWindowExtras.h: Added.
1294         * Misc.subproj/WebNSWindowExtras.m: Added.
1295         * WebKit.pbproj/project.pbxproj: Added above files.
1296
1297         * English.lproj/StringsNotToBeLocalized.txt: Update.
1298
1299 2002-10-22  Ken Kocienda  <kocienda@apple.com>
1300
1301         * Misc.subproj/WebKitErrors.h: Add new error code to signify that a location
1302         change has been interrupted by a change in the URLPolicy governing the load.
1303         * WebView.subproj/WebMainResourceClient.m:
1304         (-[WebMainResourceClient handle:willSendRequest:]): Add code to check the URLPolicy
1305         for the URL in the request that is submitted to us in this delegate method. Send
1306         a locationChangeDone:forDataSource: message with an error using the newly-defined
1307         code in cases where the location change should be cancelled.
1308
1309 2002-10-22  Chris Blumenberg  <cblu@apple.com>
1310
1311         Added protocol headers for new plug-in API.
1312
1313         * Plugins.subproj/WebPlugin.h: Added.
1314         * Plugins.subproj/WebPluginContainer.h: Added.
1315         * Plugins.subproj/WebPluginViewFactory.h: Added.
1316         * WebKit.pbproj/project.pbxproj:
1317
1318 2002-10-22  Chris Blumenberg  <cblu@apple.com>
1319
1320         - Moved things around to make room for new plug-in API.
1321         - Renamed WebNetscapePlugin to WebNetscapePluginPackage.
1322         - Renamed WebNetscapePluginDatabase to WebPluginDatabase.
1323
1324         * Plugins.subproj/WebBaseNetscapePluginStream.m:
1325         (-[WebBaseNetscapePluginStream setPluginPointer:]):
1326         * Plugins.subproj/WebBaseNetscapePluginView.h:
1327         * Plugins.subproj/WebBaseNetscapePluginView.m:
1328         (-[WebBaseNetscapePluginView plugin]):
1329         * Plugins.subproj/WebNetscapePluginDocumentView.m:
1330         (-[WebNetscapePluginDocumentView setDataSource:]):
1331         * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
1332         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
1333         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
1334         * Plugins.subproj/WebNetscapePluginNullEventSender.h: Added.
1335         * Plugins.subproj/WebNetscapePluginNullEventSender.m: Added.
1336         (-[WebNetscapePluginNullEventSender initWithPluginView:]):
1337         (-[WebNetscapePluginNullEventSender dealloc]):
1338         (-[WebNetscapePluginNullEventSender sendNullEvents]):
1339         (-[WebNetscapePluginNullEventSender stop]):
1340         * Plugins.subproj/WebNetscapePluginPackage.h: Added.
1341         * Plugins.subproj/WebNetscapePluginPackage.m: Added.
1342         (-[WebNetscapePluginPackage openResourceFile]):
1343         (-[WebNetscapePluginPackage closeResourceFile:]):
1344         (-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
1345         (-[WebNetscapePluginPackage getPluginInfo]):
1346         (-[WebNetscapePluginPackage stringByResolvingSymlinksAndAliasesInPath:]):
1347         (-[WebNetscapePluginPackage initWithPath:]):
1348         (-[WebNetscapePluginPackage load]):
1349         (-[WebNetscapePluginPackage unload]):
1350         (-[WebNetscapePluginPackage NPP_SetWindow]):
1351         (-[WebNetscapePluginPackage NPP_New]):
1352         (-[WebNetscapePluginPackage NPP_Destroy]):
1353         (-[WebNetscapePluginPackage NPP_NewStream]):
1354         (-[WebNetscapePluginPackage NPP_StreamAsFile]):
1355         (-[WebNetscapePluginPackage NPP_DestroyStream]):
1356         (-[WebNetscapePluginPackage NPP_WriteReady]):
1357         (-[WebNetscapePluginPackage NPP_Write]):
1358         (-[WebNetscapePluginPackage NPP_HandleEvent]):
1359         (-[WebNetscapePluginPackage NPP_URLNotify]):
1360         (-[WebNetscapePluginPackage NPP_GetValue]):
1361         (-[WebNetscapePluginPackage NPP_SetValue]):
1362         (-[WebNetscapePluginPackage NPP_Print]):
1363         (-[WebNetscapePluginPackage MIMEToExtensionsDictionary]):
1364         (-[WebNetscapePluginPackage extensionToMIMEDictionary]):
1365         (-[WebNetscapePluginPackage MIMEToDescriptionDictionary]):
1366         (-[WebNetscapePluginPackage name]):
1367         (-[WebNetscapePluginPackage filename]):
1368         (-[WebNetscapePluginPackage path]):
1369         (-[WebNetscapePluginPackage isLoaded]):
1370         (-[WebNetscapePluginPackage pluginDescription]):
1371         (-[WebNetscapePluginPackage description]):
1372         (functionPointerForTVector):
1373         (tVectorForFunctionPointer):
1374         * Plugins.subproj/WebPlugin.h: Removed.
1375         * Plugins.subproj/WebPlugin.m: Removed.
1376         * Plugins.subproj/WebPluginDatabase.h:
1377         * Plugins.subproj/WebPluginDatabase.m:
1378         (+[WebPluginDatabase installedPlugins]):
1379         (-[WebPluginDatabase pluginForMIMEType:]):
1380         (-[WebPluginDatabase pluginForExtension:]):
1381         (-[WebPluginDatabase pluginForFilename:]):
1382         (-[WebPluginDatabase MIMETypes]):
1383         (-[WebPluginDatabase init]):
1384         * Plugins.subproj/WebPluginNullEventSender.h: Removed.
1385         * Plugins.subproj/WebPluginNullEventSender.m: Removed.
1386         * WebCoreSupport.subproj/WebViewFactory.m:
1387         (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
1388         (-[WebViewFactory pluginsInfo]):
1389         (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
1390         * WebKit.pbproj/project.pbxproj:
1391         * WebView.subproj/WebController.m:
1392         (+[WebController canShowMIMEType:]):
1393
1394 2002-10-22  Darin Adler  <darin@apple.com>
1395
1396         * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added missing import.
1397
1398 2002-10-22  Darin Adler  <darin@apple.com>
1399
1400         - fixed 3077305 -- js dialog not yet implemented - crash (fatal error)
1401
1402         * WebCoreSupport.subproj/WebViewFactory.m:
1403         (-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
1404         Create a WebJavaScriptTextInputPanel and run it.
1405
1406         * English.lproj/WebJavaScriptTextInputPanel.nib: Added.
1407         * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.h: Added.
1408         * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added.
1409         * WebKit.pbproj/project.pbxproj: Added 
1410
1411 2002-10-22  Chris Blumenberg  <cblu@apple.com>
1412
1413         Use the mouseDown point instead of the mouseDragged point to determine the mouseOffset when dragging images. When you drag an image now, the point where you clicked is the point where the cursor is in relation to the drag image.
1414
1415         * WebView.subproj/WebHTMLView.m:
1416         (-[WebHTMLView mouseDown:]): retain the mouse down event
1417         (-[WebHTMLView mouseDragged:]): use the mouse down event
1418         * WebView.subproj/WebHTMLViewPrivate.h:
1419         * WebView.subproj/WebHTMLViewPrivate.m:
1420         (-[WebHTMLViewPrivate dealloc]): release the mouse down event
1421
1422 2002-10-21  Darin Adler  <darin@apple.com>
1423
1424         * WebCoreSupport.subproj/WebViewFactory.h: Changed to use new protocol scheme so we
1425         get an error if we forget to implement something.
1426         * WebCoreSupport.subproj/WebViewFactory.m:
1427         (-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]): Stub.
1428
1429 2002-10-21  Richard Williamson   <rjw@apple.com>
1430
1431         More incremental tweaks.  Will be factoring common
1432         handle delegate behavior into base class.
1433         
1434         * Plugins.subproj/WebNetscapePluginStream.m:
1435         (-[WebNetscapePluginStream handle:didReceiveData:]):
1436         (-[WebNetscapePluginStream handleDidFinishLoading:]):
1437         * WebCoreSupport.subproj/WebBridge.m:
1438         (-[WebBridge objectLoadedFromCache:response:size:]):
1439         * WebCoreSupport.subproj/WebSubresourceClient.m:
1440         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
1441         (-[WebSubresourceClient handle:didReceiveData:]):
1442         (-[WebSubresourceClient handleDidFinishLoading:]):
1443         * WebView.subproj/WebControllerPrivate.h:
1444         * WebView.subproj/WebControllerPrivate.m:
1445         (-[WebController _finsishedLoadingResourceFromDataSource:]):
1446
1447 2002-10-21  Trey Matteson  trey@apple.com
1448
1449         Fixed typos and other doc comment errors found during API review.
1450
1451         * WebView.subproj/WebController.h:
1452
1453 2002-10-21  Richard Williamson   <rjw@apple.com>
1454
1455         Changed WebResourceLoadDelegate methods to include an identifier
1456         as first parameter.  This will help clients track callbacks relating
1457         to a particular resource.  Added identifierForInitialRequest:fromDataSource:
1458         so clients can create their own identifier.
1459         
1460         * WebCoreSupport.subproj/WebBridge.m:
1461         (-[WebBridge objectLoadedFromCache:response:size:]):
1462         * WebCoreSupport.subproj/WebSubresourceClient.h:
1463         * WebCoreSupport.subproj/WebSubresourceClient.m:
1464         (-[WebSubresourceClient handle:willSendRequest:]):
1465         (-[WebSubresourceClient handle:didReceiveResponse:]):
1466         (-[WebSubresourceClient handle:didReceiveData:]):
1467         (-[WebSubresourceClient handleDidFinishLoading:]):
1468         (-[WebSubresourceClient handle:didFailLoadingWithError:]):
1469         * WebView.subproj/WebController.m:
1470         (-[WebResourceLoadDelegate identifierForInitialRequest:fromDataSource:]):
1471         (-[WebResourceLoadDelegate resource:willSendRequest:fromDataSource:]):
1472         (-[WebResourceLoadDelegate resource:didReceiveResponse:fromDataSource:]):
1473         (-[WebResourceLoadDelegate resource:didReceiveContentLength:fromDataSource:]):
1474         (-[WebResourceLoadDelegate resource:didFinishLoadingFromDataSource:]):
1475         (-[WebResourceLoadDelegate resource:didFailLoadingWithError:fromDataSource:]):
1476         * WebView.subproj/WebMainResourceClient.h:
1477         * WebView.subproj/WebMainResourceClient.m:
1478         (-[WebMainResourceClient receivedError:forHandle:]):
1479         (-[WebMainResourceClient handleDidFinishLoading:]):
1480         (-[WebMainResourceClient handle:willSendRequest:]):
1481         (-[WebMainResourceClient handle:didReceiveResponse:]):
1482         (-[WebMainResourceClient handle:didReceiveData:]):
1483         (-[WebMainResourceClient handle:didFailLoadingWithError:]):
1484         * WebView.subproj/WebResourceLoadDelegate.h:
1485
1486 2002-10-21  Chris Blumenberg  <cblu@apple.com>
1487
1488         Changed content policy API to pass a response instead of MIME type so client can get the mime type and filename from one class.
1489
1490         * WebView.subproj/WebControllerPolicyDelegate.h:
1491         * WebView.subproj/WebDefaultPolicyDelegate.m:
1492         * WebView.subproj/WebMainResourceClient.m:
1493         (-[WebMainResourceClient handle:didReceiveResponse:]):
1494
1495 2002-10-21  Darin Adler  <darin@apple.com>
1496
1497         - fixed 3080512 -- REGRESSION: moving from old page to new one, we get blank white
1498         before the new one is ready
1499
1500         Roll out a bunch of my changes, because they weren't complete. Added FIXMEs for the
1501         problems I was unsuccessfully trying to fix.
1502
1503         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]):
1504         * WebView.subproj/WebView.m:
1505         (-[WebView initWithFrame:]), (-[WebView isOpaque]), (-[WebView drawRect:]):
1506         Roll back.
1507
1508 2002-10-21  Darin Adler  <darin@apple.com>
1509
1510         - fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll
1511
1512         Once more, with feeling.
1513
1514         * WebView.subproj/WebHTMLView.m:
1515         (-[WebHTMLView _setNeedsLayoutIfSizeChanged:]): Added setNeedsDisplay:YES here. The lack
1516         of this is what caused the bug. But also don't do any work when the size doesn't change.
1517         This prevents this from being called at all in the scrolling case, which is what we want.
1518         (-[WebHTMLView viewWillMoveToSuperview:]): Just the name change.
1519         (-[WebHTMLView layout]): Store the layout size for the above methods.
1520         * WebView.subproj/WebHTMLViewPrivate.h: Add a place to store the size.
1521
1522         * WebView.subproj/WebImageView.m: (-[WebImageView layout]):
1523         Roll this change back in.
1524
1525 2002-10-21  Darin Adler  <darin@apple.com>
1526
1527         - fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll
1528
1529         * WebView.subproj/WebImageView.m: (-[WebImageView layout]):
1530         My change to this caused the regression. Not sure why, but I'll just back out
1531         because the change wasn't important.
1532
1533 2002-10-20  Chris Blumenberg  <cblu@apple.com>
1534
1535         Fixed: 3025847 - Can't use any menu command keys after clicking on a plugin
1536
1537         Don't give plug-ins command-modified keys anymore because the ability wasn't worth the annoyance. If only plug-ins truthfully responded t  events! Anyway, filed 3080103 so that I can look into a way to make this work for everybody.
1538
1539         * Plugins.subproj/WebBaseNetscapePluginView.m:
1540
1541 2002-10-20  Chris Blumenberg  <cblu@apple.com>
1542
1543         Fixed: 3025868 - Plugin context menu disappears then reappears if you click off of it
1544
1545         Also fixed some rare dragging weirdness in WebHTMLView. If you attempted to drag a plug-in after dragging an image, the image would drag again.
1546
1547         * Plugins.subproj/WebBaseNetscapePluginView.m:
1548         (-[WebBaseNetscapePluginView mouseDragged:]): subclass and do nothing to prevent calling mouseDragged in WebHTMLView
1549         (-[WebBaseNetscapePluginView performKeyEquivalent:]): no changes to this method, removed menuForEvent, wasn't needed after all
1550         * Plugins.subproj/WebNetscapePluginStream.m:
1551         (-[WebNetscapePluginStream stop]): minor clean-up
1552
1553 2002-10-20  Darin Adler  <darin@apple.com>
1554
1555         - fixed a minor problem with autorelease I just ran into
1556
1557         * WebView.subproj/WebHTMLViewPrivate.m: (+[WebHTMLView load]):
1558         Create an autorelease pool for the benefit of the class initialize
1559         functions that will be called.
1560
1561 2002-10-20  Chris Blumenberg  <cblu@apple.com>
1562
1563         Fixed 3050010: Should show contextual menu for WebImageView
1564         Also made drags from WebImageView work.
1565
1566         * Misc.subproj/WebNSViewExtras.h:
1567         * Misc.subproj/WebNSViewExtras.m: added _web_setPromisedImageDragImage which does the hackery to extend the promised file drag for images
1568         * WebView.subproj/WebControllerPrivate.h:
1569         * WebView.subproj/WebControllerPrivate.m:
1570         (-[WebController _menuForElement:]): added, gets menu items from delegate and creates menu
1571         * WebView.subproj/WebHTMLView.m:
1572         (-[WebHTMLView menuForEvent:]): simplified, gets element and calls -[WebController _menuForElement:]
1573         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage: when dragging image
1574         * WebView.subproj/WebImageRepresentation.h:
1575         * WebView.subproj/WebImageRepresentation.m:
1576         (-[WebImageRepresentation dealloc]): release the URL
1577         (-[WebImageRepresentation URL]): added so WebImageView can get the URL
1578         (-[WebImageRepresentation setDataSource:]): retain the URL
1579         * WebView.subproj/WebImageView.h: use new drag bools
1580         * WebView.subproj/WebImageView.m:
1581         (-[WebImageView initWithFrame:]): ditto
1582         (-[WebImageView setAcceptsDrags:]): ditto
1583         (-[WebImageView acceptsDrags]): ditto
1584         (-[WebImageView setAcceptsDrops:]): ditto
1585         (-[WebImageView acceptsDrops]): ditto
1586         (-[WebImageView controller]): new
1587         (-[WebImageView menuForEvent:]): new, creates element and calls -[WebController _menuForElement:]
1588         (-[WebImageView mouseDragged:]): drag promised file
1589         (-[WebImageView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage:
1590         (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): new
1591
1592 2002-10-20  Darin Adler  <darin@apple.com>
1593
1594         - fixed a problem where you would get garbage bits when resizing while loading a standalone image
1595
1596         Cleaned up some of the complexity of how we were handling resizing.
1597
1598         * WebView.subproj/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
1599         Do the update twice to properly handle the case where a disappearing scroller makes a second
1600         scroller appear or vice versa.
1601
1602         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]): Remove the code that was trying
1603         to set the setDrawsBackground flag on the scroll view. It was doing it wrong, causing bugs with
1604         drawing non-HTML views while loading. Also, it wasn't working as an optimization, since the
1605         window was still drawing the metallic background behind. We can revisit adding an optimization
1606         at the WebHTMLView level if it creates a measurable speed increase, but we must be careful to
1607         test loading with non-HTML views along with the HTML cases.
1608
1609         * WebView.subproj/WebHTMLView.m:
1610         (-[WebHTMLView _setNeedsLayoutToYes:]): Added. Calls setNeedsLayout:YES.
1611         (-[WebHTMLView viewWillMoveToSuperview:]): Added. Registers so we get _setNeedsLayoutToYes:
1612         calls when the superview's size changes. This allows us to do a layout at all the right times.
1613         (-[WebHTMLView layout]): Call setNeedsDisplay:YES, because if we do a layout without a complete
1614         display the screen will look bad. Also do a reapplyStyles, because if there are pending style
1615         changes we want to apply them before doing a layout since they could affect the layout.
1616         (-[WebHTMLView drawRect:]): Remove the special case that says to always relayout during live
1617         resize, because it works without a special case now. For the other live resize case, turn it from
1618         a special case into a general one. Any time layout is done, make sure to draw the entire view,
1619         not just the passed-in rectangle, and call setNeedsDisplay:NO so we don't do it all over again.
1620
1621         * WebView.subproj/WebImageView.m: (-[WebImageView layout]): Explicitly set frame size to
1622         0,0 when there is no image.
1623
1624         * WebView.subproj/WebView.m: Remove now-unnecessary viewWillStartLiveResize, setFrame:,
1625         viewDidEndLiveResize, isOpaque, and drawRect overrides.
1626         (-[WebView initWithFrame:]): Don't call setDrawsBackground:NO for the reasons above.
1627         Don't set scroll bar visibility because the dynamic scroll bars view handles that already.
1628
1629 2002-10-19  Darin Adler  <darin@apple.com>
1630
1631         - fixed 3073693 -- flash drawn to screen even when window minimized
1632
1633         * Plugins.subproj/WebBaseNetscapePluginView.m:
1634         (-[WebBaseNetscapePluginView start]): Set up additional notifications.
1635         Don't start the null event sender if the window is miniaturized.
1636         (-[WebBaseNetscapePluginView windowDidMiniaturize:]): Stop the null event sender.
1637         (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): Start the null event sender.
1638
1639 2002-10-19  Darin Adler  <darin@apple.com>
1640
1641         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _transitionToCommitted]):
1642         Removed stray printf.
1643
1644 2002-10-18  Richard Williamson   <rjw@apple.com>
1645
1646         Changed name to setUsesBackForwardList: from
1647         setUseBackForwardList.  ditto for useBackForwardList
1648         
1649         * WebView.subproj/WebController.h:
1650         * WebView.subproj/WebController.m:
1651         (-[WebController setUsesBackForwardList:]):
1652         (-[WebController usesBackForwardList]):
1653         * WebView.subproj/WebFramePrivate.m:
1654         (-[WebFrame _transitionToCommitted]):
1655         (-[WebFrame _isLoadComplete]):
1656
1657         Fixed history items that have "untitled" title after
1658         redirect. (3078577).
1659         
1660         * WebView.subproj/WebDataSourcePrivate.m:
1661         (-[WebDataSource _setTitle:]):
1662
1663 2002-10-18  Darin Adler  <darin@apple.com>
1664
1665         * WebView.subproj/WebController.h:
1666         * WebView.subproj/WebController.m:
1667         (-[WebController stringByEvaluatingJavaScriptFromString:]):
1668         Changed to return a string and changed name.
1669
1670 2002-10-18  Darin Adler  <darin@apple.com>
1671
1672         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
1673
1674 2002-10-18  Ken Kocienda  <kocienda@apple.com>
1675
1676         Removed unneeded import of WebFoundation/WebResourceLoadManager.h
1677
1678         * Misc.subproj/WebIconLoader.m
1679
1680 2002-10-18  Darin Adler  <darin@apple.com>
1681
1682         * Makefile.am: Move dependency so clean happens before build.
1683
1684 2002-10-18  Darin Adler  <darin@apple.com>
1685
1686         * force-clean-timestamp: Dependencies don't work well enough, so
1687         we need a clean build here after the WebFoundation domain change.
1688
1689 2002-10-18  Darin Adler  <darin@apple.com>
1690
1691         Update for WebFoundation error domain changes.
1692
1693         * Misc.subproj/WebKitErrors.h: Put WebErrorDomainWebKit in here.
1694         Also remove WebErrorNoError and the WebErrorCode name for the enum.
1695         * WebKit.exp: Export the WebErrorDomainWebKit constant.
1696         * WebView.subproj/WebView.m: Define the WebErrorDomainWebKit.
1697
1698         * WebKit.pbproj/project.pbxproj: Always use WebKit.exp.
1699         * Makefile.am: Don't generate WebKit-combined.exp any more.
1700         * WebKit-tests.exp: Removed.
1701
1702 2002-10-17  Darin Adler  <darin@apple.com>
1703
1704         - fixed 3078644 -- Odd clipping in frame
1705
1706         * WebView.subproj/WebClipView.h: Add hasAdditionalClip and additionalClip methods.
1707         * WebView.subproj/WebClipView.m:
1708         (-[WebClipView resetAdditionalClip]): Add an assertion.
1709         (-[WebClipView setAdditionalClip:]): Ditto.
1710         (-[WebClipView hasAdditionalClip]): Added.
1711         (-[WebClipView additionalClip]): Added.
1712
1713         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView visibleRect]):
1714         Turn off the additional clip while computing our visibleRect. This way, the additional
1715         clip only affects people who ask for the clip view's visibleRect directly, which basically
1716         means just the focus rectangle drawing code we are trying to influence.
1717
1718 2002-10-17  Richard Williamson  <rjw@apple.com>
1719
1720         Support for drawing frame borders (fixes 2982466).
1721         
1722         * WebView.subproj/WebHTMLView.m:
1723         (-[WebHTMLView _drawBorder:]):
1724         (-[WebHTMLView drawRect:]):
1725
1726 2002-10-17  John Sullivan  <sullivan@apple.com>
1727
1728         - added support for bookmark identifiers, to be used for marking
1729         bookmark proxies uniquely (independent of localized title). This
1730         is not the old unique-identifier scheme; now identifiers are optional,
1731         and initially nil, but the client can use them for its own purposes.
1732
1733         * Bookmarks.subproj/WebBookmark.h:
1734         * Bookmarks.subproj/WebBookmark.m:
1735         (-[WebBookmark dealloc]): release identifier
1736         (-[WebBookmark identifier]): return identifier
1737         (-[WebBookmark setIdentifier:]): set identifier
1738         * Bookmarks.subproj/WebBookmarkLeaf.m:
1739         (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
1740         restore identifier
1741         (-[WebBookmarkLeaf dictionaryRepresentation]):
1742         save identifier
1743         (-[WebBookmarkLeaf copyWithZone:]):
1744         copy identifier
1745         * Bookmarks.subproj/WebBookmarkList.m:
1746         (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
1747         restore identifier
1748         (-[WebBookmarkList dictionaryRepresentation]):
1749         save identifier
1750         (-[WebBookmarkList copyWithZone:]):
1751         copy identifier
1752         * Bookmarks.subproj/WebBookmarkPrivate.h:
1753         * Bookmarks.subproj/WebBookmarkProxy.m:
1754         (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
1755         restore identifier
1756         (-[WebBookmarkProxy dictionaryRepresentation]):
1757         save identifier
1758         (-[WebBookmarkProxy copyWithZone:]):
1759         copy identifier
1760
1761 === Alexander-28 ===
1762
1763 2002-10-17  Darin Adler  <darin@apple.com>
1764
1765         - fixed 3062613 -- too many redirects at nytimes.com and apple
1766
1767         Our cookie policy was rejecting the cookies from nytimes.com -- the policy base
1768         URL was still the news.com URL from before the redirect.
1769
1770         * WebView.subproj/WebMainResourceClient.m:
1771         (-[WebMainResourceClient handle:willSendRequest:]):
1772         Update the cookie policy URL when a redirect changes the data source's URL.
1773
1774 2002-10-17  Darin Adler  <darin@apple.com>
1775
1776         - fixed 3077910 -- REGRESSION: download window open at startup time -> no scrollbars
1777
1778         * WebView.subproj/WebDynamicScrollBarsView.m:
1779         (-[WebDynamicScrollBarsView updateScrollers]):
1780         Check for WebDocumentView protocol before making the layout method
1781         call. Prevents exception when WebDynamicScrollBarsView is used with
1782         a document that is not a WebDocumentView.
1783
1784 2002-10-16  Richard Williamson  <rjw@apple.com>
1785
1786         Added some drawing debug code (ifdef excluded).
1787         
1788         * WebView.subproj/WebHTMLView.m:
1789         (-[WebHTMLView drawRect:]):
1790
1791 2002-10-16  Darin Adler  <darin@apple.com>
1792
1793         Fixed anomalies with plugin positioning caused by my switch to
1794         NSViewFocusDidChangeNotification. Turns out that is not sent during
1795         live resize, but we need things to work during live resize.
1796
1797         * Plugins.subproj/WebBaseNetscapePluginView.m:
1798         (-[WebBaseNetscapePluginView start]): Register for changes in the
1799         bounds and frame of all superviews again, instead of using
1800         NSViewFocusDidChangeNotification.
1801
1802 2002-10-16  Richard Williamson  <rjw@apple.com>
1803
1804         Fixed 2969367.  Ensure layout happens before doing check
1805         to determine if scrollbars are needed.  Ahhh, dynamic
1806         scrollbars work so much better now.
1807         
1808         * WebView.subproj/WebDynamicScrollBarsView.m:
1809         (-[WebDynamicScrollBarsView updateScrollers]):
1810
1811 2002-10-16  Darin Adler  <darin@apple.com>
1812
1813         Fixed the problem where we would leave white bits when making the window larger.
1814
1815         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): During live resize,
1816         use the visible rectangle after doing layout, not before.
1817
1818 2002-10-16  Richard Williamson  <rjw@apple.com>
1819
1820         Fixed regression in visited links due to change is semantics of
1821         [dataSource request], added [dataSource _originalRequest].  Items
1822         always need to be added to history with the original request.
1823         
1824         * WebView.subproj/WebDataSource.m:
1825         (-[WebDataSource initWithRequest:]):
1826         * WebView.subproj/WebDataSourcePrivate.h:
1827         * WebView.subproj/WebDataSourcePrivate.m:
1828         (-[WebDataSourcePrivate dealloc]):
1829         (-[WebDataSource _defersCallbacksChanged]):
1830         (-[WebDataSource _originalRequest]):
1831         * WebView.subproj/WebFramePrivate.m:
1832         (-[WebFrame _transitionToCommitted]):
1833
1834 2002-10-16  Darin Adler  <darin@apple.com>
1835
1836         - fixed 3017152 -- intra-page anchors not updating page address field
1837
1838         * WebView.subproj/WebLocationChangeDelegate.h: Rearrange methods so they are
1839         in the order they are delivered. Add locationChangedWithinPageForDataSource method.
1840         Renamed the redirect methods to match the verb tenses used in the others.
1841         Removed the URL parameter from the server redirect method.
1842         * WebView.subproj/WebLocationChangeDelegate.m: Update the class to match the
1843         changes to the protocol.
1844
1845         * WebCoreSupport.subproj/WebBridge.m:
1846         (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
1847         Update for change to clientWillRedirectTo method name.
1848         (-[WebBridge loadURL:]): Call locationChangedWithinPageForDataSource:.
1849
1850         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]):
1851         Update for change to serverRedirectedForDataSource method name.
1852
1853         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseMovedNotification:]):
1854         Remove overzealous assert that was firing for me.
1855
1856         * WebCoreSupport.subproj/WebSubresourceClient.m: Update comment.
1857         * WebView.subproj/WebDataSource.h: Fix comment.
1858
1859 2002-10-15  Darin Adler  <darin@apple.com>
1860
1861         - fixed 3062393 -- need to send proper referrer for "open in new window" menu items and keyboard shortcuts
1862
1863         * WebCoreSupport.subproj/WebBridge.m:
1864         (-[WebBridge createWindowWithURL:frameName:]): Don't take a referrer parameter any more.
1865         Get the referrer by calling to the other side of the bridge, instead.
1866         (-[WebBridge startLoadingResource:withURL:]): Ditto.
1867         (-[WebBridge loadURL:]): Ditto.
1868         (-[WebBridge postWithURL:data:contentType:]): Ditto.
1869         (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
1870         Ditto.
1871
1872         * WebView.subproj/WebDefaultContextMenuDelegate.m:
1873         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]): Don't take a referrer parameter,
1874         which was always nil anyway. Instead, get the referrer from the bridge.
1875         (-[WebDefaultContextMenuDelegate openLinkInNewWindow:]): Don't pass nil for referrer.
1876         (-[WebDefaultContextMenuDelegate openImageInNewWindow:]): Ditto.
1877         (-[WebDefaultContextMenuDelegate openFrameInNewWindow:]): Ditto.
1878
1879         * WebView.subproj/WebHTMLViewPrivate.m:
1880         (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Pass a referrer from the bridge, rather
1881         than nil, for both WebClickPolicyOpenNewWindow and WebClickPolicyOpenNewWindowBehind.
1882
1883         * Plugins.subproj/WebBaseNetscapePluginView.m:
1884         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Add a FIXME.
1885
1886 2002-10-15  Darin Adler  <darin@apple.com>
1887
1888         * WebView.subproj/WebDataSourcePrivate.h: Remove unused stuff.
1889         * WebView.subproj/WebDataSourcePrivate.m: Ditto.
1890
1891 2002-10-15  Darin Adler  <darin@apple.com>
1892
1893         * WebCoreSupport.subproj/WebBridge.m:
1894         (-[WebBridge loadURL:referrer:]): Add a special case for when the URL is the
1895         same as the previous URL for the same frame. This relies on some logic in
1896         KHTML's openURL method that handles this case too.
1897
1898         * WebView.subproj/WebDataSource.m:
1899         (-[WebDataSource initWithRequest:]): Don't bother keeping an inputURL.
1900         (-[WebDataSource URL]): Just return [[self request] URL]. Maybe we can
1901         remove this altogether.
1902         * WebView.subproj/WebDataSourcePrivate.h: Remove inputURL, finalURL.
1903         * WebView.subproj/WebDataSourcePrivate.m:
1904         (-[WebDataSourcePrivate dealloc]): No need to release inputURL, finalURL.
1905         (-[WebDataSource _setURL:]): Used only by the new code above. Makes a copy
1906         of the request, changes the URL, and then drops the old request.
1907         (-[WebDataSource _setRequest:]): Changed to no longer call _setURL. Now
1908         does much of the work that _setURL used to do.
1909
1910 2002-10-15  Darin Adler  <darin@apple.com>
1911
1912         WebKit part of improved frame name support.
1913
1914         * WebView.subproj/WebFrame.m:
1915         (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
1916         Call setName on the newly created part.
1917
1918 2002-10-15  John Sullivan  <sullivan@apple.com>
1919
1920         - fixed 3075777 -- hysteresis for dragging links on web pages
1921         is still too large
1922
1923         * WebView.subproj/WebHTMLView.m: changed hysteresis constants;
1924         added comment.
1925
1926 2002-10-15  Darin Adler  <darin@apple.com>
1927
1928         Fix problem where timer was lasting after window was closed.
1929
1930         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]):
1931         Add a call to [_private->bridge closeURL].
1932
1933 2002-10-15  Richard Williamson  <rjw@apple.com>
1934
1935         Added attributed string to pasteboard.  Fixes 3006760.
1936         We may want to scale back the content that is included in the
1937         attributed string.  Currently all text nodes in the selection
1938         are converted.  This include text nodes for non-visible content,
1939         i.e. scripts.
1940         [Note we may also want to put HTML snippet on the pboard.  The appkit
1941         does support reading text using htmldisplay today.  Of course this should
1942         eventually migrate to use WebView.]
1943         
1944         * WebView.subproj/WebHTMLView.m:
1945         (-[WebHTMLView copy:]):
1946
1947 2002-10-15  Darin Adler  <darin@apple.com>
1948
1949         Fixed bug where URLs dragged to the content area were not made canonical
1950         the way URLs dragged to the page address field are.
1951
1952         * Misc.subproj/WebNSPasteboardExtras.m: (-[NSPasteboard _web_bestURL]):
1953         Make URLs canonical before returning them.
1954
1955 2002-10-15  Chris Blumenberg  <cblu@apple.com>
1956
1957         If a file is renamed during download because a file of the same name already exists, show this in the UI.
1958
1959         * Misc.subproj/WebDownloadHandler.h:
1960         * Misc.subproj/WebDownloadHandler.m:
1961         (-[WebDownloadHandler receivedResponse:]): added, create file here
1962         (-[WebDownloadHandler receivedData:]): don't create file here
1963         * WebView.subproj/WebMainResourceClient.m:
1964         (-[WebMainResourceClient handleDidFinishLoading:]): call [dataSource _setPrimaryLoadComplete:YES] for downloads
1965         (-[WebMainResourceClient handle:didReceiveResponse:]): call [WebDownloadHandler receivedResponse:]
1966         (-[WebMainResourceClient handle:didReceiveData:]): no download error to handle
1967
1968 2002-10-14  Chris Blumenberg  <cblu@apple.com>
1969
1970         - Made all downloads no matter how prompted, pass through the content policy API so the client can properly choose the file name and correct the extension if necessary. We now ask for the content policy even if one has been predetermined. 
1971
1972         * WebView.subproj/WebControllerPolicyDelegate.h:
1973         * WebView.subproj/WebControllerPrivate.h:
1974         * WebView.subproj/WebControllerPrivate.m:
1975         (-[WebController _downloadURL:withContentPolicy:]): Renamed, set the predetermined content policy.
1976         * WebView.subproj/WebDefaultContextMenuDelegate.m:
1977         (-[WebDefaultContextMenuDelegate downloadURL:]): call [WebController _downloadURL:withContentPolicy:]
1978         * WebView.subproj/WebDefaultPolicyDelegate.m:
1979         * WebView.subproj/WebHTMLView.m:
1980         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call [WebController _downloadURL:withContentPolicy:]
1981         * WebView.subproj/WebHTMLViewPrivate.m:
1982         (-[WebHTMLView _continueAfterClickPolicyForEvent:]): call [WebController _downloadURL:withContentPolicy:]
1983         * WebView.subproj/WebMainResourceClient.m:
1984         (-[WebMainResourceClient handle:didReceiveResponse:]): ask for content policy even if one is predetermined
1985
1986 2002-10-14  Chris Blumenberg  <cblu@apple.com>
1987
1988         - Cleaned up download handler and download progress delegate interactions.
1989         - Got rid of error suppression junk.
1990         - Only send 1 final message to the download progress delegate
1991
1992         * WebView.subproj/WebMainResourceClient.h:
1993         * WebView.subproj/WebMainResourceClient.m:
1994         (-[WebMainResourceClient receivedError:forHandle:]): no error suppression
1995         (-[WebMainResourceClient didCancelWithHandle:]): ignore cancel errors because 1 download error is enough
1996         (-[WebMainResourceClient handleDidFinishLoading:]): don't send the special and odd final message to the download progress delegate
1997         (-[WebMainResourceClient handle:didReceiveData:]): no error suppression
1998         (-[WebMainResourceClient handle:didFailLoadingWithError:]): ignore cancel errors because 1 download error is enough
1999
2000 2002-10-14  Darin Adler  <darin@apple.com>
2001
2002         * Bookmarks.subproj/WebBookmark.m:
2003         (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
2004         * Bookmarks.subproj/WebBookmarkLeaf.m:
2005         (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
2006         * Bookmarks.subproj/WebBookmarkList.m:
2007         (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
2008         * Bookmarks.subproj/WebBookmarkProxy.m:
2009         (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
2010         Add checking since we don't "trust" the dictionary passed in.
2011
2012         * History.subproj/WebHistoryItem.m:
2013         (-[WebHistoryItem initFromDictionaryRepresentation:]):
2014         Add FIXME about adding the checking.
2015
2016         * Bookmarks.subproj/WebBookmarkGroup.m:
2017         (-[WebBookmarkGroup initWithFile:]): Use copy, not retain.
2018
2019         * WebView.subproj/WebControllerPrivate.m:
2020         (-[WebControllerPrivate dealloc]): Fix storage leak by releasing
2021         the default context menu delegate.
2022
2023         * WebView.subproj/WebControllerPrivate.h: Tweak.
2024
2025 2002-10-14  Chris Blumenberg  <cblu@apple.com>
2026
2027         Made WebNetscapePluginStream retain a WebNetscapePluginEmbeddedView not a WebBaseNetscapePluginView.
2028
2029         * Plugins.subproj/WebNetscapePluginStream.h:
2030         * Plugins.subproj/WebNetscapePluginStream.m:
2031         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
2032
2033 2002-10-13  Darin Adler  <darin@apple.com>
2034
2035         * English.lproj/StringsNotToBeLocalized.txt: Added strings from WebBookmarkProxy.m.
2036
2037 2002-10-13  Chris Blumenberg  <cblu@apple.com>
2038
2039         - Eliminated the dual-role behavior of WebPluginStream.
2040
2041         Renamed WebPluginStream to WebBaseNetscapePluginStream.
2042         WebNetscapePluginRepresentation, a subclass of WebBaseNetscapePluginStream,
2043         is the document representation for standalone plug-ins.
2044         WebNetscapePluginStream, also a subclass of WebBaseNetscapePluginStream,
2045         is the general plug-in stream loader for embedded plug-ins or plug-in requested streams.
2046
2047         23 plug-in source files with more likely to come!
2048
2049         * Plugins.subproj/WebBaseNetscapePluginStream.h: Added.
2050         * Plugins.subproj/WebBaseNetscapePluginStream.m: Added.
2051         (-[WebBaseNetscapePluginStream dealloc]):
2052         (-[WebBaseNetscapePluginStream setPluginPointer:]):
2053         (-[WebBaseNetscapePluginStream setResponse:]):
2054         (-[WebBaseNetscapePluginStream receivedData:]):
2055         (-[WebBaseNetscapePluginStream receivedError:]):
2056         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
2057         * Plugins.subproj/WebBaseNetscapePluginView.h:
2058         * Plugins.subproj/WebBaseNetscapePluginView.m:
2059         (-[WebBaseNetscapePluginView setWindow]):
2060         (-[WebBaseNetscapePluginView pluginPointer]):
2061         (-[WebBaseNetscapePluginView drawRect:]):
2062         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
2063         * Plugins.subproj/WebNetscapePluginDocumentView.m:
2064         * Plugins.subproj/WebNetscapePluginRepresentation.h: Added.
2065         * Plugins.subproj/WebNetscapePluginRepresentation.m: Added.
2066         (-[WebNetscapePluginRepresentation setDataSource:]):
2067         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
2068         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
2069         (-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
2070         * Plugins.subproj/WebNetscapePluginStream.h: Added.
2071         * Plugins.subproj/WebNetscapePluginStream.m: Added.
2072         (-[WebNetscapePluginStream setCurrentURL:]):
2073         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
2074         (-[WebNetscapePluginStream dealloc]):
2075         (-[WebNetscapePluginStream start]):
2076         (-[WebNetscapePluginStream stop]):
2077         (-[WebNetscapePluginStream loadEnded]):
2078         (-[WebNetscapePluginStream handle:willSendRequest:]):
2079         (-[WebNetscapePluginStream handle:didReceiveResponse:]):
2080         (-[WebNetscapePluginStream handle:didReceiveData:]):
2081         (-[WebNetscapePluginStream handleDidFinishLoading:]):
2082         (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
2083         * Plugins.subproj/WebPluginDatabase.m:
2084         (-[WebNetscapePluginDatabase init]):
2085         * Plugins.subproj/WebPluginStream.h: Removed.
2086         * Plugins.subproj/WebPluginStream.m: Removed.
2087         * WebKit.pbproj/project.pbxproj:
2088
2089 2002-10-11  Richard Williamson   <rjw@apple.com>
2090
2091         More DOM/attributed string work.
2092         
2093         * WebView.subproj/WebHTMLRepresentation.h:
2094         * WebView.subproj/WebHTMLRepresentation.m:
2095         (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
2096         * WebView.subproj/WebHTMLRepresentationPrivate.h:
2097
2098 2002-10-11  Richard Williamson   <rjw@apple.com>
2099
2100         * WebView.subproj/WebHTMLRepresentation.m:
2101         * WebView.subproj/WebHTMLRepresentationPrivate.h:
2102
2103 2002-10-11  Ken Kocienda  <kocienda@apple.com>
2104
2105         Fixed uninitialized variable build breaker I got when
2106         doing a Deployment build.
2107
2108         * Bookmarks.subproj/WebBookmarkGroup.m:
2109         (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
2110
2111 2002-10-11  John Sullivan  <sullivan@apple.com>
2112
2113         Added the concept of bookmark proxies; items that can be
2114         stored and displayed with other bookmarks but represent
2115         a source of bookmark-like items (e.g. Rendezvous, History)
2116
2117         * Bookmarks.subproj/WebBookmarkProxy.h: Added.
2118         * Bookmarks.subproj/WebBookmarkProxy.m: Added.
2119         (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
2120         (-[WebBookmarkProxy dictionaryRepresentation]):
2121         (-[WebBookmarkProxy bookmarkType]):
2122         (-[WebBookmarkProxy copyWithZone:]):
2123         (-[WebBookmarkProxy title]):
2124         (-[WebBookmarkProxy setTitle:]):
2125         (-[WebBookmarkProxy icon]):
2126         New class, has a title and that's about it
2127
2128         * Bookmarks.subproj/WebBookmark.h:
2129         * Bookmarks.subproj/WebBookmark.m:
2130         (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
2131         Handle proxy case
2132
2133         * Bookmarks.subproj/WebBookmarkGroup.m:
2134         (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
2135         Handle proxy case
2136
2137         * Bookmarks.subproj/WebBookmarkList.m:
2138         (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]),
2139         (-[WebBookmarkList dictionaryRepresentation]):
2140         Handle proxy case
2141
2142         * Bookmarks.subproj/WebBookmarkPrivate.h:
2143         Add #define for proxy
2144
2145         * WebKit.pbproj/project.pbxproj: updated for new files
2146
2147 2002-10-11  Chris Blumenberg  <cblu@apple.com>
2148
2149         Thought I has checking for nil enough, but not enough as I raised an exception on Avie's machine.
2150
2151         * Plugins.subproj/WebPlugin.m:
2152         (-[WebNetscapePlugin getPluginInfo]): check for the nil extension case
2153
2154 2002-10-11  Darin Adler  <darin@apple.com>
2155
2156         Apply a simplified technique I learned while working on the Favorites button
2157         class in the browser code.
2158
2159         * Plugins.subproj/WebBaseNetscapePluginView.m:
2160         (-[WebBaseNetscapePluginView start]): Use the NSViewFocusDidChangeNotification
2161         to track the plugin rectangles instead of the NSViewFrameDidChangeNotification
2162         and NSViewBoundsDidChangeNotification on all the superviews.
2163
2164 2002-10-11  John Sullivan  <sullivan@apple.com>
2165
2166         * Resources/url_icon.tiff: new generic URL icon -- no more @!
2167
2168 2002-10-10  Darin Adler  <darin@apple.com>
2169
2170         - fixed 3069366 -- REGRESSION: no pop-up window at inkfinder.com
2171
2172         The window now pops up, but it doesn't seem to work right. But I
2173         think the window working right is a separate issue.
2174
2175         * WebView.subproj/WebMainResourceClient.m:
2176         (-[WebMainResourceClient handle:willSendRequest:]): Make sure we
2177         use the copy of the request that we're keeping around when we call
2178         _setRequest on the data source, rather than the copy we're returning
2179         which can be modified by WebFoundation. Also rearrange things so we're
2180         more likely to get things right when the delegate changes the URL on
2181         the request.
2182
2183 2002-10-10  Chris Blumenberg  <cblu@apple.com>
2184
2185         No need to send update event when activating/deactivating.
2186         This was as old workaround for the plug-in drawing problems.
2187
2188         * Plugins.subproj/WebBaseNetscapePluginView.m:
2189         (-[WebBaseNetscapePluginView windowBecameKey:]):
2190         (-[WebBaseNetscapePluginView windowResignedKey:]):
2191
2192 === Alexander-27 ===
2193
2194 2002-10-10  Darin Adler  <darin@apple.com>
2195
2196         - fixed 3071799 -- REGRESSION: hang and strange download loading about:blank
2197
2198         Chris fixed the strange download earlier. This fixes the "hang' by making sure
2199         we commit even if we receive 0 bytes of data.
2200
2201         * WebView.subproj/WebDataSourcePrivate.h: Added a _finishedLoading method.
2202         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _finishedLoading]):
2203         Added. Sets the "first byte of data received" flag, and calls _commitIfReady.
2204         * WebView.subproj/WebMainResourceClient.m:
2205         (-[WebMainResourceClient handleDidFinishLoading:]): Call _finishedLoading.
2206
2207 2002-10-10  Darin Adler  <darin@apple.com>
2208
2209         - fixed 3072015 -- REGRESSION: frames multiply endlessly
2210
2211         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setFrame:]):
2212         Remove code that sets the parent from here, because it's too early, always nil.
2213         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _addChild:]):
2214         Do it here instead.
2215
2216 2002-10-09  Richard Williamson   <rjw@apple.com>
2217
2218         * WebCoreSupport.subproj/WebSubresourceClient.m:
2219         (-[WebSubresourceClient handleDidFinishLoading:]):
2220         * WebKit.exp:
2221         * WebView.subproj/WebController.m:
2222         (-[WebResourceLoadDelegate resourceRequest:willSendRequest:fromDataSource:]):
2223         (-[WebResourceLoadDelegate resourceRequest:didReceiveResponse:fromDataSource:]):
2224         (-[WebResourceLoadDelegate resourceRequest:didReceiveContentLength:fromDataSource:]):
2225         (-[WebResourceLoadDelegate resourceRequest:didFinishLoadingFromDataSource:]):
2226         (-[WebResourceLoadDelegate resourceRequest:didFailLoadingWithError:fromDataSource:]):
2227         * WebView.subproj/WebMainResourceClient.m:
2228         (-[WebMainResourceClient handleDidFinishLoading:]):
2229         * WebView.subproj/WebResourceLoadDelegate.h:
2230
2231 2002-10-09  John Sullivan  <sullivan@apple.com>
2232
2233         - removed unnecessary concept of unique identifiers for bookmarks
2234
2235         * Bookmarks.subproj/WebBookmark.h:
2236         * Bookmarks.subproj/WebBookmark.m:
2237         (-[WebBookmark dealloc]):
2238         (-[WebBookmark _setGroup:]):
2239         * Bookmarks.subproj/WebBookmarkGroup.h:
2240         * Bookmarks.subproj/WebBookmarkGroup.m:
2241         * Bookmarks.subproj/WebBookmarkGroupPrivate.h:
2242         removed all references to unique identifiers
2243
2244 2002-10-09  Darin Adler  <darin@apple.com>
2245
2246         WebKit support for creating windows and then showing them later
2247         after setting them up.
2248
2249         * WebCoreSupport.subproj/WebBridge.m:
2250         (-[WebBridge createWindowWithURL:referrer:frameName:]): Replaced the old
2251         openNewWindowWithURL with this. It calls the new window operations delegate
2252         method.
2253         (-[WebBridge showWindow]): Added. Calls the window operations delegate showWindow method.
2254         (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
2255         Call _createFrameNamed instead of createFrameNamed.
2256
2257         * WebView.subproj/WebWindowOperationsDelegate.h: Replaced the openNewWindowWithURL
2258         method with a new method named createWindowWithURL. Added showWindow and showWindowBehindFrontmost.
2259
2260         * WebView.subproj/WebControllerPrivate.h: Renamed createFrameNamed to _createFrameNamed
2261         and removed the data source parameter. Added _openNewWindowWithURL:referrer:behind:
2262         for the convenience of those who used to call the window operations delegate directly
2263         to open the window.
2264         * WebView.subproj/WebControllerPrivate.m:
2265         (-[WebController _createFrameNamed:inParent:allowsScrolling:]): Renamed, and removed
2266         the data source parameter.
2267         (-[WebController _openNewWindowWithURL:referrer:behind:]): Added.
2268
2269         * Plugins.subproj/WebBaseNetscapePluginView.m:
2270         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
2271         * WebView.subproj/WebDefaultContextMenuDelegate.m:
2272         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
2273         * WebView.subproj/WebFrame.m: (-[WebFrame frameNamed:]):
2274         * WebView.subproj/WebHTMLViewPrivate.m:
2275         (-[WebHTMLView _continueAfterClickPolicyForEvent:]):
2276         Use a private WebController method instead of calling the delegate directly,
2277         because it now takes two method calls to create and display a new window.
2278
2279         * Misc.subproj/WebNSViewExtras.m:
2280         * WebCoreSupport.subproj/WebSubresourceClient.m:
2281         * WebView.subproj/WebController.m:
2282         * WebView.subproj/WebDataSource.m:
2283         * WebView.subproj/WebFramePrivate.m:
2284         * WebView.subproj/WebHTMLView.m:
2285         * WebView.subproj/WebMainResourceClient.m:
2286         * WebView.subproj/WebPreferences.m:
2287         * WebView.subproj/WebView.m:
2288         * WebView.subproj/WebViewPrivate.m:
2289         Tweaked comments.
2290
2291 2002-10-09  Darin Adler  <darin@apple.com>
2292
2293         * WebCoreSupport.subproj/WebImageRenderer.m:
2294         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
2295         Fix positioning of progressively loading images that are flipped.
2296
2297 2002-10-09  Darin Adler  <darin@apple.com>
2298
2299         - fixed 3069764 -- REGRESSION: Plug-ins sometimes don't respond to
2300         update events, causes disappearing
2301
2302         * Plugins.subproj/WebBaseNetscapePluginView.m:
2303         (-[WebBaseNetscapePluginView drawRect:]): Set the visible region of the port to the
2304         port bounds to work around the fact that NSWindow tries to help us by doing a
2305         BeginUpdate call. This ensures we can draw where we think we are dirty, not just
2306         where Carbon thinks we are dirty.
2307
2308         * Plugins.subproj/WebNetscapePluginDocumentView.m: Tweak includes.
2309         * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Tweak includes.
2310         * WebCoreSupport.subproj/WebBridge.m:
2311         (-[WebBridge openNewWindowWithURL:referrer:frameName:]): Tweak.
2312
2313         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2314
2315 2002-10-08  Darin Adler  <darin@apple.com>
2316
2317         Make WebFrame do the entire frame hierarchy, instead of having the
2318         parent and child pointers in the data source.
2319
2320         * WebCoreSupport.subproj/WebBridge.m:
2321         (-[WebBridge childFrames]): Get children from the frame, not the data source.
2322         (-[WebBridge setFrame:]): Do the setParent: call on the bridge here, instead of
2323         in dataSourceChanged, since the parent relationship is now established even without
2324         having the data source.
2325         (-[WebBridge dataSourceChanged]): Remove the setParent: call.
2326         (-[WebBridge loadRequest:]): Remove the parent parameter. It's already set up at
2327         this point so we don't need to set it.
2328         (-[WebBridge loadURL:referrer:]): Don't pass a parent.
2329         (-[WebBridge postWithURL:referrer:data:contentType:]): Don't pass a parent.
2330         (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
2331         Don't pass a parent.
2332         (-[WebBridge addBackForwardItemWithURL:anchor:]): Get the parent frame by just calling
2333         the parent method instead of the more roundabout way that it was doing it before.
2334
2335         * WebView.subproj/WebController.m:
2336         (-[WebController _frameForDataSource:fromFrame:]): Get the children list from the frame,
2337         no need to ask the data source. And no need to deal with the provisional data source, since
2338         those can't have children any more.
2339         (-[WebController _frameForView:fromFrame:]): Ditto.
2340
2341         * WebView.subproj/WebControllerPrivate.h: Change parent parameter when creating a new
2342         frame to be a frame, not a data source.
2343         * WebView.subproj/WebControllerPrivate.m:
2344         (-[WebControllerPrivate _clearControllerReferences:]): Get the children list from the frame.
2345         (-[WebControllerPrivate dealloc]): Rename the _reset method _controllerWillBeDeallocated
2346         to be more concrete. More simplification can happen here later.
2347         (-[WebController createFrameNamed:for:inParent:allowsScrolling:]): Call _addChild on the
2348         parent frame rather than calling addFrame on the parent data source.
2349
2350         * WebView.subproj/WebDataSource.h: Remove the parent, children, frameNamed, frameNames, and
2351         frameExists methods.
2352         * WebView.subproj/WebDataSource.m:
2353         (-[WebDataSource controller]): Remove the assertion here about parents, since we don't have
2354         a parent pointer any more.
2355         (-[WebDataSource isLoading]): Get the list of children from the frame.
2356
2357         * WebView.subproj/WebDataSourcePrivate.h: Remove the parent pointer and the frames dictionary,
2358         also remove the _setParent: and addFrame: methods.
2359         * WebView.subproj/WebDataSourcePrivate.m:
2360         (-[WebDataSourcePrivate dealloc]): Don't release the frames list.
2361         (-[WebDataSource _recursiveStopLoading]): Get the frames list from the frame.
2362         (-[WebDataSource _layoutChildren]): Ditto.
2363         (-[WebDataSource _defersCallbacksChanged]): Ditto.
2364
2365         * WebView.subproj/WebFrame.h: Add parent and children methods.
2366         * WebView.subproj/WebFrame.m:
2367         (-[WebFrame dealloc]): Call _detachFromParent.
2368         (-[WebFrame setProvisionalDataSource:]): Set the encoding of the data source to match
2369         the encoding of the parent's data source. This used to be done in [WebDataSource _setParent:].
2370         Further simplification can probably be done here.
2371         (-[WebFrame reload]): Remove the call to [WebDataSource _setParent:].
2372         (+[WebFrame _frameNamed:fromFrame:]): Get the children from the frame.
2373         (-[WebFrame frameNamed:]): Get the parent from the frame.
2374         (-[WebFrame parent]): Added.
2375         (-[WebFrame children]): Added.
2376
2377         * WebView.subproj/WebFramePrivate.h: Added parent and children fields, changed reset to
2378         _controllerWillBeDeallocated, changed _parentDataSourceWillBeDeallocated to _detachFromParent,
2379         added _addChild method. Further simplification can probably be done here.
2380         * WebView.subproj/WebFramePrivate.m:
2381         (-[WebFramePrivate dealloc]): Release the children array.
2382         (-[WebFrame _controllerWillBeDeallocated]): Renamed from reset. Now just calls _detachFromParent.
2383         (-[WebFrame _detachFromParent]): Does all the work that reset and _parentDataSourceWillBeDeallocated
2384         used to do.
2385         (-[WebFrame _setDataSource:]): Call _detachFromParent on all the children and release them
2386         before setting up the new data source.
2387         (-[WebFrame _transitionToCommitted]): Get the parent from self instead of the data source.
2388         (-[WebFrame _isLoadComplete]): Ditto.
2389         (+[WebFrame _recursiveCheckCompleteFromFrame:]): Get the children from self instead of the data source.
2390         (-[WebFrame _textSizeMultiplierChanged]): Ditto.
2391         (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Remove the call to [WebDataSource _setParent:].
2392         (-[WebFrame _addChild:]): Added. Puts the child in a children list, and also sets the override
2393         encoding of the child based on our data source's override encoding.
2394
2395 2002-10-08  John Sullivan  <sullivan@apple.com>
2396
2397         * WebKit.pbproj/project.pbxproj:
2398         Project Builder says I changed it only by setting
2399         "hasScannedForEncodings" to 1 -- version wars again?
2400
2401 2002-10-08  Richard Williamson   <rjw@apple.com>
2402
2403         Removed unnecessary (and incorrect) include.
2404         The *.m files in DOM.subproj might be removed,
2405         they are empty now.
2406         
2407         * DOM.subproj/WebDOMDocument.m:
2408
2409 2002-10-08  Richard Williamson   <rjw@apple.com>
2410
2411         Added selection API.
2412         
2413         * WebView.subproj/WebHTMLRepresentation.h:
2414         * WebView.subproj/WebHTMLRepresentation.m:
2415         (-[WebHTMLRepresentation setSelectionFrom:startOffset:to:endOffset:]):
2416
2417 2002-10-08  Richard Williamson   <rjw@apple.com>
2418
2419         Add accessor for DOM document.
2420         
2421         * WebKit.pbproj/project.pbxproj:
2422         * WebView.subproj/WebHTMLRepresentation.h:
2423         * WebView.subproj/WebHTMLRepresentation.m:
2424         (-[WebHTMLRepresentation DOMDocument]):
2425
2426 2002-10-08  Richard Williamson   <rjw@apple.com>
2427
2428         Made getAttributeNodeNamed match spec, changed
2429         to getAttributeNode.
2430          
2431         * DOM.subproj/WebDOMElement.h:
2432
2433 2002-10-08  John Sullivan  <sullivan@apple.com>
2434
2435         - WebKit part of fix for 3069150 -- eliminate "separator"
2436         feature from Bookmarks
2437
2438         * Bookmarks.subproj/WebBookmarkSeparator.h: Removed.
2439         * Bookmarks.subproj/WebBookmarkSeparator.m: Removed.
2440         Removed class
2441
2442         * Bookmarks.subproj/WebBookmark.h:
2443         * Bookmarks.subproj/WebBookmark.m:
2444         (+[WebBookmark bookmarkOfType:]):
2445         (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
2446         * Bookmarks.subproj/WebBookmarkGroup.m:
2447         (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
2448         * Bookmarks.subproj/WebBookmarkList.m:
2449         (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
2450         * Bookmarks.subproj/WebBookmarkPrivate.h:
2451         * English.lproj/StringsNotToBeLocalized.txt:
2452         Removed all references to class.
2453
2454         * WebKit.pbproj/project.pbxproj: Updated for removed files.
2455
2456 2002-10-08  Richard Williamson   <rjw@apple.com>
2457
2458         Fixes to the DOM API.
2459         
2460         * DOM.subproj/WebDOMDocument.h:
2461         * DOM.subproj/WebDOMDocument.m:
2462         * DOM.subproj/WebDOMNode.h:
2463         * DOM.subproj/WebDOMNode.m:
2464         * DOM.subproj/WebDOMNamedNodeMap.h: Removed.
2465         * DOM.subproj/WebDOMNamedNodeMap.m: Removed.
2466         * WebKit.pbproj/project.pbxproj:
2467
2468 2002-10-08  Ken Kocienda  <kocienda@apple.com>
2469
2470         Use WebFrameLoadType variable to set the request cache policy for the WebResourceRequest.
2471         This will help us to provide cached results for POST requests when the user navigates
2472         using the back/forward list or history for navigation, while making sure we do not
2473         use cached results when the user pokes the submit button for a form they have
2474         submitted previously.
2475
2476         * WebView.subproj/WebFramePrivate.m:
2477         (-[WebFrame _goToItem:withFrameLoadType:])
2478
2479 2002-10-08  Chris Blumenberg  <cblu@apple.com>
2480
2481         Moved assumption that a resource without a content type or extension is HTML to WebFoundation.
2482
2483         * WebView.subproj/WebMainResourceClient.m:
2484         (-[WebMainResourceClient handle:didReceiveResponse:]):
2485
2486 2002-10-08  Chris Blumenberg  <cblu@apple.com>
2487
2488         Minor plug-in code clean-up.
2489
2490         * Plugins.subproj/WebBaseNetscapePluginView.m:
2491         (-[WebBaseNetscapePluginView sendActivateEvent:]):
2492         (-[WebBaseNetscapePluginView sendUpdateEvent]):
2493         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
2494         * Plugins.subproj/WebPluginStream.m:
2495         (-[WebNetscapePluginStream receivedData:]):
2496
2497 2002-10-08  Chris Blumenberg  <cblu@apple.com>
2498
2499         Partial fix for 2967073 - should open all TEXT type files, at least
2500
2501         * WebView.subproj/WebControllerPrivate.m:
2502         (+[WebController _MIMETypeForFile:]): Sniff for HTML in the fail case.
2503
2504 2002-10-07  Darin Adler  <darin@apple.com>
2505
2506         WebKit part of implementation of multipart forms posting.
2507
2508         * WebCoreSupport.subproj/WebBridge.m:
2509         (-[WebBridge postWithURL:referrer:data:contentType:]):
2510         Add a contentType parameter to match change in WebCore API.
2511         Put the contentType value into the request.
2512
2513 2002-10-07  Chris Blumenberg  <cblu@apple.com>
2514
2515         Icing fix for: 3063517 - crash loading .png in separate window
2516         
2517         * Plugins.subproj/WebPluginDatabase.m:
2518         (-[WebNetscapePluginDatabase init]): Don't override document view and rep
2519         types for types that have already been registered. 
2520
2521 2002-10-07  Darin Adler  <darin@apple.com>
2522
2523         WebKit part of the page up/down fix.
2524
2525         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView scrollPoint:]):
2526         If we are called from the handling of a page up or page down keyboard
2527         event, then ignore the specific scrolling requested, and do our idea of
2528         page up and page down. This guarantees that we will get the smarter
2529         idea of how to page from WebView instead of the one that's hardcoded
2530         into NSTextView.
2531
2532         * WebView.subproj/WebView.m: (-[WebView keyDown:]): Use scrollPageUp:,
2533         scrollPageDown:, scrollLineUp:, and scrollLineDown: instead of _pageUp,
2534         _pageDown, _lineUp, and _lineDown. This lets other classes see and use
2535         these selectors, which is useful when passing calls up the responder chain.
2536         * WebView.subproj/WebViewPrivate.h: Remove the private methods that are
2537         being changed to match the NSResponder keyboard methods.
2538         * WebView.subproj/WebViewPrivate.m:
2539         (-[WebView scrollPageUp:]): Rename from _pageUp, and also pass a scrollPageUp:
2540         selector along the responder chain if we are already scrolled to the top.
2541         (-[WebView scrollPageDown:]): Ditto.
2542         (-[WebView scrollLineUp:]): Rename from _lineUp.
2543         (-[WebView scrollLineDown:]): Rename from _lineDown.
2544
2545 2002-10-07  Richard Williamson   <rjw@apple.com>
2546
2547         'Re'play the delegate messages when an item is loaded from
2548         the WebCore cache.
2549
2550         Note that the client will NOT receive a willSendRequest: message.  The client
2551         presumably already did any request substitution before the object was loaded 
2552         into the cache.  Allowing the delegate to override the request and replace
2553         the object in the WebCore cache would introduce significant complexity.
2554         
2555         Fixes 3069138.
2556         
2557         * WebCoreSupport.subproj/WebBridge.m:
2558         (-[WebBridge objectLoadedFromCache:response:size:]):
2559         * WebCoreSupport.subproj/WebSubresourceClient.m:
2560         (-[WebSubresourceClient handle:didReceiveResponse:]):
2561
2562 2002-10-05  Darin Adler  <darin@apple.com>
2563
2564         - fixed 3068323 -- nil object inserted in dictionary exception on mouse move
2565
2566         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
2567         Add some assertions in the hope of finding if my assumptions about this are
2568         wrong, and use the version of the dictionary setter that does nothing if it's
2569         passed nil when putting in the frame found by name.
2570
2571 2002-10-04  Darin Adler  <darin@apple.com>
2572
2573         * English.lproj/StringsNotToBeLocalized.txt: Add a localization
2574         exception for the WebKit bundle identifier.
2575
2576 2002-10-04  Darin Adler  <darin@apple.com>
2577
2578         * Misc.subproj/WebKitLocalizableStrings.m: Added.
2579         Contains the definition of the WebKitLocalizableStringsBundle.
2580         * WebKit.pbproj/project.pbxproj: Add -DFRAMEWORK_NAME=WebKit.
2581
2582 2002-10-04  Richard Williamson   <rjw@apple.com>
2583
2584         Stubs for DOM level 2 core API.
2585         
2586         * DOM.subproj/WebDOMDocument.h: Added.
2587         * DOM.subproj/WebDOMDocument.m: Added.
2588         * DOM.subproj/WebDOMElement.h: Added.
2589         * DOM.subproj/WebDOMElement.m: Added.
2590         * DOM.subproj/WebDOMNamedNodeMap.h: Added.
2591         * DOM.subproj/WebDOMNamedNodeMap.m: Added.
2592         * DOM.subproj/WebDOMNode.h: Added.
2593         * DOM.subproj/WebDOMNode.m: Added.
2594         * WebKit.pbproj/project.pbxproj:
2595         
2596         * WebView.subproj/WebHTMLViewPrivate.m: tweak.
2597
2598 2002-10-04  Darin Adler  <darin@apple.com>
2599
2600         * English.lproj/StringsNotToBeLocalized.txt: Add the last few exceptions.
2601         We now have a completely-clean run of extract-localizable-strings in WebKit!
2602
2603 2002-10-04  Darin Adler  <darin@apple.com>
2604
2605         - fixed 3060140 -- REGRESSION: frames of animated gif drawn in wrong position.
2606
2607         I got the "fromRect" and "toRect" parameters backwards when I made the changes
2608         to fix bug 3050810.
2609
2610         * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer nextFrame:]):
2611         Reverse targetRect and imageRect.
2612
2613         * WebKit.pbproj/project.pbxproj: Mark some new files as UTF-8 because Project
2614         Builder asked me to.
2615
2616 2002-10-04  Darin Adler  <darin@apple.com>
2617
2618         * Panels.subproj/WebPanelCookieAcceptHandler.h: Removed.
2619         * Panels.subproj/WebPanelCookieAcceptHandler.m: Removed.
2620
2621 2002-10-04  Richard Williamson   <rjw@apple.com>
2622
2623         Danger Will Robinson.  We have to poseAsClass: as early as possible
2624         so that any NSViews will be created with the appropriate poser.
2625         This problem manifested itself with SimpleViewer failing
2626         immediately.  NSViews were created by loading a nib before
2627         WebHTMLView class initialization occured.  After posing the
2628         already instantiated instances of NSView had a %NSView class,
2629         causing many things to break.
2630         
2631         * WebView.subproj/WebHTMLViewPrivate.m:
2632         (+[WebHTMLView load]):
2633
2634 2002-10-04  Richard Williamson   <rjw@apple.com>
2635
2636         Ensure that we return non-nil request  from handle:willSendRequest:
2637         even when WK's laod delegate is nil.
2638         
2639         * WebCoreSupport.subproj/WebSubresourceClient.m:
2640         (-[WebSubresourceClient handle:willSendRequest:]):
2641         * WebView.subproj/WebMainResourceClient.m:
2642         (-[WebMainResourceClient handle:willSendRequest:]):
2643
2644 2002-10-04  Darin Adler  <darin@apple.com>
2645
2646         * Panels.subproj/WebAuthenticationPanel.m:
2647         (-[WebAuthenticationPanel loadNib]): Use ERROR instead of NSLog here.
2648         (-[WebAuthenticationPanel setUpForRequest:]): Mark some strings for localization.
2649
2650         * WebKit.pbproj/project.pbxproj: Change the encoding on a lot more files to UTF-8.
2651
2652         * English.lproj/StringsNotToBeLocalized.txt: Added some new exceptions.
2653         * English.lproj/Localizable.strings: Re-generated.
2654
2655 2002-10-04  Richard Williamson   <rjw@apple.com>
2656
2657         Changed WebDOMNode name to WebDebugDOMNode to make room for
2658         real node.
2659         
2660         * WebKit.exp:
2661         * WebKit.pbproj/project.pbxproj:
2662         * WebView.subproj/WebDOMNode.h: Removed.
2663         * WebView.subproj/WebDOMNode.m: Removed.
2664
2665 2002-10-04  Richard Williamson   <rjw@apple.com>
2666
2667         * WebKit.pbproj/project.pbxproj:
2668
2669 2002-10-03  Richard Williamson   <rjw@apple.com>
2670
2671         Changed name of controller's resourceProgressDelegate methods to resourceLoadDelegate.
2672
2673         * WebCoreSupport.subproj/WebSubresourceClient.m:
2674         (-[WebSubresourceClient initWithLoader:dataSource:]):
2675         (-[WebSubresourceClient handle:didReceiveResponse:]):
2676         (-[WebSubresourceClient handle:didReceiveData:]):
2677         (-[WebSubresourceClient handleDidFinishLoading:]):
2678         (-[WebSubresourceClient handle:didFailLoadingWithError:]):
2679         * WebView.subproj/WebController.h:
2680         * WebView.subproj/WebController.m:
2681         (-[WebController setResourceLoadDelegate:]):
2682         (-[WebController resourceLoadDelegate]):
2683         (-[WebController setDownloadDelegate:]):
2684         (-[WebController downloadDelegate]):
2685         * WebView.subproj/WebMainResourceClient.m:
2686         (-[WebMainResourceClient initWithDataSource:]):
2687         (-[WebMainResourceClient handle:didReceiveResponse:]):
2688
2689 2002-10-03  Richard Williamson   <rjw@apple.com>
2690
2691         Always call resourceRequest:willSendRequest: on resourceProgressDelegate.
2692          
2693         * WebView.subproj/WebMainResourceClient.m:
2694         (-[WebMainResourceClient handle:willSendRequest:]):
2695
2696 2002-10-03  Richard Williamson   <rjw@apple.com>
2697
2698         Add calls to downloadProgressDelegate.
2699         
2700         * WebView.subproj/WebMainResourceClient.m:
2701         (-[WebMainResourceClient handle:willSendRequest:]):
2702         (-[WebMainResourceClient handle:didReceiveResponse:]):
2703         (-[WebMainResourceClient handle:didReceiveData:]):
2704         (-[WebMainResourceClient handle:didFailLoadingWithError:]):
2705
2706 2002-10-03  Richard Williamson   <rjw@apple.com>
2707
2708         
2709         * WebCoreSupport.subproj/WebBridge.m:
2710         (-[WebBridge objectLoadedFromCache:size:]):
2711         Hack to prevent handle creation with nil delegate,
2712         still perform frame complete check.
2713         
2714         * WebView.subproj/WebMainResourceClient.m:
2715         (-[WebMainResourceClient initWithDataSource:]):
2716         Removed unused code.
2717         
2718         (-[WebMainResourceClient handle:willSendRequest:]):
2719         Copy the request, ugh.
2720
2721 2002-10-03  Darin Adler  <darin@apple.com>
2722
2723         Add API for executing JavaScript.
2724
2725         * WebView.subproj/WebController.h: Add method.
2726         * WebView.subproj/WebController.m:
2727         (-[WebController executeJavaScriptFromString:]): Call through to
2728         WebCore to do the heavy lifting.
2729
2730 2002-10-03  Darin Adler  <darin@apple.com>
2731
2732         * English.lproj/Localizable.strings: Generated by the script.
2733         * English.lproj/StringsNotToBeLocalized.txt: Added many more strings to ignore.
2734         * English.lproj/WebError.strings: Removed.
2735
2736         * WebView.subproj/WebDefaultContextMenuDelegate.m:
2737         * WebView.subproj/WebView.m:
2738         Use UI_STRING instead of NSLocalizedString.
2739
2740         * WebKit.pbproj/project.pbxproj: Changed encodings of some files to UTF-8.
2741         Removed WebError.strings.
2742
2743 2002-10-03  Richard Williamson   <rjw@apple.com>
2744
2745         Renamed WebResourceProgressDelegate.h to WebResourceLoadDelegate.h
2746
2747         * Misc.subproj/WebKit.h:
2748         * WebCoreSupport.subproj/WebSubresourceClient.m:
2749         * WebKit.pbproj/project.pbxproj:
2750         * WebView.subproj/WebController.m:
2751         * WebView.subproj/WebControllerPrivate.m:
2752         * WebView.subproj/WebMainResourceClient.m:
2753         * WebView.subproj/WebResourceLoadDelegate.h:
2754         * WebView.subproj/WebResourceProgressDelegate.h: Removed.
2755
2756 2002-10-03  Richard Williamson   <rjw@apple.com>
2757
2758         Changed to reflect new WebResourceLoadDelegate API.
2759
2760         * Misc.subproj/WebIconLoader.m:
2761         * Misc.subproj/WebKit.h:
2762         * Plugins.subproj/WebPluginStream.m:
2763         (-[WebNetscapePluginStream handle:didReceiveData:]):
2764         (-[WebNetscapePluginStream handleDidFinishLoading:]):
2765         (-[WebNetscapePluginStream cancel]):
2766         (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
2767         * WebCoreSupport.subproj/WebBridge.m:
2768         (-[WebBridge objectLoadedFromCache:size:]):
2769         (-[WebBridge reportBadURL:]):
2770         * WebCoreSupport.subproj/WebSubresourceClient.h:
2771         * WebCoreSupport.subproj/WebSubresourceClient.m:
2772         (-[WebSubresourceClient initWithLoader:dataSource:]):
2773         (-[WebSubresourceClient dealloc]):
2774         (-[WebSubresourceClient receivedProgressWithComplete:]):
2775         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
2776         (-[WebSubresourceClient receivedError:]):
2777         (-[WebSubresourceClient handle:willSendRequest:]):
2778         (-[WebSubresourceClient handle:didReceiveResponse:]):
2779         (-[WebSubresourceClient handle:didReceiveData:]):
2780         (-[WebSubresourceClient handleDidFinishLoading:]):
2781         (-[WebSubresourceClient handle:didFailLoadingWithError:]):
2782         (-[WebSubresourceClient cancel]):
2783         * WebKit.exp:
2784         * WebKit.pbproj/project.pbxproj:
2785         * WebView.subproj/WebController.h:
2786         * WebView.subproj/WebController.m:
2787         (-[WebController setResourceProgressDelegate:]):
2788         (-[WebController resourceProgressDelegate]):
2789         (-[WebController setDownloadProgressDelegate:]):
2790         (-[WebController downloadProgressDelegate]):
2791         * WebView.subproj/WebControllerPrivate.h:
2792         * WebView.subproj/WebControllerPrivate.m:
2793         (-[WebController _receivedProgressForResourceHandle:fromDataSource:complete:]):
2794         (-[WebController _mainReceivedProgressForResourceHandle:bytesSoFar:fromDataSource:complete:]):
2795         (-[WebController _receivedError:forResourceHandle:fromDataSource:]):
2796         (-[WebController _mainReceivedError:forResourceHandle:fromDataSource:]):
2797         * WebView.subproj/WebLoadProgress.h: Removed.
2798         * WebView.subproj/WebLoadProgress.m: Removed.
2799         * WebView.subproj/WebMainResourceClient.h:
2800         * WebView.subproj/WebMainResourceClient.m:
2801         (-[WebMainResourceClient initWithDataSource:]):
2802         (-[WebMainResourceClient dealloc]):
2803         (-[WebMainResourceClient receivedProgressWithHandle:complete:]):
2804         (-[WebMainResourceClient receivedError:forHandle:]):
2805         (-[WebMainResourceClient handleDidFinishLoading:]):
2806         (-[WebMainResourceClient handle:willSendRequest:]):
2807         (-[WebMainResourceClient handle:didReceiveResponse:]):
2808         (-[WebMainResourceClient handle:didReceiveData:]):
2809         (-[WebMainResourceClient handle:didFailLoadingWithError:]):
2810         * WebView.subproj/WebResourceProgressDelegate.h:
2811
2812 === Alexander-26 ===
2813
2814 2002-10-02  Maciej Stachowiak  <mjs@apple.com>
2815
2816         - Added "remember my password" checkbox (underlying feature not
2817         yet implemented).
2818
2819         - Fixed a bug that caused a crash when cancelling the auth sheet.
2820         
2821         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Added
2822         "remember this password" checkbox.
2823         * Panels.subproj/WebAuthenticationPanel.h:
2824         * Panels.subproj/WebAuthenticationPanel.m:
2825         (-[WebAuthenticationPanel cancel:]): Make sure the panel gets
2826         retained a bit longer, so the cleanup that happens after this
2827         message is sent can use the panel object.
2828         (-[WebAuthenticationPanel logIn:]): Make sure the panel gets
2829         retained a bit longer, so the cleanup that happens after this
2830         message is sent can use the panel object.
2831         (-[WebAuthenticationPanel runAsModalDialogWithRequest:]): Pass
2832         proper remembered value with credential.
2833         (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
2834         Pass proper remembered value with credential.
2835         * WebKit.pbproj/project.pbxproj: Project Builder had its way with
2836         this file.
2837
2838 2002-10-02  Darin Adler  <darin@apple.com>
2839
2840         Machinery so we can handle mouseover feedback at the browser level.
2841
2842         * WebView.subproj/WebWindowOperationsDelegate.h: Added mouseDidMoveOverElement:modifierFlags:.
2843
2844         * WebKit.exp: Export WebElementLinkTargetFrameKey.
2845         * WebView.subproj/WebController.h: Add WebElementLinkTargetFrameKey.
2846         * WebView.subproj/WebController.m: Ditto.
2847
2848         * WebView.subproj/WebHTMLView.m:
2849         (-[WebHTMLView removeMouseMovedObserver]): Send a callback when we
2850         stop tracking the mouse altogether.
2851         (-[WebHTMLView viewDidMoveToWindow]): Only set up the mouse moved
2852         observer if we are the top-level HTML view.
2853         (-[WebHTMLView windowDidBecomeMain:]): Ditto.
2854         (-[WebHTMLView mouseMovedNotification:]): Handle mouse over if we are
2855         over any subview of the HTML view. Also send the callback.
2856
2857         * WebView.subproj/WebHTMLViewPrivate.h: Added lastMouseOverElementWasNotNil,
2858         _mouseOverElement:modifierFlags: and _insideAnotherHTMLView.
2859         * WebView.subproj/WebHTMLViewPrivate.m:
2860         (-[WebHTMLView _elementAtPoint:]): Copy over each element separately so
2861         we don't rely on keys matching. Find the target frame given the target string,
2862         and include it in the dictionary.
2863         (-[WebHTMLView _mouseOverElement:modifierFlags]): Added. Calls the window
2864         operations delegate method, but doesn't call it over and over again if the
2865         information is still "nil".
2866         (-[WebHTMLView _insideAnotherHTMLView]): Added.
2867         (-[NSMutableDictionary _web_setObjectIfNotNil:forKey:]): Added. Helper for
2868         the _elementAtPoint method which could be moved to WebNSDictionaryExtras some day.
2869
2870 2002-10-02  Ken Kocienda  <kocienda@apple.com>
2871
2872         Implemented HTTP-specific subclass for WebResourceResponse.
2873
2874         * Plugins.subproj/WebPluginStream.m:
2875         (-[WebNetscapePluginStream receivedData:]): Add import for WebHTTPResourceResponse.
2876
2877 2002-10-02  Darin Adler  <darin@apple.com>
2878
2879         Add return value to willSendRequest callback.
2880
2881         * Misc.subproj/WebIconLoader.m:
2882         (-[WebIconLoader handle:willSendRequest:]):
2883         * Plugins.subproj/WebPluginStream.m:
2884         (-[WebNetscapePluginStream handle:willSendRequest:]):
2885         * WebCoreSupport.subproj/WebSubresourceClient.m:
2886         (-[WebSubresourceClient handle:willSendRequest:]):
2887         * WebView.subproj/WebMainResourceClient.m:
2888         (-[WebMainResourceClient handle:willSendRequest:]):
2889         Update to return the request.
2890
2891 2002-10-02  Darin Adler  <darin@apple.com>
2892
2893         Use the text encoding name from the response and got rid of
2894         [WebDataSource encoding]. Also remove the "first chunk" logic since we
2895         now get a separate callback for the response.
2896
2897         * WebCoreSupport.subproj/WebBridge.m:
2898         (-[WebBridge receivedData:withDataSource:]): Get the encoding name
2899         from the response, or fall back on the default.
2900
2901         * WebView.subproj/WebDataSource.h: Removed encoding.
2902         * WebView.subproj/WebDataSource.m: Ditto.
2903
2904         * WebView.subproj/WebDataSourcePrivate.h: Removed _setEncoding.
2905         * WebView.subproj/WebDataSourcePrivate.m:
2906         (-[WebDataSourcePrivate dealloc]): No need to release encoding any more.
2907
2908         * WebView.subproj/WebMainResourceClient.m:
2909         (-[WebMainResourceClient initWithDataSource:]): No isFirstChunk to initialize.
2910         (-[WebMainResourceClient handle:didReceiveResponse:]): Moved the response handling
2911         in here, including the policy logic.
2912         (-[WebMainResourceClient handle:didReceiveData:]): This has only what's left.
2913
2914 2002-10-02  Chris Blumenberg  <cblu@apple.com>
2915
2916         Replaced contentType on WebDataSource to response.
2917
2918         * Plugins.subproj/WebNetscapePluginDocumentView.m:
2919         (-[WebNetscapePluginDocumentView setDataSource:]):
2920         * Plugins.subproj/WebPluginStream.m:
2921         (-[WebNetscapePluginStream receivedData:]):
2922         (-[WebNetscapePluginStream setResponse:]):
2923         (-[WebNetscapePluginStream setDataSource:]):
2924         (-[WebNetscapePluginStream receivedData:withDataSource:]):
2925         (-[WebNetscapePluginStream handle:didReceiveResponse:]):
2926         (-[WebNetscapePluginStream handle:didReceiveData:]):
2927         * WebView.subproj/WebDataSource.h:
2928         * WebView.subproj/WebDataSource.m:
2929         (-[WebDataSource response]):
2930         (-[WebDataSource fileType]):
2931         * WebView.subproj/WebDataSourcePrivate.h:
2932         * WebView.subproj/WebDataSourcePrivate.m:
2933         (-[WebDataSourcePrivate dealloc]):
2934         (-[WebDataSource _representationClass]):
2935         (-[WebDataSource _setResponse:]):
2936         (-[WebDataSource _setContentPolicy:]):
2937         * WebView.subproj/WebMainResourceClient.h:
2938         * WebView.subproj/WebMainResourceClient.m:
2939         (-[WebMainResourceClient dealloc]):
2940         (-[WebMainResourceClient handleDidFinishLoading:]):
2941         (-[WebMainResourceClient handle:didReceiveResponse:]):
2942         (-[WebMainResourceClient handle:didReceiveData:]):
2943         * WebView.subproj/WebTextView.m:
2944         (-[WebTextView dataSourceUpdated:]):
2945         * WebView.subproj/WebViewPrivate.m:
2946         (-[WebView _makeDocumentViewForDataSource:]):
2947
2948 2002-10-02  Darin Adler  <darin@apple.com>
2949
2950         More work on "open window behind".
2951
2952         * WebView.subproj/WebControllerPolicyDelegate.h: Add new OpenNewWindowBehind
2953         constants to the enums.
2954
2955         * WebView.subproj/WebWindowOperationsDelegate.h: Add a behind: parameter to
2956         the openNewWindowWithURL method.
2957
2958         * WebView.subproj/WebHTMLViewPrivate.m:
2959         (-[WebHTMLView _continueAfterClickPolicyForEvent:]): In the new
2960         WebClickPolicyOpenNewWindowBehind case, pass YES for behind.
2961
2962         * Plugins.subproj/WebBaseNetscapePluginView.m:
2963         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
2964         * WebCoreSupport.subproj/WebBridge.m:
2965         (-[WebBridge openNewWindowWithURL:referrer:frameName:]):
2966         * WebView.subproj/WebDefaultContextMenuDelegate.m:
2967         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
2968         * WebView.subproj/WebFrame.m:
2969         (-[WebFrame frameNamed:]):
2970         Pass NO for behind.
2971
2972 2002-10-02  Darin Adler  <darin@apple.com>
2973
2974         Cut down on unnecessary use of WebFoundation private stuff.
2975
2976         * Plugins.subproj/WebPluginStream.m:
2977         (-[WebNetscapePluginStream startLoad]): Remove unnecessary use of
2978         [WebResourceHandle _request].
2979         * WebCoreSupport.subproj/WebSubresourceClient.m:
2980         (-[WebSubresourceClient handleDidFinishLoading:]): Remove assert about
2981         status code, since status codes are going away.
2982         * WebView.subproj/WebMainResourceClient.m:
2983         (-[WebMainResourceClient didCancelWithHandle:]): Use currentURL for logging.
2984         (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
2985         (-[WebMainResourceClient handle:didReceiveData:]): Ditto.
2986
2987 2002-10-02  Darin Adler  <darin@apple.com>
2988
2989         * WebView.subproj/WebControllerPolicyDelegate.h: Change modifierMask to
2990         modifierFlags to match NSEvent.
2991         * WebView.subproj/WebDefaultPolicyDelegate.m:
2992         (-[WebDefaultPolicyDelegate clickPolicyForElement:button:modifierFlags:]): Ditto.
2993         * WebView.subproj/WebHTMLViewPrivate.m:
2994         (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Ditto.
2995
2996 2002-10-02  Darin Adler  <darin@apple.com>
2997
2998         Get rid of uses of canonicalURL.
2999
3000         * WebCoreSupport.subproj/WebSubresourceClient.m:
3001         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
3002         Start with normal URL. The change to the canonical URL will come in as a redirect.
3003         (-[WebSubresourceClient handle:didReceiveData:]): Remove assert.
3004         (-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
3005         * WebView.subproj/WebDataSource.m:
3006         (-[WebDataSource initWithRequest:]):Start with normal URL. The change to the
3007         canonical URL will come in as a redirect.
3008
3009 2002-10-02  Ken Kocienda  <kocienda@apple.com>
3010
3011         Added import of WebHTTPResourceRequest.h to get access to methods
3012         which have moved to the HTTP-sepcific request category.
3013
3014         * WebView.subproj/WebDataSourcePrivate.m
3015
3016 2002-10-01  John Sullivan  <sullivan@apple.com>
3017
3018         * WebKit.exp: added .objc_class_name_WebTextRendererFactory
3019         so I could use it from WebBrowser.
3020
3021         * WebCoreSupport.subproj/WebBridge.m:
3022         (-[WebBridge startLoadingResource:withURL:referrer:]):
3023         Just changed whitespace so the .exp change would be built.
3024
3025 2002-10-01  Chris Blumenberg  <cblu@apple.com>
3026
3027         Fixed build breakage.
3028
3029         * Plugins.subproj/WebBaseNetscapePluginView.m:
3030         (-[WebBaseNetscapePluginView setWindow]):
3031
3032 2002-10-01  Ken Kocienda  <kocienda@apple.com>
3033
3034         Implemented WebResourceRequest "category" design for extending a
3035         request with protocol-specific data.
3036
3037         * WebCoreSupport.subproj/WebBridge.m: Now imports WebHTTPResourceRequest.h.
3038         * WebCoreSupport.subproj/WebSubresourceClient.m: Ditto.
3039         * WebView.subproj/WebMainResourceClient.m: Ditto.
3040
3041 2002-10-01  Chris Blumenberg  <cblu@apple.com>
3042
3043         - Added debug drawing
3044         - removed unnecessary ifdef'ing.
3045
3046         * Plugins.subproj/WebBaseNetscapePluginView.m:
3047         (-[WebBaseNetscapePluginView sendActivateEvent:]):
3048         (-[WebBaseNetscapePluginView becomeFirstResponder]):
3049         (-[WebBaseNetscapePluginView resignFirstResponder]):
3050         (-[WebBaseNetscapePluginView mouseDown:]):
3051         (-[WebBaseNetscapePluginView mouseUp:]):
3052         (-[WebBaseNetscapePluginView mouseEntered:]):
3053         (-[WebBaseNetscapePluginView mouseExited:]):
3054         (-[WebBaseNetscapePluginView menuForEvent:]):
3055         (-[WebBaseNetscapePluginView setWindow]):
3056         (-[WebBaseNetscapePluginView start]):
3057         (-[WebBaseNetscapePluginView drawRect:]):
3058
3059 2002-10-01  Ken Kocienda  <kocienda@apple.com>
3060
3061         * WebCoreSupport.subproj/WebSubresourceClient.m:
3062         (-[WebSubresourceClient handleDidFinishLoading:]): Fixed Development build breakage. Call to [response statusCode] 
3063         now calls the handle's private method to get the status code.
3064         * WebView.subproj/WebMainResourceClient.m:
3065         (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
3066         (-[WebMainResourceClient handle:didReceiveData:]): Calls new textEncodingName method, replacing call to characterSet.
3067
3068 2002-10-01  Ken Kocienda  <kocienda@apple.com>
3069
3070         * WebView.subproj/WebLoadProgress.m:
3071         (-[WebLoadProgress initWithResourceHandle:]): Status code moved from WebResourceResponse
3072         to WebResourceHandle private API.
3073
3074 2002-10-01  Ken Kocienda  <kocienda@apple.com>
3075
3076         Changed WebResourceHandle so that the init method no longer starts the
3077         loading of the request to begin. Added new loadWithDelegate: method which
3078         is called separatetly from the init method, to start loads.
3079
3080         All of the changes here update code that depends on WebResourceHandle. The
3081         changes move the code to the modified API.
3082
3083         * Misc.subproj/WebIconLoader.m:
3084         (-[WebIconLoader startLoading])
3085         * Plugins.subproj/WebPluginStream.m:
3086         (-[WebNetscapePluginStream startLoad])
3087         * WebCoreSupport.subproj/WebBridge.m:
3088         (-[WebBridge objectLoadedFromCache:size:])
3089         * WebCoreSupport.subproj/WebSubresourceClient.m:
3090         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
3091         * WebView.subproj/WebDataSourcePrivate.m:
3092         (-[WebDataSource _startLoading])
3093
3094 2002-10-01  Chris Blumenberg  <cblu@apple.com>
3095
3096         Fixed copyright comments.
3097
3098         * Plugins.subproj/WebBaseNetscapePluginView.h:
3099         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
3100         * Plugins.subproj/WebNetscapePluginDocumentView.h:
3101         * Plugins.subproj/WebNetscapePluginDocumentView.m:
3102         * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
3103         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
3104         * Plugins.subproj/WebNullPluginView.h:
3105         * Plugins.subproj/WebNullPluginView.m:
3106         * Plugins.subproj/WebPlugin.h:
3107         * Plugins.subproj/WebPlugin.m:
3108         * Plugins.subproj/WebPluginDatabase.h:
3109         * Plugins.subproj/WebPluginDatabase.m:
3110         * Plugins.subproj/WebPluginNullEventSender.h:
3111         * Plugins.subproj/WebPluginNullEventSender.m:
3112         * Plugins.subproj/WebPluginStream.h:
3113         * Plugins.subproj/WebPluginStream.m:
3114         * Plugins.subproj/npapi.h:
3115         * Plugins.subproj/npapi.m:
3116
3117 2002-10-01  Ken Kocienda  <kocienda@apple.com>
3118
3119         Many changes to coincide with API work in WebFoundation. Most of the modifications
3120         here have to do with changes for the new callback scheme.
3121
3122         * Misc.subproj/WebIconLoader.m:
3123         (-[WebIconLoader handleDidFinishLoading:])
3124         (-[WebIconLoader handle:willSendRequest:]): New method. A no-op here.
3125         (-[WebIconLoader handle:didReceiveResponse:]): Ditto.
3126         * Plugins.subproj/WebBaseNetscapePluginView.m:
3127         (-[WebBaseNetscapePluginView stop]): Fix for Deployment build breakage. 
3128         * Plugins.subproj/WebPluginStream.h: Add response ivar.
3129         * Plugins.subproj/WebPluginStream.m:
3130         (-[WebNetscapePluginStream startLoad]): Tweak method name for new API.
3131         (-[WebNetscapePluginStream receivedData:withHandle:]):
3132         (-[WebNetscapePluginStream handle:willSendRequest:]): New method. Replaces old redirect callback.
3133         (-[WebNetscapePluginStream handle:didReceiveResponse:]): New method. Set the response ivar.
3134         * WebCoreSupport.subproj/WebSubresourceClient.h: Add response ivar.
3135         * WebCoreSupport.subproj/WebSubresourceClient.m:
3136         (-[WebSubresourceClient dealloc]): Release response ivar.
3137         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Set the request user agent here.
3138         (-[WebSubresourceClient handle:willSendRequest:]): New method. Handle like a redirect.
3139         (-[WebSubresourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
3140         (-[WebSubresourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
3141         (-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
3142         (-[WebSubresourceClient handle:didFailLoadingWithError:]): Ditto.
3143         * WebView.subproj/WebControllerPrivate.m: 
3144         (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]): Ditto.
3145         * WebView.subproj/WebDataSourcePrivate.h: Add _setRequest method.
3146         * WebView.subproj/WebDataSourcePrivate.m:
3147         (-[WebDataSource _startLoading]): Call didStartLoadingWithURL with request URL instead of handle URL.
3148         (-[WebDataSource _setRequest:]): Add implementation.
3149         * WebView.subproj/WebLoadProgress.m:
3150         (-[WebLoadProgress initWithResourceHandle:]): Tweaks for new WebFoundation API and method names.
3151         * WebView.subproj/WebMainResourceClient.h: Add response ivar.
3152         * WebView.subproj/WebMainResourceClient.m:
3153         (-[WebMainResourceClient initWithDataSource:]): Set user agent on request here.
3154         (-[WebMainResourceClient dealloc]): Release response ivar.
3155         (-[WebMainResourceClient didCancelWithHandle:]): Tweaks for new WebFoundation API and method names.
3156         (-[WebMainResourceClient handleDidFinishLoading:]): Tweaks for new WebFoundation API and method names.
3157         (-[WebMainResourceClient handle:willSendRequest:]): New method. Handle like a redirect.
3158         (-[WebMainResourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
3159         (-[WebMainResourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
3160         (-[WebMainResourceClient handle:didFailLoadingWithError:]): Ditto.
3161
3162
3163 2002-09-30  Chris Blumenberg  <cblu@apple.com>
3164
3165         A ton o' plugin view clean-up and arch changes. Turned WebPluginView into WebBaseNetscapePluginView. New classes WebNetscapePluginEmbeddedView and WebNetscapePluginDocumentView are subclasses of WebBaseNetscapePluginView. WebNetscapePluginDocumentView handles non-HTML plug-in content and WebNetscapePluginEmbeddedView is the WebHTMLView subview.
3166
3167         Found that we leak the world on complex pages with plug-ins such as macromedia.com and marvel.com when closing the window. Still need to figure this out.
3168
3169         * Plugins.subproj/WebBaseNetscapePluginView.h: Added.
3170         * Plugins.subproj/WebBaseNetscapePluginView.m: Added.
3171         (+[WebBaseNetscapePluginView getCarbonEvent:]):
3172         (-[WebBaseNetscapePluginView getCarbonEvent:]):
3173         (-[WebBaseNetscapePluginView modifiersForEvent:]):
3174         (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
3175         (-[WebBaseNetscapePluginView keyMessageForEvent:]):
3176         (-[WebBaseNetscapePluginView sendEvent:]):
3177         (-[WebBaseNetscapePluginView sendActivateEvent:]):
3178         (-[WebBaseNetscapePluginView sendUpdateEvent]):
3179         (-[WebBaseNetscapePluginView acceptsFirstResponder]):
3180         (-[WebBaseNetscapePluginView becomeFirstResponder]):
3181         (-[WebBaseNetscapePluginView resignFirstResponder]):
3182         (-[WebBaseNetscapePluginView mouseDown:]):
3183         (-[WebBaseNetscapePluginView mouseUp:]):
3184         (-[WebBaseNetscapePluginView mouseEntered:]):
3185         (-[WebBaseNetscapePluginView mouseExited:]):
3186         (-[WebBaseNetscapePluginView keyUp:]):
3187         (-[WebBaseNetscapePluginView keyDown:]):
3188         (-[WebBaseNetscapePluginView isInResponderChain]):
3189         (-[WebBaseNetscapePluginView performKeyEquivalent:]):
3190         (-[WebBaseNetscapePluginView menuForEvent:]):
3191         (-[WebBaseNetscapePluginView setUpWindowAndPort]):
3192         (-[WebBaseNetscapePluginView setWindow]):
3193         (-[WebBaseNetscapePluginView removeTrackingRect]):
3194         (-[WebBaseNetscapePluginView resetTrackingRect]):
3195         (-[WebBaseNetscapePluginView start]):
3196         (-[WebBaseNetscapePluginView stop]):
3197         (-[WebBaseNetscapePluginView dataSource]):
3198         (-[WebBaseNetscapePluginView webFrame]):
3199         (-[WebBaseNetscapePluginView controller]):
3200         (-[WebBaseNetscapePluginView plugin]):
3201         (-[WebBaseNetscapePluginView setMIMEType:]):
3202         (-[WebBaseNetscapePluginView setBaseURL:]):
3203         (-[WebBaseNetscapePluginView setArguments:]):
3204         (-[WebBaseNetscapePluginView setMode:]):
3205         (-[WebBaseNetscapePluginView initWithFrame:]):
3206         (-[WebBaseNetscapePluginView dealloc]):
3207         (-[WebBaseNetscapePluginView drawRect:]):
3208         (-[WebBaseNetscapePluginView isFlipped]):
3209         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
3210         (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
3211         (-[WebBaseNetscapePluginView viewHasMoved:]):
3212         (-[WebBaseNetscapePluginView windowWillClose:]):
3213         (-[WebBaseNetscapePluginView windowBecameKey:]):
3214         (-[WebBaseNetscapePluginView windowResignedKey:]):
3215         (-[WebBaseNetscapePluginView defaultsHaveChanged:]):
3216         (-[WebBaseNetscapePluginView frameStateChanged:]):
3217         (-[WebBaseNetscapePluginView pluginInstance]):
3218         (-[WebBaseNetscapePluginView pluginURLFromCString:]):
3219         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
3220         (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
3221         (-[WebBaseNetscapePluginView getURL:target:]):
3222         (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
3223         (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
3224         (-[WebBaseNetscapePluginView newStream:target:stream:]):
3225         (-[WebBaseNetscapePluginView write:len:buffer:]):
3226         (-[WebBaseNetscapePluginView destroyStream:reason:]):
3227         (-[WebBaseNetscapePluginView status:]):
3228         (-[WebBaseNetscapePluginView invalidateRect:]):
3229         (-[WebBaseNetscapePluginView invalidateRegion:]):
3230         (-[WebBaseNetscapePluginView forceRedraw]):
3231         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h: Added.
3232         * Plugins.subproj/WebNetscapePluginDocumentView.h: Added.
3233         * Plugins.subproj/WebNetscapePluginDocumentView.m: Added.
3234         (-[WebNetscapePluginDocumentView initWithFrame:]):
3235         (-[WebNetscapePluginDocumentView dealloc]):
3236         (-[WebNetscapePluginDocumentView drawRect:]):
3237         (-[WebNetscapePluginDocumentView dataSource]):
3238         (-[WebNetscapePluginDocumentView setDataSource:]):
3239         (-[WebNetscapePluginDocumentView dataSourceUpdated:]):
3240         (-[WebNetscapePluginDocumentView setNeedsLayout:]):
3241         (-[WebNetscapePluginDocumentView layout]):
3242         * Plugins.subproj/WebNetscapePluginEmbeddedView.h: Added.
3243         * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Added.
3244         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
3245         (-[WebNetscapePluginEmbeddedView dealloc]):
3246         (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
3247         (-[WebNetscapePluginEmbeddedView start]):
3248         (-[WebNetscapePluginEmbeddedView dataSource]):
3249         * Plugins.subproj/WebNetscapePluginViewPrivate.h: Removed.
3250         * Plugins.subproj/WebPluginDatabase.m:
3251         (-[WebNetscapePluginDatabase init]):
3252         * Plugins.subproj/WebPluginNullEventSender.h:
3253         * Plugins.subproj/WebPluginNullEventSender.m:
3254         (-[WebNetscapePluginNullEventSender initWithPluginView:]):
3255         (-[WebNetscapePluginNullEventSender sendNullEvents]):
3256         * Plugins.subproj/WebPluginStream.h:
3257         * Plugins.subproj/WebPluginStream.m:
3258         (-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
3259         (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
3260         (-[WebNetscapePluginStream dealloc]):
3261         (-[WebNetscapePluginStream startLoad]):
3262         (-[WebNetscapePluginStream receivedData:withDataSource:]):
3263         (-[WebNetscapePluginStream handleWillUseUserAgent:forURL:]):
3264         (-[WebNetscapePluginStream handle:didReceiveData:]):
3265         (-[WebNetscapePluginStream handleDidFinishLoading:]):
3266         (-[WebNetscapePluginStream cancel]):
3267         (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
3268         (-[WebNetscapePluginStream handleDidRedirect:toURL:]):
3269         * Plugins.subproj/WebPluginView.h: Removed.
3270         * Plugins.subproj/WebPluginView.m: Removed.
3271         * Plugins.subproj/npapi.m:
3272         (NPN_GetURLNotify):
3273         (NPN_GetURL):
3274         (NPN_PostURLNotify):
3275         (NPN_PostURL):
3276         (NPN_NewStream):
3277         (NPN_Write):
3278         (NPN_DestroyStream):
3279         (NPN_Status):
3280         (NPN_InvalidateRect):
3281         (NPN_InvalidateRegion):
3282         (NPN_ForceRedraw):
3283         * WebCoreSupport.subproj/WebViewFactory.m:
3284         (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
3285         (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
3286         * WebKit.pbproj/project.pbxproj:
3287         * WebView.subproj/WebHTMLViewPrivate.m:
3288         (-[NSView _web_stopIfPluginView]):
3289
3290 2002-09-30  Darin Adler  <darin@apple.com>
3291
3292         * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
3293         Remove the ill-advised "don't even create a WebDataSource if WebResourceHandle
3294         can't handle this request" code.
3295
3296         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
3297         Rearrange checks so we won't get confused if we can't create a handle.
3298
3299 2002-09-30  Darin Adler  <darin@apple.com>
3300
3301         * English.lproj/StringsNotToBeLocalized.txt: Added.
3302
3303 2002-09-30  Darin Adler  <darin@apple.com>
3304
3305         - fixed crashing part of 3063517 -- crash loading .png in separate window
3306
3307         * Plugins.subproj/WebPluginView.m:
3308         (-[WebNetscapePluginView start]): Don't try to start if the NPP_New is 0.
3309         This indicates the the plugin hasn't been loaded.
3310
3311 2002-09-30  Darin Adler  <darin@apple.com>
3312
3313         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setLoading:]):
3314         Remove extra quotes in use of ASSERT_ARG.
3315
3316 2002-09-29  Darin Adler  <darin@apple.com>
3317
3318         * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase _iconForFileURL:withSize:]):
3319         Don't be case sensitive about filename extensions.
3320
3321         * Misc.subproj/WebDownloadHandler.m:
3322         * Misc.subproj/WebIconLoader.m:
3323         * Plugins.subproj/WebPluginStream.m:
3324         * WebView.subproj/WebDataSource.m:
3325         * WebView.subproj/WebDefaultContextMenuDelegate.m:
3326         * WebView.subproj/WebFrame.m:
3327         * WebView.subproj/WebFramePrivate.m:
3328         * WebView.subproj/WebView.m:
3329         Don't use WebFoundation.h -- faster building to just import what we really use.
3330
3331 2002-09-29  Chris Blumenberg  <cblu@apple.com>
3332
3333         Fixed: 2978258 - quake3arena.com sends me to the flash=false site
3334         The page has a flash plugin that once loaded, requests the flash=true page. If the plugin doesn't load, the meta refresh tag to the flash=false page fires after 3 seconds. This is how this site's flash detection works.
3335
3336         The reason this doesn't work for us is because the flash movie is at the bottom of the page. Plugins don't start until the initial drawRect. Since the movie is at the bottom of the page and out of site, the plugin never gets the drawRect and thus, never starts. We now start plug-ins when they are added to the window.
3337
3338         Fixed: 3062224 - context menu includes "Download Item to Disk" for mailto links
3339
3340         - Fixed click then click and drag causes crash.
3341
3342         * Plugins.subproj/WebPluginView.m:
3343         (-[WebNetscapePluginView drawRect:]): don't start plug-in here
3344         (-[WebNetscapePluginView viewDidMoveToWindow]): start it here
3345         * WebView.subproj/WebDefaultContextMenuDelegate.m:
3346         (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]): don't provide "Download Link To Disk" and "Open Link In New Window" items for URLs we cant handle.
3347         * WebView.subproj/WebHTMLView.m:
3348         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): clean-up
3349         (-[WebHTMLView mouseDragged:]): Don't allow drag if the frame has a provisional data source because this view may be released and the drag callbacks might reference this released view.
3350
3351 2002-09-28  Darin Adler  <darin@apple.com>
3352
3353         * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
3354         Catch a request that we can't use here instead of failing later.
3355
3356         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
3357         Added an assert so the failure was less confusing; good idea to leave it in.
3358
3359 2002-09-28  Chris Blumenberg  <cblu@apple.com>
3360
3361         Support for latest Flash plug-in. It requests a javascript URL for every plug-in instance.
3362         Until javascript URLs work, we return an error to the plug-in. 
3363
3364         Fixed: 3035582 - flash animations don't work after upgrading flash
3365         Fixed: 3021936 - links in flash at foggypetronasracing.com doesn't work
3366
3367         * Plugins.subproj/WebPluginStream.h:
3368         * Plugins.subproj/WebPluginStream.m:
3369         (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
3370         Make the request here and return nil if we can't create a handle with it.
3371         (-[WebNetscapePluginStream dealloc]): release the request
3372         (-[WebNetscapePluginStream startLoad]): use the request when creating the handle
3373
3374 2002-09-28  Darin Adler  <darin@apple.com>
3375
3376         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setNeedsLayout]): Added.
3377
3378 2002-09-27  Chris Blumenberg  <cblu@apple.com>
3379
3380         Fixed KJS crasher caused by nil plug-in returned from WebPlugin.
3381         Got the RealPlayer plug-in loaded, nothing playing yet.
3382
3383         * Plugins.subproj/WebPlugin.m:
3384         (-[WebNetscapePlugin getPluginInfo]): check for nil plug-in names/descriptions
3385         (-[WebNetscapePlugin stringByResolvingSymlinksAndAliasesInPath:]): new, resolves old-style aliases
3386         (-[WebNetscapePlugin initWithPath:]): call stringByResolvingSymlinksAndAliasesInPath
3387
3388 2002-09-27  Richard Williamson   <rjw@apple.com>
3389
3390         Fix 3058315:  crash in WebHTMLRepresentation receivedData:withDataSource
3391         http://www.u2.com/lite/ does some whacky things with its framset's onLoad
3392         handler.  The fix ensures that data isn't sent to the bridge once
3393         the bridge has been dealloced.
3394         
3395         * WebKit.pbproj/project.pbxproj: Nothing changed.  PB dorkiness.
3396         * WebView.subproj/WebHTMLRepresentation.m:
3397         (-[WebHTMLRepresentation receivedData:withDataSource:]):
3398
3399 2002-09-27  Chris Blumenberg  <cblu@apple.com>
3400
3401         Fixed: 3056559 - QT plugin doesn't load (claudius)
3402         Fixed: 3042850 - Enable Java by default
3403
3404         Cleaned up WebPlugin and WebPluginDatabase.
3405
3406         * Plugins.subproj/WebPlugin.h:
3407         * Plugins.subproj/WebPlugin.m:
3408         (-[WebNetscapePlugin openResourceFile]):
3409         (-[WebNetscapePlugin closeResourceFile:]):
3410         (-[WebNetscapePlugin stringForStringListID:andIndex:]):
3411         (-[WebNetscapePlugin getPluginInfo]):
3412         (-[WebNetscapePlugin initWithPath:]):
3413         (-[WebNetscapePlugin load]):
3414         (-[WebNetscapePlugin unload]):
3415         (-[WebNetscapePlugin MIMEToExtensionsDictionary]):
3416         (-[WebNetscapePlugin extensionToMIMEDictionary]):
3417         (-[WebNetscapePlugin MIMEToDescriptionDictionary]):
3418         (-[WebNetscapePlugin description]):
3419         * Plugins.subproj/WebPluginDatabase.h:
3420         * Plugins.subproj/WebPluginDatabase.m:
3421         (-[WebNetscapePluginDatabase pluginForMIMEType:]):
3422         (-[WebNetscapePluginDatabase pluginForExtension:]):
3423         (-[WebNetscapePluginDatabase pluginForFilename:]):
3424         (-[WebNetscapePluginDatabase MIMETypes]):
3425         (-[WebNetscapePluginDatabase init]):
3426         * Plugins.subproj/WebPluginView.m:
3427         (-[WebNetscapePluginView setDataSource:]):
3428         * WebCoreSupport.subproj/WebViewFactory.m:
3429         (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
3430         (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
3431         * WebView.subproj/WebPreferences.m:
3432         (+[WebPreferences load]): Enable Java by default
3433
3434 2002-09-27  Richard Williamson   <rjw@apple.com>
3435
3436         Fixed 3060158:  REGRESSION: iframes added to session history
3437         Also moved setting title in history to WebKit.
3438         
3439         * History.subproj/WebHistory.h:
3440         * History.subproj/WebHistory.m:
3441         (+[WebHistory sharedHistory]):
3442         (+[WebHistory webHistoryWithFile:]):
3443         (-[WebHistory addEntryForURL:]):
3444         (-[WebHistory addEntries:]):
3445         * History.subproj/WebHistoryPrivate.h:
3446         * History.subproj/WebHistoryPrivate.m:
3447         * WebCoreSupport.subproj/WebBridge.m:
3448         (-[WebBridge requestedURL]):
3449         * WebView.subproj/WebDataSourcePrivate.m:
3450         (-[WebDataSource _setTitle:]):
3451         * WebView.subproj/WebFramePrivate.m:
3452         (-[WebFrame _transitionToCommitted]):
3453         * WebView.subproj/WebHTMLView.m:
3454         (-[WebHTMLView mouseDragged:]):
3455
3456 2002-09-26  Richard Williamson   <rjw@apple.com>
3457
3458         More twiddling.  Changed the color of the drag labels to
3459         match the favorites bar.
3460         
3461         * WebView.subproj/WebHTMLView.m:
3462         (-[WebHTMLView mouseDragged:]):
3463
3464 2002-09-27  Chris Blumenberg  <cblu@apple.com>
3465
3466         Added support for dragging links the the dock.
3467         Created new pasteboard types WebURLPboardType WebURLNamePboardType that the dock requires.
3468
3469         * Misc.subproj/WebNSPasteboardExtras.h:
3470         * Misc.subproj/WebNSPasteboardExtras.m:
3471         (+[NSPasteboard initialize]): set WebURLPboardType and WebURLNamePboardType
3472         (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): use WebURLPboardType and WebURLNamePboardType
3473         * WebKit.exp: export WebURLPboardType and WebURLNamePboardType
3474
3475 2002-09-27  Maciej Stachowiak  <mjs@apple.com>
3476
3477         * Panels.subproj/WebAuthenticationPanel.m:
3478         (-[WebAuthenticationPanel setUpForRequest:]):
3479         (-[WebAuthenticationPanel runAsModalDialogWithRequest:]):